above
top
show
show
show
{
    "tiddlers": {
        "$:/Acknowledgements": {
            "title": "$:/Acknowledgements",
            "text": "TiddlyWiki incorporates code from these fine OpenSource projects:\n\n* [[The Stanford Javascript Crypto Library|http://bitwiseshiftleft.github.io/sjcl/]]\n* [[The Jasmine JavaScript Test Framework|http://pivotal.github.io/jasmine/]]\n* [[Normalize.css by Nicolas Gallagher|http://necolas.github.io/normalize.css/]]\n\nAnd media from these projects:\n\n* World flag icons from [[Wikipedia|http://commons.wikimedia.org/wiki/Category:SVG_flags_by_country]]\n"
        },
        "$:/core/copyright.txt": {
            "title": "$:/core/copyright.txt",
            "type": "text/plain",
            "text": "TiddlyWiki created by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright (c) 2004-2007, Jeremy Ruston\nCopyright (c) 2007-2020, UnaMesa Association\nAll rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n* Redistributions of source code must retain the above copyright notice, this\n  list of conditions and the following disclaimer.\n\n* Redistributions in binary form must reproduce the above copyright notice,\n  this list of conditions and the following disclaimer in the documentation\n  and/or other materials provided with the distribution.\n\n* Neither the name of the copyright holder nor the names of its\n  contributors may be used to endorse or promote products derived from\n  this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 'AS IS'\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
        },
        "$:/core/icon": {
            "title": "$:/core/icon",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path d=\"M64 0l54.56 32v64L64 128 9.44 96V32L64 0zm21.127 95.408c-3.578-.103-5.15-.094-6.974-3.152l-1.42.042c-1.653-.075-.964-.04-2.067-.097-1.844-.07-1.548-1.86-1.873-2.8-.52-3.202.687-6.43.65-9.632-.014-1.14-1.593-5.17-2.157-6.61-1.768.34-3.546.406-5.34.497-4.134-.01-8.24-.527-12.317-1.183-.8 3.35-3.16 8.036-1.21 11.44 2.37 3.52 4.03 4.495 6.61 4.707 2.572.212 3.16 3.18 2.53 4.242-.55.73-1.52.864-2.346 1.04l-1.65.08c-1.296-.046-2.455-.404-3.61-.955-1.93-1.097-3.925-3.383-5.406-5.024.345.658.55 1.938.24 2.53-.878 1.27-4.665 1.26-6.4.47-1.97-.89-6.73-7.162-7.468-11.86 1.96-3.78 4.812-7.07 6.255-11.186-3.146-2.05-4.83-5.384-4.61-9.16l.08-.44c-3.097.59-1.49.37-4.82.628-10.608-.032-19.935-7.37-14.68-18.774.34-.673.664-1.287 1.243-.994.466.237.4 1.18.166 2.227-3.005 13.627 11.67 13.732 20.69 11.21.89-.25 2.67-1.936 3.905-2.495 2.016-.91 4.205-1.282 6.376-1.55 5.4-.63 11.893 2.276 15.19 2.37 3.3.096 7.99-.805 10.87-.615 2.09.098 4.143.483 6.16 1.03 1.306-6.49 1.4-11.27 4.492-12.38 1.814.293 3.213 2.818 4.25 4.167 2.112-.086 4.12.46 6.115 1.066 3.61-.522 6.642-2.593 9.833-4.203-3.234 2.69-3.673 7.075-3.303 11.127.138 2.103-.444 4.386-1.164 6.54-1.348 3.507-3.95 7.204-6.97 7.014-1.14-.036-1.805-.695-2.653-1.4-.164 1.427-.81 2.7-1.434 3.96-1.44 2.797-5.203 4.03-8.687 7.016-3.484 2.985 1.114 13.65 2.23 15.594 1.114 1.94 4.226 2.652 3.02 4.406-.37.58-.936.785-1.54 1.01l-.82.11zm-40.097-8.85l.553.14c.694-.27 2.09.15 2.83.353-1.363-1.31-3.417-3.24-4.897-4.46-.485-1.47-.278-2.96-.174-4.46l.02-.123c-.582 1.205-1.322 2.376-1.72 3.645-.465 1.71 2.07 3.557 3.052 4.615l.336.3z\" fill-rule=\"evenodd\"/></svg>"
        },
        "$:/core/images/add-comment": {
            "title": "$:/core/images/add-comment",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-add-comment tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 56H36a8 8 0 100 16h20v20a8 8 0 1016 0V72h20a8 8 0 100-16H72V36a8 8 0 10-16 0v20zm-12.595 58.362c-6.683 7.659-20.297 12.903-36.006 12.903-2.196 0-4.35-.102-6.451-.3 9.652-3.836 17.356-12.24 21.01-22.874C8.516 94.28 0 79.734 0 63.5 0 33.953 28.206 10 63 10s63 23.953 63 53.5S97.794 117 63 117c-6.841 0-13.428-.926-19.595-2.638z\"/></svg>"
        },
        "$:/core/images/advanced-search-button": {
            "title": "$:/core/images/advanced-search-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-advanced-search-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M74.565 87.985A47.776 47.776 0 0148 96C21.49 96 0 74.51 0 48S21.49 0 48 0s48 21.49 48 48c0 9.854-2.97 19.015-8.062 26.636l34.347 34.347a9.443 9.443 0 010 13.36 9.446 9.446 0 01-13.36 0l-34.36-34.358zM48 80c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/><circle cx=\"48\" cy=\"48\" r=\"8\"/><circle cx=\"28\" cy=\"48\" r=\"8\"/><circle cx=\"68\" cy=\"48\" r=\"8\"/></g></svg>"
        },
        "$:/core/images/auto-height": {
            "title": "$:/core/images/auto-height",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-auto-height tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M67.987 114.356l-.029-14.477a4 4 0 00-2.067-3.494l-15.966-8.813-1.933 7.502H79.9c4.222 0 5.564-5.693 1.786-7.58L49.797 71.572 48.01 79.15h31.982c4.217 0 5.564-5.682 1.795-7.575L49.805 55.517l-1.795 7.575h31.982c4.212 0 5.563-5.67 1.805-7.57l-16.034-8.105 2.195 3.57V35.614l9.214 9.213a4 4 0 105.656-5.656l-16-16a4 4 0 00-5.656 0l-16 16a4 4 0 105.656 5.656l9.13-9.13v15.288a4 4 0 002.195 3.57l16.035 8.106 1.804-7.57H48.01c-4.217 0-5.564 5.682-1.795 7.574l31.982 16.059 1.795-7.575H48.01c-4.222 0-5.564 5.693-1.787 7.579l31.89 15.923 1.787-7.578H47.992c-4.133 0-5.552 5.504-1.933 7.501l15.966 8.813-2.067-3.494.029 14.436-9.159-9.158a4 4 0 00-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656l-9.185 9.184zM16 20h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
        },
        "$:/core/images/blank": {
            "title": "$:/core/images/blank",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-blank tc-image-button\" viewBox=\"0 0 128 128\"/>"
        },
        "$:/core/images/bold": {
            "title": "$:/core/images/bold",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-bold tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.146 51.81V21.87h26.353c2.51 0 4.93.21 7.26.628 2.33.418 4.392 1.165 6.185 2.24 1.793 1.076 3.227 2.57 4.302 4.482 1.076 1.913 1.614 4.363 1.614 7.35 0 5.379-1.613 9.263-4.84 11.653-3.227 2.39-7.35 3.586-12.37 3.586H41.146zM13 0v128h62.028a65.45 65.45 0 0016.762-2.151c5.438-1.434 10.278-3.645 14.52-6.633 4.244-2.988 7.62-6.842 10.13-11.563 2.51-4.721 3.764-10.308 3.764-16.762 0-8.008-1.942-14.85-5.826-20.527-3.884-5.677-9.77-9.65-17.658-11.921 5.737-2.75 10.069-6.275 12.997-10.577 2.928-4.303 4.392-9.681 4.392-16.135 0-5.976-.986-10.995-2.958-15.059-1.972-4.063-4.75-7.32-8.336-9.77-3.585-2.45-7.888-4.213-12.907-5.289C84.888.538 79.33 0 73.235 0H13zm28.146 106.129V70.992H71.8c6.095 0 10.995 1.404 14.7 4.212 3.705 2.81 5.558 7.5 5.558 14.073 0 3.347-.568 6.096-1.703 8.247-1.136 2.151-2.66 3.854-4.572 5.11-1.912 1.254-4.123 2.15-6.633 2.688-2.51.538-5.139.807-7.888.807H41.146z\"/></svg>"
        },
        "$:/core/images/cancel-button": {
            "title": "$:/core/images/cancel-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-cancel-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 76.314l-16.97 16.97a7.999 7.999 0 01-11.314 0c-3.118-3.118-3.124-8.19 0-11.313L52.686 65l-16.97-16.97a7.999 7.999 0 010-11.314c3.118-3.118 8.19-3.124 11.313 0L64 53.686l16.97-16.97a7.999 7.999 0 0111.314 0c3.118 3.118 3.124 8.19 0 11.313L75.314 65l16.97 16.97a7.999 7.999 0 010 11.314c-3.118 3.118-8.19 3.124-11.313 0L64 76.314zM64 129c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 1 0 29.654 0 65c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 17 64 17 16 38.49 16 65s21.49 48 48 48z\"/></svg>"
        },
        "$:/core/images/chevron-down": {
            "title": "$:/core/images/chevron-down",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-down tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.053 85.456a7.889 7.889 0 01-5.6-2.316L2.473 27.16a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0L64.05 66.344l50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.105 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.317z\"/><path d=\"M64.053 124.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.085 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></g></svg>"
        },
        "$:/core/images/chevron-left": {
            "title": "$:/core/images/chevron-left",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M47.544 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L66.656 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.105 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.317-5.595z\"/><path d=\"M8.931 64.053c0-2.027.77-4.054 2.316-5.6l55.98-55.98a7.92 7.92 0 0111.196 0c3.085 3.086 3.092 8.105 0 11.196L28.041 64.05l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.085-8.104 3.092-11.196 0l-55.98-55.98a7.892 7.892 0 01-2.316-5.595z\"/></g></svg>"
        },
        "$:/core/images/chevron-right": {
            "title": "$:/core/images/chevron-right",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-right tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M83.456 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196L64.344 63.95 13.963 13.567a7.92 7.92 0 010-11.195c3.086-3.085 8.105-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.317 5.595z\"/><path d=\"M122.069 63.947c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></g></svg>"
        },
        "$:/core/images/chevron-up": {
            "title": "$:/core/images/chevron-up",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-chevron-up tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M63.947 44.544c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 63.656l-50.382 50.382a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.317z\"/><path d=\"M63.947 5.931c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.105 3.092-11.196 0L63.95 25.041 13.567 75.423a7.92 7.92 0 01-11.195 0c-3.085-3.086-3.092-8.104 0-11.196l55.98-55.98a7.892 7.892 0 015.595-2.316z\"/></g></svg>"
        },
        "$:/core/images/clone-button": {
            "title": "$:/core/images/clone-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-clone-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M32.265 96v24.002A7.996 7.996 0 0040.263 128h79.74a7.996 7.996 0 007.997-7.998v-79.74a7.996 7.996 0 00-7.998-7.997H96V48h12.859a2.99 2.99 0 012.994 2.994v57.865a2.99 2.99 0 01-2.994 2.994H50.994A2.99 2.99 0 0148 108.859V96H32.265z\"/><path d=\"M40 56h-7.993C27.588 56 24 52.418 24 48c0-4.41 3.585-8 8.007-8H40v-7.993C40 27.588 43.582 24 48 24c4.41 0 8 3.585 8 8.007V40h7.993C68.412 40 72 43.582 72 48c0 4.41-3.585 8-8.007 8H56v7.993C56 68.412 52.418 72 48 72c-4.41 0-8-3.585-8-8.007V56zM8 0C3.58 0 0 3.588 0 8v80c0 4.419 3.588 8 8 8h80c4.419 0 8-3.588 8-8V8c0-4.419-3.588-8-8-8H8zM19 16A2.997 2.997 0 0016 19.001v57.998A2.997 2.997 0 0019.001 80h57.998A2.997 2.997 0 0080 76.999V19.001A2.997 2.997 0 0076.999 16H19.001z\"/></g></svg>"
        },
        "$:/core/images/close-all-button": {
            "title": "$:/core/images/close-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-close-all-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M28 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L16.686 100 2.543 85.856a8 8 0 0111.313-11.313L28 88.686l14.144-14.143a8 8 0 0111.313 11.313L39.314 100l14.143 14.144a8 8 0 01-11.313 11.313L28 111.314zM28 39.314L13.856 53.457A8 8 0 012.543 42.144L16.686 28 2.543 13.856A8 8 0 0113.856 2.543L28 16.686 42.144 2.543a8 8 0 0111.313 11.313L39.314 28l14.143 14.144a8 8 0 01-11.313 11.313L28 39.314zM100 39.314L85.856 53.457a8 8 0 01-11.313-11.313L88.686 28 74.543 13.856A8 8 0 0185.856 2.543L100 16.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 28l14.143 14.144a8 8 0 01-11.313 11.313L100 39.314zM100 111.314l-14.144 14.143a8 8 0 01-11.313-11.313L88.686 100 74.543 85.856a8 8 0 0111.313-11.313L100 88.686l14.144-14.143a8 8 0 0111.313 11.313L111.314 100l14.143 14.144a8 8 0 01-11.313 11.313L100 111.314z\"/></g></svg>"
        },
        "$:/core/images/close-button": {
            "title": "$:/core/images/close-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M65.086 75.41l-50.113 50.113c-3.121 3.121-8.192 3.126-11.316.002-3.118-3.118-3.123-8.19.002-11.316l50.114-50.114L3.659 13.982C.538 10.86.533 5.79 3.657 2.666c3.118-3.118 8.19-3.123 11.316.002l50.113 50.114L115.2 2.668c3.121-3.121 8.192-3.126 11.316-.002 3.118 3.118 3.123 8.19-.002 11.316L76.4 64.095l50.114 50.114c3.121 3.121 3.126 8.192.002 11.316-3.118 3.118-8.19 3.123-11.316-.002L65.086 75.409z\"/></svg>"
        },
        "$:/core/images/close-others-button": {
            "title": "$:/core/images/close-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-close-others-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48zm0-16c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32zm0-16c8.837 0 16-7.163 16-16s-7.163-16-16-16-16 7.163-16 16 7.163 16 16 16z\"/></svg>"
        },
        "$:/core/images/copy-clipboard": {
            "title": "$:/core/images/copy-clipboard",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-copy-clipboard tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"33\" height=\"8\" x=\"40\" y=\"40\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"82\" rx=\"4\"/><rect width=\"17\" height=\"8\" x=\"40\" y=\"54\" rx=\"4\"/><rect width=\"33\" height=\"8\" x=\"40\" y=\"96\" rx=\"4\"/><rect width=\"12\" height=\"8\" x=\"40\" y=\"68\" rx=\"4\"/><path d=\"M40 16H24c-4.419 0-8 3.59-8 8a8.031 8.031 0 000 .01v95.98a8.03 8.03 0 000 .01c0 4.41 3.581 8 8 8h80a7.975 7.975 0 005.652-2.34 7.958 7.958 0 002.348-5.652v-16.016c0-4.414-3.582-7.992-8-7.992-4.41 0-8 3.578-8 7.992V112H32V32h64v8.008C96 44.422 99.582 48 104 48c4.41 0 8-3.578 8-7.992V23.992a7.963 7.963 0 00-2.343-5.651A7.995 7.995 0 00104.001 16H88c0-4.41-3.585-8-8.007-8H48.007C43.588 8 40 11.582 40 16zm4-1.004A4.001 4.001 0 0148 11h32c2.21 0 4 1.797 4 3.996v4.008A4.001 4.001 0 0180 23H48c-2.21 0-4-1.797-4-3.996v-4.008z\"/><rect width=\"66\" height=\"16\" x=\"62\" y=\"64\" rx=\"8\"/><path d=\"M84.657 82.343l-16-16v11.314l16-16a8 8 0 10-11.314-11.314l-16 16a8 8 0 000 11.314l16 16a8 8 0 1011.314-11.314z\"/></g></svg>"
        },
        "$:/core/images/delete-button": {
            "title": "$:/core/images/delete-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-delete-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(12)\"><rect width=\"105\" height=\"16\" y=\"11\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"28\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"8\" y=\"16\" rx=\"8\"/><rect width=\"88\" height=\"16\" x=\"8\" y=\"112\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"80\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"56\" y=\"16\" rx=\"8\"/><rect width=\"16\" height=\"112\" x=\"32\" y=\"16\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/done-button": {
            "title": "$:/core/images/done-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-done-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M42.26 111.032c-2.051.001-4.103-.78-5.668-2.345L2.662 74.758a8 8 0 01-.005-11.32c3.118-3.117 8.192-3.12 11.32.007l28.278 28.278 72.124-72.124a8.002 8.002 0 0111.314-.001c3.118 3.118 3.124 8.19 0 11.315l-77.78 77.78a7.978 7.978 0 01-5.658 2.343z\"/></svg>"
        },
        "$:/core/images/down-arrow": {
            "title": "$:/core/images/down-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-down-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.177 100.069a7.889 7.889 0 01-5.6-2.316l-55.98-55.98a7.92 7.92 0 010-11.196c3.086-3.085 8.105-3.092 11.196 0l50.382 50.382 50.382-50.382a7.92 7.92 0 0111.195 0c3.086 3.086 3.092 8.104 0 11.196l-55.98 55.98a7.892 7.892 0 01-5.595 2.316z\"/></svg>"
        },
        "$:/core/images/download-button": {
            "title": "$:/core/images/download-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-download-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\" class=\"tc-image-download-button-ring\"/><path d=\"M34.35 66.43l26.892 27.205a4.57 4.57 0 006.516 0L94.65 66.43a4.7 4.7 0 000-6.593 4.581 4.581 0 00-3.258-1.365h-8.46c-2.545 0-4.608-2.087-4.608-4.661v-15.15c0-2.575-2.063-4.662-4.608-4.662H55.284c-2.545 0-4.608 2.087-4.608 4.662v15.15c0 2.574-2.063 4.661-4.608 4.661h-8.46c-2.545 0-4.608 2.087-4.608 4.662a4.69 4.69 0 001.35 3.296z\"/></g></svg>"
        },
        "$:/core/images/edit-button": {
            "title": "$:/core/images/edit-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-edit-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M95.627 10.059l-5.656 5.657 11.313 11.313 5.657-5.656-11.314-11.314zm5.657-5.657l1.966-1.966c3.123-3.122 8.194-3.129 11.319-.005 3.117 3.118 3.122 8.192-.005 11.32l-1.966 1.965-11.314-11.314zm-16.97 16.97l-60.25 60.25a8.12 8.12 0 00-.322.342c-.1.087-.198.179-.295.275-5.735 5.735-10.702 22.016-10.702 22.016s16.405-5.09 22.016-10.702c.095-.096.186-.193.272-.292a8.12 8.12 0 00.345-.325l60.25-60.25-11.314-11.313zM35.171 124.19c6.788-.577 13.898-2.272 23.689-5.348 1.825-.573 3.57-1.136 6.336-2.04 16-5.226 21.877-6.807 28.745-7.146 8.358-.413 13.854 2.13 17.58 8.699a4 4 0 006.959-3.946c-5.334-9.406-13.745-13.296-24.933-12.744-7.875.39-14.057 2.052-30.835 7.533-2.739.894-4.46 1.45-6.25 2.012-19.46 6.112-30.77 7.072-39.597 1.747a4 4 0 10-4.132 6.85c6.333 3.82 13.754 5.12 22.438 4.383z\"/></g></svg>"
        },
        "$:/core/images/erase": {
            "title": "$:/core/images/erase",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-erase tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.087 127.996l63.015-63.015c6.535-6.535 6.528-17.115-.003-23.646L99.466 17.702c-6.539-6.538-17.117-6.532-23.646-.003L4.898 88.62c-6.535 6.534-6.528 17.115.003 23.646l15.73 15.73h39.456zm-34.95-7.313l-14.324-14.325c-3.267-3.268-3.268-8.564-.008-11.824L46.269 59.07l35.462 35.462-26.15 26.15H25.137z\"/></svg>"
        },
        "$:/core/images/excise": {
            "title": "$:/core/images/excise",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-excise tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 107.314l-2.343 2.343a8 8 0 11-11.314-11.314l16-16a8 8 0 0111.314 0l16 16a8 8 0 11-11.314 11.314L72 107.314v14.284c0 3.536-3.582 6.402-8 6.402s-8-2.866-8-6.402v-14.284zM0 40.007C0 35.585 3.59 32 8 32c4.418 0 8 3.588 8 8.007v31.986C16 76.415 12.41 80 8 80c-4.418 0-8-3.588-8-8.007V40.007zm32 0C32 35.585 35.59 32 40 32c4.418 0 8 3.588 8 8.007v31.986C48 76.415 44.41 80 40 80c-4.418 0-8-3.588-8-8.007V40.007zm48 0C80 35.585 83.59 32 88 32c4.418 0 8 3.588 8 8.007v31.986C96 76.415 92.41 80 88 80c-4.418 0-8-3.588-8-8.007V40.007zm-24-32C56 3.585 59.59 0 64 0c4.418 0 8 3.588 8 8.007v31.986C72 44.415 68.41 48 64 48c-4.418 0-8-3.588-8-8.007V8.007zm56 32c0-4.422 3.59-8.007 8-8.007 4.418 0 8 3.588 8 8.007v31.986c0 4.422-3.59 8.007-8 8.007-4.418 0-8-3.588-8-8.007V40.007z\"/></svg>"
        },
        "$:/core/images/export-button": {
            "title": "$:/core/images/export-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-export-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.003 128H119.993a7.984 7.984 0 005.664-2.349v.007A7.975 7.975 0 00128 120V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v56H16V56c0-4.418-3.59-8-8-8-4.418 0-8 3.58-8 8v64c0 4.418 3.59 8 8 8h.003zm48.62-100.689l-8.965 8.966c-3.125 3.125-8.195 3.13-11.319.005-3.118-3.118-3.122-8.192.005-11.319L58.962 2.346A7.986 7.986 0 0164.625 0l-.006.002c2.05-.001 4.102.78 5.666 2.344l22.618 22.617c3.124 3.125 3.129 8.195.005 11.319-3.118 3.118-8.192 3.122-11.319-.005l-8.965-8.966v61.256c0 4.411-3.582 8-8 8-4.41 0-8-3.582-8-8V27.311z\"/></svg>"
        },
        "$:/core/images/file": {
            "title": "$:/core/images/file",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-file tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M111.968 30.5H112V120a8 8 0 01-8 8H24a8 8 0 01-8-8V8a8 8 0 018-8h57v.02a7.978 7.978 0 015.998 2.337l22.627 22.627a7.975 7.975 0 012.343 5.516zM81 8H24v112h80V30.5H89c-4.418 0-8-3.578-8-8V8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"68\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"84\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"100\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/></svg>"
        },
        "$:/core/images/fixed-height": {
            "title": "$:/core/images/fixed-height",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fixed-height tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60 35.657l-9.172 9.171a4 4 0 11-5.656-5.656l16-16a4 4 0 015.656 0l16 16a4 4 0 01-5.656 5.656L68 35.657v57.686l9.172-9.171a4 4 0 115.656 5.656l-16 16a4 4 0 01-5.656 0l-16-16a4 4 0 115.656-5.656L60 93.343V35.657zM16 116h96a4 4 0 100-8H16a4 4 0 100 8zm0-96h96a4 4 0 100-8H16a4 4 0 100 8z\"/></svg>"
        },
        "$:/core/images/fold-all-button": {
            "title": "$:/core/images/fold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M64.03 20.004c-2.05 0-4.102.78-5.667 2.344L35.746 44.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 22.348a7.986 7.986 0 00-5.663-2.346zM64.03 85.002c-2.05-.001-4.102.78-5.667 2.344l-22.617 22.617c-3.125 3.125-3.13 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.966 16.966 16.966c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.192-.005-11.319L69.687 87.346A7.986 7.986 0 0064.024 85z\"/></g></svg>"
        },
        "$:/core/images/fold-button": {
            "title": "$:/core/images/fold-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M64.03 25.004c-2.05 0-4.102.78-5.667 2.344L35.746 49.966c-3.125 3.124-3.13 8.194-.005 11.318 3.118 3.118 8.192 3.122 11.319-.005l16.965-16.965 16.966 16.965c3.124 3.125 8.194 3.13 11.318.005 3.118-3.118 3.122-8.191-.005-11.318L69.687 27.348a7.986 7.986 0 00-5.663-2.346zM64.005 67.379c-2.05 0-4.102.78-5.666 2.344L35.722 92.34c-3.125 3.125-3.13 8.195-.006 11.32 3.118 3.117 8.192 3.121 11.32-.006L64 86.69l16.965 16.965c3.125 3.125 8.195 3.13 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L69.663 69.723A7.986 7.986 0 0064 67.377z\"/></g></svg>"
        },
        "$:/core/images/fold-others-button": {
            "title": "$:/core/images/fold-others-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-fold-others tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" y=\"56.031\" rx=\"8\"/><path d=\"M86.632 79.976c-2.05 0-4.102.78-5.666 2.345L64 99.286 47.034 82.321a7.986 7.986 0 00-5.662-2.346l.005.001c-2.05 0-4.102.78-5.666 2.345l-22.618 22.617c-3.124 3.125-3.129 8.195-.005 11.319 3.118 3.118 8.192 3.122 11.319-.005l16.966-16.966 16.965 16.966a7.986 7.986 0 005.663 2.346l-.005-.002c2.05 0 4.102-.78 5.666-2.344l16.965-16.966 16.966 16.966c3.125 3.124 8.194 3.129 11.319.005 3.118-3.118 3.122-8.192-.005-11.319L92.289 82.321a7.986 7.986 0 00-5.663-2.346zM86.7 48.024c-2.05 0-4.102-.78-5.666-2.345L64.07 28.714 47.103 45.679a7.986 7.986 0 01-5.663 2.346l.005-.001c-2.05 0-4.101-.78-5.666-2.345L13.162 23.062c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L41.44 28.714l16.966-16.966a7.986 7.986 0 015.662-2.346l-.005.002c2.05 0 4.102.78 5.666 2.344l16.966 16.966 16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L92.358 45.679a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/folder": {
            "title": "$:/core/images/folder",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-folder tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.694 128H8C3.58 128 0 124.414 0 119.996V48.004C0 43.584 3.584 40 7.999 40H16v-8c0-4.418 3.578-8 8-8h32a8 8 0 018 8v8h40.001c4.418 0 7.999 3.586 7.999 8.004V59.83l-8-.082v-7.749A4 4 0 0099.997 48H56V36c0-2.21-1.793-4-4.004-4H28.004A4 4 0 0024 36v12H12.003A4 4 0 008 52v64a4 4 0 004.003 4h46.76l-3.069 8z\"/><path d=\"M23.873 55.5h96.003c4.417 0 7.004 4.053 5.774 9.063l-13.344 54.374c-1.228 5.005-5.808 9.063-10.223 9.063H6.08c-4.417 0-7.003-4.053-5.774-9.063L13.65 64.563c1.228-5.005 5.808-9.063 10.223-9.063zm1.78 8.5h87.994c2.211 0 3.504 2.093 2.891 4.666l-11.12 46.668c-.614 2.577-2.902 4.666-5.115 4.666H12.31c-2.211 0-3.504-2.093-2.891-4.666l11.12-46.668C21.152 66.09 23.44 64 25.653 64z\"/></g></svg>"
        },
        "$:/core/images/full-screen-button": {
            "title": "$:/core/images/full-screen-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-full-screen-button tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 8a8 8 0 018-8h32a8 8 0 110 16H16v24a8 8 0 11-16 0V8zM128 120a8 8 0 01-8 8H88a8 8 0 110-16h24V88a8 8 0 1116 0v32zM8 128a8 8 0 01-8-8V88a8 8 0 1116 0v24h24a8 8 0 110 16H8zM120 0a8 8 0 018 8v32a8 8 0 11-16 0V16H88a8 8 0 110-16h32z\"/></svg>"
        },
        "$:/core/images/github": {
            "title": "$:/core/images/github",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-github tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M63.938 1.607c-35.336 0-63.994 28.69-63.994 64.084 0 28.312 18.336 52.329 43.768 60.802 3.202.59 4.37-1.388 4.37-3.088 0-1.518-.056-5.55-.087-10.897-17.802 3.871-21.558-8.591-21.558-8.591-2.911-7.404-7.108-9.375-7.108-9.375-5.81-3.973.44-3.895.44-3.895 6.424.453 9.803 6.606 9.803 6.606 5.709 9.791 14.981 6.963 18.627 5.322.582-4.138 2.236-6.963 4.063-8.564-14.211-1.617-29.153-7.117-29.153-31.672 0-6.995 2.495-12.718 6.589-17.195-.66-1.621-2.856-8.14.629-16.96 0 0 5.37-1.722 17.597 6.57 5.104-1.424 10.58-2.132 16.022-2.16 5.438.028 10.91.736 16.022 2.16 12.22-8.292 17.582-6.57 17.582-6.57 3.493 8.82 1.297 15.339.64 16.96 4.102 4.477 6.578 10.2 6.578 17.195 0 24.618-14.966 30.035-29.22 31.62 2.295 1.98 4.342 5.89 4.342 11.87 0 8.564-.079 15.476-.079 17.576 0 1.715 1.155 3.71 4.4 3.084 25.413-8.493 43.733-32.494 43.733-60.798 0-35.394-28.657-64.084-64.006-64.084\"/></svg>"
        },
        "$:/core/images/gitter": {
            "title": "$:/core/images/gitter",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-gitter tc-image-button\" viewBox=\"0 0 18 25\"><path d=\"M15 5h2v10h-2zM10 5h2v20h-2zM5 5h2v20H5zM0 0h2v15H0z\"/></svg>"
        },
        "$:/core/images/globe": {
            "title": "$:/core/images/globe",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-globe tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M72.811 37.128v2.554c0 2.196.978 6.881 0 8.832-1.466 2.928-4.65 3.54-6.394 5.867-1.182 1.577-4.618 10.601-3.69 12.92 3.969 9.922 11.534 3.187 17.962 9.293.864.821 2.887 2.273 3.296 3.296 3.29 8.223-7.576 15.009 3.757 26.3 1.245 1.24 3.813-3.817 4.079-4.614.852-2.563 6.725-5.45 9.088-7.053 2.02-1.37 4.873-2.667 6.328-4.745 2.27-3.244 1.48-7.514 3.098-10.745 2.139-4.274 3.828-9.635 5.998-13.966 3.898-7.781 4.721 2.093 5.067 2.439.358.357 1.011 0 1.517 0 .094 0 1.447.099 1.516 0 .65-.935-1.043-17.92-1.318-19.297-1.404-7.01-6.944-15.781-11.865-20.5-6.274-6.015-7.09-16.197-18.259-14.954-.204.022-5.084 10.148-7.777 13.512-3.728 4.657-2.47-4.153-6.526-4.153-.081 0-1.183-.103-1.253 0-.586.88-1.44 3.896-2.306 4.417-.265.16-1.722-.239-1.846 0-2.243 4.3 8.256 2.212 5.792 7.952-2.352 5.481-6.328-1.997-6.328 8.56M44.467 7.01c9.685 6.13.682 12.198 2.694 16.215 1.655 3.303 4.241 5.395 1.714 9.814-2.063 3.608-6.87 3.966-9.623 6.723-3.04 3.044-5.464 8.94-6.79 12.911-1.617 4.843 14.547 6.866 12.063 11.008-1.386 2.311-6.746 1.466-8.437.198-1.165-.873-3.593-.546-4.417-1.78-2.613-3.915-2.26-8.023-3.625-12.128-.938-2.822-6.313-2.12-7.844-.593-.523.522-.33 1.792-.33 2.505 0 5.285 7.12 3.316 7.12 6.46 0 14.636 3.927 6.534 11.14 11.336 10.036 6.683 7.844 7.303 14.946 14.404 3.673 3.673 7.741 3.686 9.425 9.294 1.602 5.331-9.327 5.339-11.716 7.448-1.123.991-2.813 4.146-4.219 4.615-1.792.598-3.234.496-4.944 1.78-2.427 1.82-3.9 4.932-4.02 4.81-2.148-2.147-3.52-15.479-3.89-18.257-.588-4.42-5.59-5.54-6.986-9.03-1.57-3.927 1.524-9.52-1.129-13.761-6.52-10.424-11.821-14.5-15.35-26.292-.942-3.148 3.342-6.529 4.877-8.833 1.877-2.816 2.662-5.854 4.746-8.635C22.147 24.19 40.855 9.461 43.857 8.635l.61-1.625z\"/><path d=\"M64 126c34.242 0 62-27.758 62-62 0-34.242-27.758-62-62-62C29.758 2 2 29.758 2 64c0 34.242 27.758 62 62 62zm0-6c30.928 0 56-25.072 56-56S94.928 8 64 8 8 33.072 8 64s25.072 56 56 56z\"/></g></svg>"
        },
        "$:/core/images/heading-1": {
            "title": "$:/core/images/heading-1",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-1 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M14 30h13.25v30.104H61.7V30h13.25v75.684H61.7V71.552H27.25v34.132H14V30zm70.335 13.78c2.544 0 5.017-.212 7.42-.636 2.403-.424 4.576-1.13 6.52-2.12 1.942-.99 3.603-2.261 4.981-3.816 1.378-1.555 2.28-3.463 2.703-5.724h9.858v74.2h-13.25V53.32H84.335v-9.54z\"/></svg>"
        },
        "$:/core/images/heading-2": {
            "title": "$:/core/images/heading-2",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-2 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm119.52 75.684H74.85c.07-6.148 1.555-11.519 4.452-16.112 2.897-4.593 6.855-8.586 11.872-11.978a133.725 133.725 0 017.526-5.141 59.6 59.6 0 007.208-5.353c2.19-1.908 3.993-3.975 5.406-6.201 1.413-2.226 2.155-4.788 2.226-7.685 0-1.343-.159-2.774-.477-4.293a11.357 11.357 0 00-1.855-4.24c-.919-1.307-2.19-2.403-3.816-3.286-1.625-.883-3.745-1.325-6.36-1.325-2.403 0-4.399.477-5.989 1.431-1.59.954-2.862 2.261-3.816 3.922-.954 1.66-1.66 3.622-2.12 5.883-.46 2.261-.724 4.7-.795 7.314H76.23c0-4.099.548-7.897 1.643-11.395 1.095-3.498 2.738-6.519 4.93-9.063 2.19-2.544 4.857-4.54 8.002-5.989C93.95 30.724 97.606 30 101.775 30c4.523 0 8.303.742 11.342 2.226 3.039 1.484 5.494 3.357 7.367 5.618 1.873 2.261 3.198 4.717 3.975 7.367.777 2.65 1.166 5.176 1.166 7.579 0 2.968-.46 5.653-1.378 8.056a25.942 25.942 0 01-3.71 6.625 37.5 37.5 0 01-5.3 5.565 79.468 79.468 0 01-6.148 4.77 165.627 165.627 0 01-6.36 4.24 94.28 94.28 0 00-5.883 4.028c-1.802 1.343-3.374 2.738-4.717 4.187-1.343 1.449-2.261 2.986-2.756 4.611h36.146v10.812z\"/></svg>"
        },
        "$:/core/images/heading-3": {
            "title": "$:/core/images/heading-3",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-3 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm88.885 32.224c1.979.07 3.957-.07 5.936-.424 1.979-.353 3.745-.972 5.3-1.855a10.365 10.365 0 003.763-3.657c.954-1.555 1.431-3.463 1.431-5.724 0-3.18-1.078-5.724-3.233-7.632-2.155-1.908-4.929-2.862-8.32-2.862-2.12 0-3.958.424-5.513 1.272a11.318 11.318 0 00-3.869 3.445c-1.025 1.449-1.784 3.074-2.279 4.876a18.335 18.335 0 00-.636 5.565H75.381c.141-3.604.813-6.943 2.014-10.017 1.201-3.074 2.844-5.742 4.93-8.003 2.084-2.261 4.61-4.028 7.578-5.3C92.871 30.636 96.228 30 99.973 30a29.2 29.2 0 018.533 1.272c2.791.848 5.3 2.085 7.526 3.71s4.01 3.692 5.353 6.201c1.343 2.509 2.014 5.388 2.014 8.639 0 3.745-.848 7.014-2.544 9.805-1.696 2.791-4.346 4.823-7.95 6.095v.212c4.24.848 7.544 2.95 9.911 6.307s3.551 7.438 3.551 12.243c0 3.533-.707 6.696-2.12 9.487a21.538 21.538 0 01-5.724 7.102c-2.403 1.943-5.194 3.445-8.374 4.505-3.18 1.06-6.537 1.59-10.07 1.59-4.31 0-8.074-.618-11.289-1.855s-5.9-2.986-8.056-5.247c-2.155-2.261-3.798-4.982-4.929-8.162-1.13-3.18-1.731-6.713-1.802-10.6h12.084c-.141 4.523.972 8.286 3.34 11.289 2.366 3.003 5.917 4.505 10.652 4.505 4.028 0 7.402-1.148 10.123-3.445 2.72-2.297 4.081-5.565 4.081-9.805 0-2.897-.565-5.194-1.696-6.89a10.97 10.97 0 00-4.452-3.869c-1.837-.883-3.904-1.431-6.2-1.643a58.067 58.067 0 00-7.05-.212v-9.01z\"/></svg>"
        },
        "$:/core/images/heading-4": {
            "title": "$:/core/images/heading-4",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-4 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8 30h13.25v30.104H55.7V30h13.25v75.684H55.7V71.552H21.25v34.132H8V30zm76.59 48.548h22.471V45.9h-.212L84.59 78.548zm43.46 9.54h-9.54v17.596H107.06V88.088h-31.8V76.11l31.8-44.626h11.448v47.064h9.54v9.54z\"/></svg>"
        },
        "$:/core/images/heading-5": {
            "title": "$:/core/images/heading-5",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-5 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm77.755 1.484h38.372v10.812H92.765L88.95 61.164l.212.212c1.625-1.837 3.692-3.233 6.201-4.187 2.509-.954 5-1.431 7.473-1.431 3.675 0 6.96.618 9.858 1.855 2.897 1.237 5.335 2.968 7.314 5.194s3.48 4.858 4.505 7.897c1.025 3.039 1.537 6.325 1.537 9.858 0 2.968-.477 6.024-1.43 9.169a25.161 25.161 0 01-4.559 8.586c-2.085 2.58-4.752 4.7-8.003 6.36-3.25 1.66-7.137 2.491-11.66 2.491-3.604 0-6.943-.477-10.017-1.431-3.074-.954-5.777-2.385-8.109-4.293-2.332-1.908-4.187-4.258-5.565-7.049-1.378-2.791-2.138-6.06-2.279-9.805h12.084c.353 4.028 1.731 7.12 4.134 9.275 2.403 2.155 5.583 3.233 9.54 3.233 2.544 0 4.7-.424 6.466-1.272 1.767-.848 3.198-2.014 4.293-3.498 1.095-1.484 1.873-3.215 2.332-5.194.46-1.979.69-4.099.69-6.36 0-2.05-.284-4.01-.849-5.883-.565-1.873-1.413-3.516-2.544-4.929-1.13-1.413-2.597-2.544-4.399-3.392-1.802-.848-3.904-1.272-6.307-1.272-2.544 0-4.929.477-7.155 1.431-2.226.954-3.834 2.738-4.823 5.353H75.805l7.95-40.598z\"/></svg>"
        },
        "$:/core/images/heading-6": {
            "title": "$:/core/images/heading-6",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-heading-6 tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M6 30h13.25v30.104H53.7V30h13.25v75.684H53.7V71.552H19.25v34.132H6V30zm106.587 20.246c-.283-3.039-1.36-5.494-3.233-7.367-1.873-1.873-4.399-2.809-7.579-2.809-2.19 0-4.08.406-5.67 1.219a12.435 12.435 0 00-4.029 3.233c-1.095 1.343-1.979 2.88-2.65 4.611a37.696 37.696 0 00-1.643 5.459 46.08 46.08 0 00-.9 5.671 722.213 722.213 0 00-.478 5.247l.212.212c1.625-2.968 3.87-5.176 6.731-6.625 2.862-1.449 5.954-2.173 9.275-2.173 3.675 0 6.96.636 9.858 1.908 2.897 1.272 5.353 3.021 7.367 5.247 2.014 2.226 3.551 4.858 4.611 7.897 1.06 3.039 1.59 6.325 1.59 9.858 0 3.604-.583 6.943-1.749 10.017-1.166 3.074-2.844 5.76-5.035 8.056-2.19 2.297-4.805 4.081-7.844 5.353-3.039 1.272-6.395 1.908-10.07 1.908-5.441 0-9.91-1.007-13.409-3.021-3.498-2.014-6.254-4.77-8.268-8.268-2.014-3.498-3.41-7.597-4.187-12.296-.777-4.7-1.166-9.77-1.166-15.211 0-4.452.477-8.94 1.431-13.462.954-4.523 2.526-8.639 4.717-12.349 2.19-3.71 5.07-6.731 8.64-9.063C92.676 31.166 97.075 30 102.304 30c2.968 0 5.76.495 8.374 1.484 2.615.99 4.93 2.367 6.943 4.134 2.014 1.767 3.657 3.887 4.93 6.36 1.271 2.473 1.978 5.23 2.12 8.268h-12.085zm-11.66 46.852c2.19 0 4.099-.442 5.724-1.325a12.869 12.869 0 004.081-3.445c1.095-1.413 1.908-3.056 2.438-4.929.53-1.873.795-3.798.795-5.777s-.265-3.887-.795-5.724c-.53-1.837-1.343-3.445-2.438-4.823-1.095-1.378-2.456-2.491-4.08-3.339-1.626-.848-3.534-1.272-5.725-1.272-2.19 0-4.116.406-5.777 1.219-1.66.813-3.056 1.908-4.187 3.286-1.13 1.378-1.979 2.986-2.544 4.823-.565 1.837-.848 3.78-.848 5.83 0 2.05.283 3.993.848 5.83.565 1.837 1.413 3.48 2.544 4.929a12.39 12.39 0 004.187 3.445c1.66.848 3.586 1.272 5.777 1.272z\"/></svg>"
        },
        "$:/core/images/help": {
            "title": "$:/core/images/help",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-help tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M36.055 111.441c-5.24 4.396-15.168 7.362-26.555 7.362-1.635 0-3.24-.06-4.806-.179 7.919-2.64 14.062-8.6 16.367-16.014C8.747 92.845 1.05 78.936 1.05 63.5c0-29.547 28.206-53.5 63-53.5s63 23.953 63 53.5-28.206 53.5-63 53.5c-10.055 0-19.56-2-27.994-5.559zm35.35-33.843a536.471 536.471 0 00.018-4.682 199.02 199.02 0 00-.023-3.042c.008-1.357.595-2.087 3.727-4.235.112-.077 1.085-.74 1.386-.948 3.093-2.133 5.022-3.786 6.762-6.187 2.34-3.228 3.558-7.077 3.558-11.649 0-13.292-9.86-21.952-21.455-21.952-11.103 0-22.499 9.609-24.066 22.295a6.023 6.023 0 1011.956 1.477c.806-6.527 6.972-11.726 12.11-11.726 5.265 0 9.408 3.64 9.408 9.906 0 3.634-1.1 5.153-5.111 7.919l-1.362.93c-2.682 1.84-4.227 3.1-5.7 4.931-2.109 2.62-3.242 5.717-3.258 9.314.013.892.02 1.86.022 2.981a470.766 470.766 0 01-.022 4.943 6.023 6.023 0 1012.046.12l.003-.395zm-6.027 24.499a7.529 7.529 0 100-15.058 7.529 7.529 0 000 15.058z\"/></svg>"
        },
        "$:/core/images/home-button": {
            "title": "$:/core/images/home-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-home-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112.985 119.502c.01-.165.015-.331.015-.499V67.568c3.137 2.948 8.076 2.884 11.134-.174a7.999 7.999 0 00-.002-11.316L70.396 2.343A7.978 7.978 0 0064.734 0a7.957 7.957 0 00-5.656 2.343L33 28.42V8.007C33 3.585 29.41 0 25 0c-4.418 0-8 3.59-8 8.007V44.42L5.342 56.078c-3.125 3.125-3.12 8.198-.002 11.316a7.999 7.999 0 0011.316-.003l.344-.343v52.945a8.11 8.11 0 000 .007c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8a8.11 8.11 0 00-.015-.498zM97 112V51.574L64.737 19.31 33 51.048V112h64z\"/></svg>"
        },
        "$:/core/images/import-button": {
            "title": "$:/core/images/import-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-import-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M114.832 60.436s3.235-3.27 6.921.417c3.686 3.686.231 7.14.231 7.14l-42.153 42.92s-30.765 32.367-58.798 4.333C-7 87.213 24.59 55.623 24.59 55.623L67.363 12.85s22.725-24.6 43.587-3.738c20.862 20.862-3.96 43.09-3.96 43.09l-35.04 35.04S49.903 112.546 36.426 99.07c-13.476-13.477 11.83-35.523 11.83-35.523l35.04-35.04s3.902-3.902 7.78-.023c3.879 3.878.118 7.921.118 7.921l-35.04 35.04s-13.212 13.212-8.872 17.551c4.34 4.34 16.77-9.653 16.77-9.653l35.04-35.04s16.668-14.598 3.966-27.3c-13.893-13.892-27.565 3.702-27.565 3.702l-42.91 42.91s-23.698 23.698-3.658 43.738 43.012-4.385 43.012-4.385l42.895-42.533z\"/></svg>"
        },
        "$:/core/images/info-button": {
            "title": "$:/core/images/info-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-info-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\" transform=\"translate(.05)\"><path d=\"M64 128c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64C28.654 0 0 28.654 0 64c0 35.346 28.654 64 64 64zm0-16c26.51 0 48-21.49 48-48S90.51 16 64 16 16 37.49 16 64s21.49 48 48 48z\"/><circle cx=\"64\" cy=\"32\" r=\"8\"/><rect width=\"16\" height=\"56\" x=\"56\" y=\"48\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/italic": {
            "title": "$:/core/images/italic",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-italic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M66.711 0h22.41L62.408 128H40z\"/></svg>"
        },
        "$:/core/images/left-arrow": {
            "title": "$:/core/images/left-arrow",
            "created": "20150315234410875",
            "modified": "20150315235324760",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-left-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M0 64.177c0-2.026.771-4.054 2.317-5.6l55.98-55.98a7.92 7.92 0 0111.195.001c3.086 3.085 3.092 8.104.001 11.195L19.111 64.175l50.382 50.382a7.92 7.92 0 010 11.195c-3.086 3.086-8.105 3.092-11.196.001l-55.98-55.98A7.892 7.892 0 010 64.177z\"/></svg>"
        },
        "$:/core/images/line-width": {
            "title": "$:/core/images/line-width",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-line-width tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M16 18h96a2 2 0 000-4H16a2 2 0 100 4zm0 17h96a4 4 0 100-8H16a4 4 0 100 8zm0 21h96a6 6 0 000-12H16a6 6 0 100 12zm0 29h96c5.523 0 10-4.477 10-10s-4.477-10-10-10H16c-5.523 0-10 4.477-10 10s4.477 10 10 10zm0 43h96c8.837 0 16-7.163 16-16s-7.163-16-16-16H16c-8.837 0-16 7.163-16 16s7.163 16 16 16z\"/></svg>"
        },
        "$:/core/images/link": {
            "title": "$:/core/images/link",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-link tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M42.263 69.38a31.919 31.919 0 006.841 10.13c12.5 12.5 32.758 12.496 45.255 0l22.627-22.628c12.502-12.501 12.497-32.758 0-45.255-12.5-12.5-32.758-12.496-45.254 0L49.104 34.255a32.333 32.333 0 00-2.666 3.019 36.156 36.156 0 0121.94.334l14.663-14.663c6.25-6.25 16.382-6.254 22.632-.004 6.248 6.249 6.254 16.373-.004 22.631l-22.62 22.62c-6.25 6.25-16.381 6.254-22.631.004a15.93 15.93 0 01-4.428-8.433 11.948 11.948 0 00-7.59 3.48l-6.137 6.137z\"/><path d=\"M86.35 59.234a31.919 31.919 0 00-6.84-10.13c-12.5-12.5-32.758-12.497-45.255 0L11.627 71.732c-12.501 12.5-12.496 32.758 0 45.254 12.5 12.5 32.758 12.497 45.255 0L79.51 94.36a32.333 32.333 0 002.665-3.02 36.156 36.156 0 01-21.94-.333l-14.663 14.663c-6.25 6.25-16.381 6.253-22.63.004-6.25-6.249-6.255-16.374.003-22.632l22.62-22.62c6.25-6.25 16.381-6.253 22.631-.003a15.93 15.93 0 014.428 8.432 11.948 11.948 0 007.59-3.48l6.137-6.136z\"/></g></svg>"
        },
        "$:/core/images/linkify": {
            "title": "$:/core/images/linkify",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-linkify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M17.031 31.919H9.048V96.85h7.983v6.92H0V25h17.031v6.919zm24.66 0h-7.983V96.85h7.983v6.92H24.66V25h17.03v6.919zM67.77 56.422l11.975-3.903 2.306 7.096-12.063 3.903 7.628 10.379-6.12 4.435-7.63-10.467-7.45 10.2-5.943-4.523L58.1 63.518 45.95 59.35l2.306-7.096 12.064 4.17V43.825h7.45v12.596zM86.31 96.85h7.982V31.92H86.31V25h17.031v78.77H86.31v-6.92zm24.659 0h7.983V31.92h-7.983V25H128v78.77h-17.031v-6.92z\"/></svg>"
        },
        "$:/core/images/list-bullet": {
            "title": "$:/core/images/list-bullet",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-bullet tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M11.636 40.273c6.427 0 11.637-5.21 11.637-11.637C23.273 22.21 18.063 17 11.636 17 5.21 17 0 22.21 0 28.636c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.637 0-6.426-5.21-11.636-11.637-11.636C5.21 51.91 0 57.12 0 63.545c0 6.427 5.21 11.637 11.636 11.637zm0 34.909c6.427 0 11.637-5.21 11.637-11.636 0-6.427-5.21-11.637-11.637-11.637C5.21 86.818 0 92.028 0 98.455c0 6.426 5.21 11.636 11.636 11.636zM34.91 22.818H128v11.637H34.91V22.818zm0 34.91H128v11.636H34.91V57.727zm0 34.908H128v11.637H34.91V92.636z\"/></svg>"
        },
        "$:/core/images/list-number": {
            "title": "$:/core/images/list-number",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list-number tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M33.84 22.356H128v11.77H33.84v-11.77zm0 35.31H128v11.77H33.84v-11.77zm0 35.311H128v11.77H33.84v-11.77zM.38 42.631v-2.223h.998c.826 0 1.445-.14 1.858-.42.413-.28.619-.948.619-2.002V22.769c0-1.442-.193-2.336-.58-2.683-.385-.347-1.477-.52-3.275-.52v-2.143c3.502-.147 6.252-.955 8.25-2.423h2.117v22.865c0 .921.15 1.575.449 1.963.3.387.949.58 1.948.58h.998v2.223H.38zm-.3 35.356v-1.902c7.19-6.554 10.786-12.58 10.786-18.08 0-1.562-.326-2.81-.979-3.744-.652-.934-1.524-1.402-2.616-1.402-.893 0-1.655.317-2.287.952-.633.634-.95 1.364-.95 2.192 0 .974.247 1.829.74 2.563.106.16.16.28.16.36 0 .147-.16.28-.48.4-.213.08-.752.308-1.618.681-.839.374-1.358.561-1.558.561-.24 0-.512-.37-.819-1.111A6.2 6.2 0 010 57.064c0-1.949.849-3.544 2.547-4.785 1.698-1.242 3.798-1.862 6.302-1.862 2.463 0 4.53.67 6.202 2.012 1.67 1.341 2.506 3.093 2.506 5.256a8.644 8.644 0 01-.849 3.724c-.566 1.201-1.92 3.053-4.064 5.556a165.471 165.471 0 01-6.272 6.938h11.445l-1.019 5.726h-2.117c.08-.28.12-.534.12-.76 0-.388-.1-.631-.3-.731-.2-.1-.599-.15-1.198-.15H.08zm12.124 19.207c1.745.04 3.236.637 4.474 1.792 1.239 1.154 1.858 2.773 1.858 4.855 0 2.99-1.132 5.393-3.396 7.208-2.263 1.815-5 2.723-8.209 2.723-2.01 0-3.669-.384-4.974-1.151C.652 111.853 0 110.849 0 109.607c0-.774.27-1.398.809-1.872.54-.474 1.128-.71 1.768-.71.639 0 1.162.2 1.568.6.406.4.782 1.055 1.128 1.962.466 1.268 1.239 1.902 2.317 1.902 1.265 0 2.287-.477 3.066-1.431.78-.955 1.169-2.686 1.169-5.196 0-1.709-.12-3.023-.36-3.944-.24-.921-.792-1.382-1.658-1.382-.586 0-1.185.307-1.797.921-.493.494-.932.741-1.319.741-.333 0-.602-.147-.809-.44-.206-.294-.31-.574-.31-.841 0-.32.104-.594.31-.821.207-.227.69-.594 1.449-1.102 2.876-1.922 4.314-4.017 4.314-6.287 0-1.188-.306-2.092-.919-2.713a3.001 3.001 0 00-2.217-.93c-.799 0-1.525.263-2.177.79-.653.528-.979 1.158-.979 1.892 0 .641.253 1.235.76 1.782.172.2.259.367.259.5 0 .121-.57.428-1.708.922-1.139.494-1.854.74-2.147.74-.413 0-.75-.333-1.009-1-.26-.668-.39-1.282-.39-1.842 0-1.749.93-3.224 2.787-4.425 1.858-1.202 3.965-1.802 6.322-1.802 2.064 0 3.851.447 5.363 1.341 1.511.895 2.267 2.116 2.267 3.664 0 1.362-.57 2.623-1.708 3.784a13.387 13.387 0 01-3.945 2.784z\"/></svg>"
        },
        "$:/core/images/list": {
            "title": "$:/core/images/list",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-list tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M87.748 128H23.999c-4.418 0-7.999-3.59-7.999-8.007V8.007C16 3.585 19.588 0 24 0h80c4.419 0 8 3.59 8 8.007V104H91.25c-.965 0-1.84.392-2.473 1.025a3.476 3.476 0 00-1.029 2.476V128zm8-.12l15.88-15.88h-15.88v15.88zM40 15.508A3.502 3.502 0 0143.5 12h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 20h-55a3.498 3.498 0 01-3.5-3.509v-.982zM32 22a6 6 0 100-12 6 6 0 000 12zm8 9.509A3.502 3.502 0 0143.5 28h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 36h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 44h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 52h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 60h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 68h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 76h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 84h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.502 3.502 0 0143.5 92h55c1.933 0 3.5 1.561 3.5 3.509v.982A3.502 3.502 0 0198.5 100h-55a3.498 3.498 0 01-3.5-3.509v-.982zm0 16A3.505 3.505 0 0143.497 108h33.006A3.497 3.497 0 0180 111.509v.982A3.505 3.505 0 0176.503 116H43.497A3.497 3.497 0 0140 112.491v-.982zM32 38a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12zm0 16a6 6 0 100-12 6 6 0 000 12z\"/></svg>"
        },
        "$:/core/images/locked-padlock": {
            "title": "$:/core/images/locked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-locked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M96.472 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h8c.003-15.723.303-47.731 32.16-47.731 31.794 0 32.305 32.057 32.312 47.731zm-15.897 0H48.44c.002-16.287.142-32 15.719-32 15.684 0 16.977 16.136 16.415 32zM67.732 92.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
        },
        "$:/core/images/mail": {
            "title": "$:/core/images/mail",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mail tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M122.827 104.894a7.986 7.986 0 01-2.834.516H8.007c-.812 0-1.597-.12-2.335-.345l34.163-34.163 20.842 20.842a3.998 3.998 0 003.418 1.134 4.003 4.003 0 003.395-1.134L88.594 70.64c.075.09.155.176.24.26l33.993 33.994zm5.076-6.237c.064-.406.097-.823.097-1.247v-64c0-.669-.082-1.318-.237-1.94L94.23 65.006c.09.075.177.154.261.239l33.413 33.413zm-127.698.56A8.023 8.023 0 010 97.41v-64c0-.716.094-1.41.271-2.071l33.907 33.906L.205 99.218zM5.93 25.684a8.012 8.012 0 012.078-.273h111.986c.766 0 1.507.108 2.209.308L64.083 83.837 5.93 25.683z\"/></svg>"
        },
        "$:/core/images/menu-button": {
            "title": "$:/core/images/menu-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-menu-button tc-image-button\" viewBox=\"0 0 128 128\"><rect width=\"128\" height=\"16\" y=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"56\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"96\" rx=\"8\"/></svg>"
        },
        "$:/core/images/mono-block": {
            "title": "$:/core/images/mono-block",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-block tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M23.965 32.967h.357c.755 0 1.328.192 1.72.577.39.384.586.947.586 1.688 0 .824-.206 1.418-.618 1.782-.413.363-1.094.545-2.045.545h-6.31c-.965 0-1.65-.178-2.056-.535-.405-.356-.608-.954-.608-1.792 0-.811.203-1.391.608-1.74.406-.35 1.09-.525 2.055-.525h.734l-.86-2.453H8.471l-.902 2.453h.734c.95 0 1.632.178 2.044.535.413.356.619.933.619 1.73 0 .824-.206 1.418-.619 1.782-.412.363-1.094.545-2.044.545h-5.41c-.964 0-1.649-.182-2.054-.545-.406-.364-.608-.958-.608-1.782 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.719-.577h.356l5.62-15.641H6.835c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.95-.619-1.76 0-.825.207-1.42.619-1.783.412-.363 1.094-.545 2.044-.545h7.863c1.244 0 2.118.67 2.62 2.013v.063l6.647 18.2zM12.98 17.326l-3.04 8.848h6.08l-3.04-8.848zm22.402 9.372v6.395h3.145c2.223 0 3.788-.245 4.697-.734.908-.49 1.362-1.307 1.362-2.453 0-1.16-.433-1.985-1.3-2.474-.866-.49-2.383-.734-4.55-.734h-3.354zm10.693-2.327c1.524.559 2.642 1.324 3.355 2.295.713.972 1.07 2.212 1.07 3.722 0 1.272-.308 2.432-.923 3.48-.615 1.049-1.496 1.909-2.642 2.58a7.499 7.499 0 01-2.254.849c-.832.174-2.01.262-3.533.262H30.202c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.782 0-.741.189-1.304.566-1.688.378-.385.93-.577 1.657-.577h.356V17.326h-.356c-.727 0-1.28-.196-1.657-.587-.377-.392-.566-.965-.566-1.72 0-.81.203-1.401.608-1.771.406-.37 1.062-.556 1.971-.556h9.645c2.95 0 5.19.573 6.72 1.72 1.53 1.145 2.296 2.823 2.296 5.031 0 1.09-.234 2.052-.703 2.883-.468.832-1.163 1.513-2.086 2.045zM35.381 17.2v5.284h2.83c1.72 0 2.932-.203 3.638-.609.706-.405 1.06-1.09 1.06-2.054 0-.909-.319-1.573-.955-1.992-.636-.42-1.667-.63-3.093-.63h-3.48zm35.863-3.816c.28-.503.566-.86.86-1.07.293-.21.664-.314 1.111-.314.685 0 1.17.182 1.457.545.287.364.43.986.43 1.866l.042 5.452c0 .964-.157 1.614-.472 1.95-.314.335-.884.503-1.709.503-.587 0-1.037-.14-1.352-.42-.314-.28-.584-.796-.807-1.551-.364-1.328-.944-2.282-1.74-2.862-.797-.58-1.901-.87-3.313-.87-2.153 0-3.802.727-4.948 2.18-1.147 1.454-1.72 3.558-1.72 6.311 0 2.74.58 4.844 1.74 6.311 1.16 1.468 2.817 2.202 4.97 2.202 1.467 0 3.085-.49 4.854-1.468 1.768-.978 2.883-1.467 3.344-1.467.545 0 1.003.23 1.373.692.37.46.556 1.034.556 1.719 0 1.23-1.084 2.39-3.25 3.48-2.167 1.09-4.606 1.636-7.318 1.636-3.662 0-6.625-1.21-8.89-3.627-2.264-2.419-3.396-5.578-3.396-9.478 0-3.76 1.146-6.884 3.438-9.372 2.293-2.488 5.2-3.732 8.723-3.732.992 0 1.97.112 2.935.335.964.224 1.992.574 3.082 1.049zm10.22 19.583V17.326h-.356c-.755 0-1.328-.196-1.72-.587-.39-.392-.586-.965-.586-1.72 0-.81.21-1.401.629-1.771.42-.37 1.097-.556 2.034-.556h5.178c2.922 0 5.06.126 6.416.377 1.356.252 2.51.671 3.46 1.258 1.691 1.007 2.988 2.443 3.89 4.31.9 1.865 1.352 4.021 1.352 6.467 0 2.586-.514 4.847-1.541 6.783-1.028 1.936-2.485 3.4-4.372 4.393-.853.447-1.852.772-2.998.975-1.147.203-2.852.304-5.116.304h-6.269c-.965 0-1.65-.178-2.055-.535-.406-.356-.608-.954-.608-1.792 0-.741.195-1.304.587-1.688.391-.385.964-.577 1.72-.577h.356zm5.41-15.725v15.725h1.195c2.642 0 4.592-.646 5.85-1.94 1.258-1.292 1.887-3.28 1.887-5.965 0-2.641-.64-4.612-1.918-5.912-1.28-1.3-3.205-1.95-5.777-1.95-.335 0-.59.003-.765.01a7.992 7.992 0 00-.472.032zm35.067-.126h-9.75v5.368h3.69v-.252c0-.797.175-1.39.524-1.782.35-.392.88-.587 1.594-.587.629 0 1.142.178 1.54.534.4.357.598.808.598 1.353 0 .028.007.118.021.272.014.154.021.308.021.462v4.34c0 .936-.167 1.607-.503 2.013-.335.405-.88.608-1.635.608-.713 0-1.251-.19-1.615-.567-.363-.377-.545-.936-.545-1.677v-.377h-3.69v6.269h9.75v-2.495c0-.937.178-1.608.534-2.013.357-.405.94-.608 1.75-.608.798 0 1.367.2 1.71.597.342.399.513 1.073.513 2.024v5.074c0 .755-.146 1.258-.44 1.51-.293.251-.873.377-1.74.377h-17.172c-.923 0-1.583-.182-1.982-.545-.398-.364-.597-.958-.597-1.782 0-.741.189-1.304.566-1.688.377-.385.93-.577 1.656-.577h.357V17.326h-.357c-.712 0-1.261-.2-1.646-.598-.384-.398-.576-.968-.576-1.709 0-.81.203-1.401.608-1.771.405-.37 1.062-.556 1.97-.556h17.173c.853 0 1.43.13 1.73.388.3.258.45.772.45 1.54v4.698c0 .95-.174 1.631-.524 2.044-.35.412-.915.618-1.698.618-.81 0-1.394-.21-1.75-.629-.357-.419-.535-1.097-.535-2.033v-2.202zM19.77 47.641c.267-.504.55-.86.85-1.07.3-.21.675-.314 1.122-.314.685 0 1.17.181 1.457.545.287.363.43.985.43 1.866l.042 5.451c0 .965-.157 1.615-.472 1.95-.314.336-.891.504-1.73.504-.587 0-1.045-.144-1.373-.43-.329-.287-.598-.8-.807-1.541-.378-1.342-.958-2.3-1.74-2.873-.783-.573-1.88-.86-3.292-.86-2.153 0-3.799.727-4.938 2.181-1.14 1.454-1.709 3.557-1.709 6.311s.598 4.882 1.793 6.385C10.599 67.248 12.294 68 14.488 68c.503 0 1.077-.06 1.72-.179a23.809 23.809 0 002.264-.555v-3.313h-2.37c-.95 0-1.624-.175-2.023-.524-.398-.35-.597-.93-.597-1.74 0-.84.199-1.437.597-1.793.399-.357 1.073-.535 2.024-.535h7.569c.978 0 1.667.175 2.065.524.398.35.598.937.598 1.762 0 .74-.2 1.31-.598 1.708-.398.399-.975.598-1.73.598h-.335v5.242c0 .447-.05.758-.147.933-.098.174-.293.353-.587.534-.797.476-2.062.895-3.795 1.258a25.576 25.576 0 01-5.263.546c-3.662 0-6.625-1.21-8.89-3.628-2.264-2.418-3.397-5.577-3.397-9.477 0-3.76 1.147-6.884 3.44-9.372 2.292-2.488 5.199-3.732 8.721-3.732.979 0 1.954.112 2.925.335.972.224 2.003.573 3.093 1.049zm15.84 3.941v4.823h6.857v-4.823h-.336c-.754 0-1.331-.195-1.73-.587-.398-.391-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.364 1.093-.545 2.044-.545h5.41c.95 0 1.624.181 2.023.545.398.363.597.957.597 1.782 0 .755-.192 1.328-.576 1.72-.385.39-.947.586-1.688.586h-.357v15.642h.357c.755 0 1.328.192 1.719.576.391.385.587.947.587 1.688 0 .825-.203 1.419-.608 1.782-.405.364-1.09.546-2.055.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.2-1.303.598-1.688.398-.384.975-.576 1.73-.576h.335v-6.186h-6.856v6.186h.335c.755 0 1.331.192 1.73.576.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.412.364-1.094.546-2.044.546h-5.41c-.964 0-1.65-.179-2.055-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.392-.384.965-.576 1.72-.576h.356V51.582h-.356c-.741 0-1.304-.195-1.688-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.073-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.335zm31.754 0v15.642h3.523c.95 0 1.632.178 2.044.534.412.357.618.933.618 1.73 0 .811-.21 1.402-.629 1.772-.419.37-1.097.556-2.033.556H58.433c-.95 0-1.632-.182-2.044-.546-.412-.363-.619-.957-.619-1.782 0-.81.203-1.39.608-1.74.406-.35 1.09-.524 2.055-.524h3.523V51.582h-3.523c-.95 0-1.632-.181-2.044-.545-.412-.363-.619-.95-.619-1.761 0-.825.203-1.412.608-1.761.406-.35 1.09-.524 2.055-.524h12.455c.992 0 1.684.174 2.075.524.392.35.587.936.587 1.761 0 .81-.202 1.398-.608 1.761-.405.364-1.09.545-2.054.545h-3.523zm30.496 0v11.994c0 1.873-.122 3.228-.367 4.067a5.876 5.876 0 01-1.227 2.244c-.74.852-1.768 1.495-3.082 1.929-1.314.433-2.893.65-4.738.65-1.3 0-2.555-.126-3.764-.378a16.843 16.843 0 01-3.491-1.132c-.615-.28-1.017-.643-1.206-1.09-.188-.448-.283-1.175-.283-2.18v-4.32c0-1.202.175-2.04.525-2.516.349-.475.957-.713 1.824-.713 1.244 0 1.929.915 2.054 2.747.014.321.035.566.063.733.168 1.622.545 2.73 1.133 3.324.587.594 1.523.89 2.81.89 1.593 0 2.714-.422 3.364-1.268.65-.845.975-2.386.975-4.623V51.582H88.93c-.95 0-1.632-.181-2.044-.545-.413-.363-.619-.95-.619-1.761 0-.825.2-1.412.598-1.761.398-.35 1.086-.524 2.065-.524h10.693c.979 0 1.667.174 2.065.524.399.35.598.936.598 1.761 0 .81-.206 1.398-.619 1.761-.412.364-1.093.545-2.044.545h-1.761zm14.644 0v6.353l6.48-6.478c-.728-.084-1.238-.29-1.531-.619-.294-.328-.44-.85-.44-1.562 0-.825.198-1.419.597-1.782.398-.364 1.073-.545 2.023-.545h5.137c.95 0 1.625.181 2.023.545.399.363.598.957.598 1.782 0 .769-.2 1.345-.598 1.73-.398.384-.982.576-1.75.576h-.483l-6.101 6.06c1.132.839 2.167 1.94 3.103 3.302.937 1.363 2.034 3.456 3.292 6.28h.692c.825 0 1.44.188 1.845.566.405.377.608.943.608 1.698 0 .825-.206 1.419-.619 1.782-.412.364-1.093.546-2.044.546h-2.579c-1.132 0-2.048-.762-2.746-2.286-.126-.28-.224-.503-.294-.67-.923-1.958-1.768-3.467-2.537-4.53a16.616 16.616 0 00-2.705-2.914l-1.97 1.887v3.92h.335c.755 0 1.331.193 1.73.577.398.385.597.947.597 1.688 0 .825-.206 1.419-.618 1.782-.413.364-1.094.546-2.045.546h-5.41c-.964 0-1.649-.179-2.054-.535-.405-.357-.608-.954-.608-1.793 0-.74.196-1.303.587-1.688.391-.384.965-.576 1.72-.576h.356V51.582h-.357c-.74 0-1.303-.195-1.687-.587-.385-.391-.577-.964-.577-1.719 0-.825.2-1.419.598-1.782.398-.364 1.072-.545 2.023-.545h5.41c.936 0 1.614.181 2.033.545.42.363.63.957.63 1.782 0 .755-.2 1.328-.598 1.72-.399.39-.975.586-1.73.586h-.336zM13.44 96.326l4.005-11.889c.251-.782.6-1.352 1.048-1.709.447-.356 1.041-.534 1.782-.534h3.271c.95 0 1.632.182 2.044.545.413.363.619.957.619 1.782 0 .755-.2 1.328-.598 1.72-.398.39-.975.587-1.73.587h-.335l.587 15.641h.357c.754 0 1.32.192 1.698.577.377.384.566.947.566 1.687 0 .825-.2 1.42-.598 1.783-.398.363-1.072.545-2.023.545h-4.718c-.95 0-1.624-.178-2.023-.535-.398-.356-.597-.954-.597-1.793 0-.74.192-1.303.576-1.687.385-.385.954-.577 1.709-.577h.335l-.293-12.79-3.061 9.52c-.224.712-.542 1.226-.954 1.54-.413.315-.982.472-1.709.472-.727 0-1.303-.157-1.73-.472-.426-.314-.751-.828-.975-1.54l-3.04-9.52-.294 12.79h.336c.755 0 1.324.192 1.709.577.384.384.576.947.576 1.687 0 .825-.202 1.42-.608 1.783-.405.363-1.076.545-2.013.545H2.621c-.937 0-1.608-.182-2.013-.545-.405-.364-.608-.958-.608-1.783 0-.74.192-1.303.577-1.687.384-.385.954-.577 1.708-.577h.336l.608-15.641h-.336c-.754 0-1.331-.196-1.73-.588-.398-.39-.597-.964-.597-1.719 0-.825.206-1.419.619-1.782.412-.363 1.093-.545 2.044-.545h3.27c.728 0 1.311.175 1.752.524.44.35.8.923 1.08 1.72l4.109 11.888zm30.454 2.054V86.828H42.74c-.922 0-1.583-.182-1.981-.546-.398-.363-.598-.95-.598-1.76 0-.812.2-1.402.598-1.773.398-.37 1.059-.555 1.981-.555h5.955c.909 0 1.566.185 1.97.555.406.37.609.961.609 1.772 0 .741-.192 1.31-.577 1.709-.384.398-.933.598-1.646.598h-.356v19.038c0 .657-.07 1.069-.21 1.237-.14.167-.454.251-.943.251h-2.097c-.67 0-1.143-.07-1.415-.21-.273-.14-.507-.384-.703-.733l-8.722-15.327v11.385h1.216c.909 0 1.559.175 1.95.524.392.35.587.93.587 1.74 0 .825-.199 1.42-.597 1.783-.399.363-1.045.545-1.94.545h-6.017c-.909 0-1.566-.182-1.971-.545-.406-.364-.608-.958-.608-1.783 0-.74.188-1.303.566-1.687.377-.385.936-.577 1.677-.577h.336V86.828h-.336c-.713 0-1.265-.2-1.656-.598-.392-.398-.587-.968-.587-1.709 0-.81.206-1.401.618-1.772.413-.37 1.066-.555 1.96-.555h3.44c.824 0 1.383.108 1.677.325.293.216.622.653.985 1.31l7.989 14.551zM64.66 86.366c-1.803 0-3.218.727-4.245 2.18-1.028 1.455-1.541 3.474-1.541 6.06 0 2.586.517 4.613 1.551 6.08 1.034 1.468 2.446 2.202 4.235 2.202 1.804 0 3.222-.73 4.257-2.19 1.034-1.461 1.551-3.492 1.551-6.092 0-2.586-.513-4.605-1.54-6.06-1.028-1.453-2.45-2.18-4.268-2.18zm0-4.864c3.44 0 6.27 1.23 8.492 3.69 2.223 2.46 3.334 5.598 3.334 9.414 0 3.844-1.104 6.99-3.313 9.436-2.208 2.446-5.046 3.669-8.513 3.669-3.424 0-6.255-1.234-8.491-3.701-2.237-2.467-3.355-5.602-3.355-9.404 0-3.83 1.108-6.971 3.323-9.424 2.216-2.454 5.057-3.68 8.523-3.68zM87.461 98.17v4.298h2.16c.908 0 1.555.175 1.94.524.384.35.576.93.576 1.74 0 .825-.196 1.42-.587 1.783-.392.363-1.035.545-1.93.545h-7.254c-.922 0-1.583-.182-1.981-.545-.399-.364-.598-.958-.598-1.783 0-.74.189-1.303.566-1.687.378-.385.93-.577 1.657-.577h.356V86.828h-.356c-.713 0-1.262-.2-1.646-.598-.385-.398-.577-.968-.577-1.709 0-.81.203-1.401.608-1.772.406-.37 1.063-.555 1.971-.555h8.66c3.424 0 6.014.657 7.768 1.97 1.754 1.315 2.631 3.25 2.631 5.809 0 2.697-.873 4.738-2.62 6.122-1.748 1.384-4.34 2.076-7.78 2.076h-3.564zm0-11.343v6.625h2.977c1.65 0 2.89-.28 3.722-.839.832-.559 1.248-1.397 1.248-2.516 0-1.048-.43-1.855-1.29-2.421-.86-.566-2.086-.85-3.68-.85h-2.977zm27.267 20.568l-1.636 1.636a12.37 12.37 0 011.772-.44c.58-.098 1.15-.147 1.709-.147 1.104 0 2.268.164 3.491.492 1.223.329 1.967.493 2.233.493.447 0 1.03-.15 1.75-.45.72-.301 1.206-.452 1.458-.452.517 0 .947.2 1.29.598.342.398.513.898.513 1.5 0 .796-.472 1.474-1.415 2.033-.944.56-2.1.839-3.47.839-.937 0-2.139-.22-3.607-.66-1.467-.441-2.53-.661-3.187-.661-.992 0-2.11.272-3.354.817-1.244.546-2.013.818-2.307.818a2.14 2.14 0 01-1.53-.597c-.42-.399-.63-.878-.63-1.437 0-.391.134-.807.4-1.247.265-.44.733-1.01 1.404-1.709l2.118-2.139c-2.335-.852-4.194-2.386-5.578-4.602-1.384-2.215-2.075-4.763-2.075-7.642 0-3.802 1.104-6.909 3.312-9.32 2.209-2.411 5.053-3.617 8.534-3.617 3.467 0 6.304 1.209 8.513 3.627 2.208 2.418 3.312 5.522 3.312 9.31 0 3.774-1.097 6.884-3.291 9.33-2.195 2.446-4.977 3.67-8.345 3.67a22.5 22.5 0 01-1.384-.043zm1.195-21.03c-1.803 0-3.218.727-4.246 2.18-1.027 1.455-1.54 3.474-1.54 6.06 0 2.586.516 4.613 1.55 6.08 1.035 1.468 2.447 2.202 4.236 2.202 1.803 0 3.222-.73 4.256-2.19 1.035-1.461 1.552-3.492 1.552-6.092 0-2.586-.514-4.605-1.541-6.06-1.028-1.453-2.45-2.18-4.267-2.18z\"/></svg>"
        },
        "$:/core/images/mono-line": {
            "title": "$:/core/images/mono-line",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-mono-line tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M60.437 84.523h.908c1.922 0 3.381.489 4.378 1.468.997.979 1.495 2.411 1.495 4.298 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388h-16.07c-2.456 0-4.2-.454-5.232-1.361-1.032-.908-1.548-2.43-1.548-4.565 0-2.065.516-3.542 1.548-4.432 1.032-.89 2.776-1.334 5.232-1.334h1.869l-2.19-6.247H20.983l-2.296 6.247h1.87c2.42 0 4.155.453 5.205 1.361 1.05.908 1.575 2.376 1.575 4.405 0 2.1-.525 3.612-1.575 4.538-1.05.925-2.785 1.388-5.206 1.388H6.781c-2.456 0-4.2-.463-5.233-1.388C.516 93.9 0 92.389 0 90.289c0-1.887.498-3.32 1.495-4.298.997-.979 2.456-1.468 4.378-1.468h.908l14.308-39.83h-4.271c-2.42 0-4.156-.462-5.206-1.387-1.05-.926-1.575-2.42-1.575-4.485 0-2.1.525-3.613 1.575-4.538 1.05-.926 2.785-1.388 5.206-1.388h20.021c3.168 0 5.392 1.708 6.674 5.125v.16l16.924 46.343zm-27.976-39.83L24.72 67.225h15.483l-7.742-22.53zM89.506 68.56v16.284h8.008c5.66 0 9.646-.623 11.96-1.869 2.313-1.245 3.47-3.328 3.47-6.246 0-2.955-1.103-5.055-3.31-6.3-2.207-1.246-6.069-1.869-11.586-1.869h-8.542zm27.229-5.926c3.88 1.423 6.727 3.372 8.542 5.846 1.815 2.474 2.723 5.633 2.723 9.477 0 3.239-.783 6.193-2.35 8.862-1.565 2.67-3.808 4.859-6.726 6.567-1.709.997-3.622 1.718-5.74 2.163-2.118.445-5.116.667-8.996.667h-27.87c-2.349 0-4.03-.463-5.045-1.388-1.014-.926-1.521-2.438-1.521-4.538 0-1.887.48-3.32 1.441-4.298.961-.979 2.367-1.468 4.218-1.468h.907v-39.83h-.907c-1.851 0-3.257-.498-4.218-1.494-.961-.997-1.441-2.456-1.441-4.378 0-2.065.516-3.568 1.548-4.512 1.032-.943 2.705-1.414 5.018-1.414h24.56c7.51 0 13.214 1.459 17.111 4.377 3.898 2.92 5.847 7.19 5.847 12.814 0 2.776-.597 5.223-1.789 7.341-1.192 2.118-2.963 3.853-5.312 5.206zm-27.23-18.26v13.455h7.208c4.378 0 7.466-.516 9.264-1.549 1.797-1.032 2.696-2.776 2.696-5.232 0-2.313-.81-4.004-2.43-5.072-1.619-1.068-4.244-1.602-7.874-1.602h-8.863z\"/></svg>"
        },
        "$:/core/images/new-button": {
            "title": "$:/core/images/new-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M56 72H8.007C3.591 72 0 68.418 0 64c0-4.41 3.585-8 8.007-8H56V8.007C56 3.591 59.582 0 64 0c4.41 0 8 3.585 8 8.007V56h47.993c4.416 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H72v47.993c0 4.416-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V72z\"/></svg>"
        },
        "$:/core/images/new-here-button": {
            "title": "$:/core/images/new-here-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-here-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.838 20.935l-3.572.938c-3.688.968-8.23 4.43-10.136 7.731L3.37 96.738c-1.905 3.3-.771 7.524 2.534 9.432l33.717 19.466c3.297 1.904 7.53.78 9.435-2.521l38.76-67.134c1.905-3.3 2.632-8.963 1.623-12.646L83.285 20.88c-1.009-3.68-4.821-5.884-8.513-4.915l-7.603 1.995.043.287c.524 3.394 2.053 7.498 4.18 11.55.418.163.829.36 1.23.59a8.864 8.864 0 014.438 8.169c.104.132.21.264.316.395l-.386.318a8.663 8.663 0 01-1.082 3.137c-2.42 4.192-7.816 5.608-12.051 3.163-4.12-2.379-5.624-7.534-3.476-11.671-2.177-4.394-3.788-8.874-4.543-12.964z\"/><path d=\"M69.554 44.76c-5.944-7.476-10.74-17.196-11.955-25.059-1.68-10.875 3.503-18.216 15.082-18.04 10.407.158 19.975 5.851 24.728 13.785 5.208 8.695 2.95 17.868-6.855 20.496l-2.037-7.601c4.232-1.134 4.999-4.248 2.24-8.853-3.37-5.626-10.465-9.848-18.146-9.965-6.392-.097-8.31 2.62-7.323 9.01.999 6.465 5.318 15.138 10.582 21.65l-.072.06c.559 1.553-4.17 6.44-5.938 4.888l-.005.004-.028-.034a1.323 1.323 0 01-.124-.135 2.618 2.618 0 01-.149-.205z\"/><rect width=\"16\" height=\"48\" x=\"96\" y=\"80\" rx=\"8\"/><rect width=\"48\" height=\"16\" x=\"80\" y=\"96\" rx=\"8\"/></g></svg>"
        },
        "$:/core/images/new-image-button": {
            "title": "$:/core/images/new-image-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-image-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.362 73.627l15.826-27.41a2.626 2.626 0 00-.962-3.59l-50.01-28.872a2.626 2.626 0 00-3.588.961L30.058 36.49l10.04-5.261c3.042-1.595 6.771.114 7.55 3.46l3.607 17.702 9.88.85a5.25 5.25 0 014.571 3.77c.034.115.1.344.199.671.165.553.353 1.172.562 1.843.595 1.914 1.23 3.85 1.872 5.678.207.588.412 1.156.614 1.701.625 1.685 1.209 3.114 1.725 4.207.255.54.485.977.726 1.427.214.212.547.425 1.011.622 1.141.482 2.784.74 4.657.758.864.008 1.71-.034 2.492-.11.448-.043.753-.085.871-.104.315-.053.625-.077.927-.076zM37.47 2.649A5.257 5.257 0 0144.649.725l63.645 36.746a5.257 5.257 0 011.923 7.178L73.47 108.294a5.257 5.257 0 01-7.177 1.923L2.649 73.47a5.257 5.257 0 01-1.924-7.177L37.471 2.649zm42.837 50.49a5.25 5.25 0 105.25-9.092 5.25 5.25 0 00-5.25 9.093zM96 112h-7.993c-4.419 0-8.007-3.582-8.007-8 0-4.41 3.585-8 8.007-8H96v-7.993C96 83.588 99.582 80 104 80c4.41 0 8 3.585 8 8.007V96h7.993c4.419 0 8.007 3.582 8.007 8 0 4.41-3.585 8-8.007 8H112v7.993c0 4.419-3.582 8.007-8 8.007-4.41 0-8-3.585-8-8.007V112zM33.347 51.791c7.428 7.948 9.01 10.69 7.449 13.394-1.56 2.703-13.838-2.328-16.094 1.58-2.256 3.908-.907 3.258-2.437 5.908l19.73 11.39s-5.605-8.255-4.235-10.628c2.515-4.356 8.77-1.256 10.365-4.019 2.414-4.181-5.103-9.639-14.778-17.625z\"/></svg>"
        },
        "$:/core/images/new-journal-button": {
            "title": "$:/core/images/new-journal-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-new-journal-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.545 112.818v11.818c0 1.306 1.086 2.364 2.425 2.364h6.06c1.34 0 2.425-1.058 2.425-2.364v-11.818h12.12c1.34 0 2.425-1.058 2.425-2.363v-5.91c0-1.305-1.085-2.363-2.424-2.363h-12.121V90.364c0-1.306-1.086-2.364-2.425-2.364h-6.06c-1.34 0-2.425 1.058-2.425 2.364v11.818h-12.12c-1.34 0-2.425 1.058-2.425 2.363v5.91c0 1.305 1.085 2.363 2.424 2.363h12.121zM60.016 4.965c-4.781-2.76-10.897-1.118-13.656 3.66L5.553 79.305A9.993 9.993 0 009.21 92.963l51.04 29.468c4.78 2.76 10.897 1.118 13.655-3.66l40.808-70.681a9.993 9.993 0 00-3.658-13.656L60.016 4.965zm-3.567 27.963a6 6 0 106-10.393 6 6 0 00-6 10.393zm31.697 17.928a6 6 0 106-10.392 6 6 0 00-6 10.392z\"/><text class=\"tc-fill-background\" font-family=\"Helvetica\" font-size=\"47.172\" font-weight=\"bold\" transform=\"rotate(30 25.742 95.82)\"><tspan x=\"42\" y=\"77.485\" text-anchor=\"middle\"><<now \"DD\">></tspan></text></g></svg>"
        },
        "$:/core/images/opacity": {
            "title": "$:/core/images/opacity",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-opacity tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M102.362 65a51.595 51.595 0 01-1.942 6H82.584a35.867 35.867 0 002.997-6h16.78zm.472-2c.423-1.961.734-3.963.929-6H87.656a35.78 35.78 0 01-1.368 6h16.546zm-3.249 10a51.847 51.847 0 01-3.135 6H75.812a36.205 36.205 0 005.432-6h18.341zm-4.416 8c-1.424 2.116-3 4.12-4.71 6H60.46a35.843 35.843 0 0012.874-6h21.834zm-7.513-34h16.107C101.247 20.627 79.033 0 52 0 23.281 0 0 23.281 0 52c0 25.228 17.965 46.26 41.8 51h20.4a51.66 51.66 0 0015.875-6H39v-2h42.25a52.257 52.257 0 007.288-6H39v-2h4.539C27.739 83.194 16 68.968 16 52c0-19.882 16.118-36 36-36 18.186 0 33.222 13.484 35.656 31zm.22 2h16.039a52.823 52.823 0 010 6H87.877a36.483 36.483 0 000-6z\"/><path d=\"M76 128c28.719 0 52-23.281 52-52s-23.281-52-52-52-52 23.281-52 52 23.281 52 52 52zm0-16c19.882 0 36-16.118 36-36S95.882 40 76 40 40 56.118 40 76s16.118 36 36 36z\"/><path d=\"M37 58h53v4H37v-4zm3-8h53v4H40v-4zm0-8h53v4H40v-4zm-8 24h53v4H32v-4zm-2 8h53v4H30v-4zm-3 8h53v4H27v-4z\"/></g></svg>"
        },
        "$:/core/images/open-window": {
            "title": "$:/core/images/open-window",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-open-window tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M16 112h88.994c3.87 0 7.006 3.59 7.006 8 0 4.418-3.142 8-7.006 8H7.006C3.136 128 0 124.41 0 120a9.321 9.321 0 010-.01V24.01C0 19.586 3.59 16 8 16c4.418 0 8 3.584 8 8.01V112z\"/><path d=\"M96 43.196V56a8 8 0 1016 0V24c0-4.41-3.585-8-8.007-8H72.007C67.588 16 64 19.582 64 24c0 4.41 3.585 8 8.007 8H84.57l-36.3 36.299a8 8 0 00-.001 11.316c3.117 3.117 8.19 3.123 11.316-.003L96 43.196zM32 7.999C32 3.581 35.588 0 40 0h80c4.419 0 8 3.588 8 8v80c0 4.419-3.588 8-8 8H40c-4.419 0-8-3.588-8-8V8z\"/></g></svg>"
        },
        "$:/core/images/options-button": {
            "title": "$:/core/images/options-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-options-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M110.488 76a47.712 47.712 0 01-5.134 12.384l6.724 6.724c3.123 3.123 3.132 8.192.011 11.313l-5.668 5.668c-3.12 3.12-8.186 3.117-11.313-.01l-6.724-6.725c-3.82 2.258-7.98 4-12.384 5.134v9.505c0 4.417-3.578 8.007-7.992 8.007h-8.016C55.58 128 52 124.415 52 119.993v-9.505a47.712 47.712 0 01-12.384-5.134l-6.724 6.725c-3.123 3.122-8.192 3.131-11.313.01l-5.668-5.668c-3.12-3.12-3.116-8.186.01-11.313l6.725-6.724c-2.257-3.82-4-7.98-5.134-12.384H8.007C3.591 76 0 72.422 0 68.01v-8.017C0 55.58 3.585 52 8.007 52h9.505a47.712 47.712 0 015.134-12.383l-6.724-6.725c-3.123-3.122-3.132-8.191-.011-11.312l5.668-5.669c3.12-3.12 8.186-3.116 11.313.01l6.724 6.725c3.82-2.257 7.98-4 12.384-5.134V8.007C52 3.591 55.578 0 59.992 0h8.016C72.42 0 76 3.585 76 8.007v9.505a47.712 47.712 0 0112.384 5.134l6.724-6.724c3.123-3.123 8.192-3.132 11.313-.01l5.668 5.668c3.12 3.12 3.116 8.186-.01 11.312l-6.725 6.725c2.257 3.82 4 7.979 5.134 12.383h9.505c4.416 0 8.007 3.578 8.007 7.992v8.017c0 4.411-3.585 7.991-8.007 7.991h-9.505zM64 96c17.673 0 32-14.327 32-32 0-17.673-14.327-32-32-32-17.673 0-32 14.327-32 32 0 17.673 14.327 32 32 32z\"/></svg>"
        },
        "$:/core/images/paint": {
            "title": "$:/core/images/paint",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-paint tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M83.527 76.19C90.43 69.287 91.892 59 87.91 50.665l37.903-37.902c2.919-2.92 2.913-7.659 0-10.572a7.474 7.474 0 00-10.572 0L77.338 40.093c-8.335-3.982-18.622-2.521-25.526 4.383l31.715 31.715zm-2.643 2.644L49.169 47.119S8.506 81.243 0 80.282c0 0 3.782 5.592 6.827 8.039 14.024-5.69 37.326-24.6 37.326-24.6l.661.66S19.45 90.222 9.18 92.047c1.222 1.44 4.354 4.053 6.247 5.776 5.417-1.488 34.733-28.57 34.733-28.57l.661.66-32.407 31.022 5.285 5.286L56.106 75.2l.662.66s-27.864 30.536-28.684 32.432c0 0 6.032 6.853 7.569 7.824.702-2.836 27.884-33.485 27.884-33.485l.661.66s-20.597 23.755-24.964 36.732c3.21 3.549 7.5 5.137 10.926 6.298-2.19-11.817 30.724-47.487 30.724-47.487z\"/></svg>"
        },
        "$:/core/images/palette": {
            "title": "$:/core/images/palette",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-palette tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.247 39.182a93.52 93.52 0 00-16.228-1.4C28.662 37.781 0 57.131 0 81.002c0 9.642 4.676 18.546 12.58 25.735C23.504 91.19 26.34 72.395 36.89 63.562c15.183-12.713 26.538-7.828 26.538-7.828l16.82-16.552zm26.535 9.655c13.049 7.913 21.257 19.392 21.257 32.166 0 9.35.519 17.411-11.874 25.08-10.797 6.681-3.824-6.536-11.844-10.898s-19.946 1.308-18.213 7.906c3.2 12.181 19.422 11.455 6.314 16.658-13.107 5.202-18.202 4.476-28.403 4.476-7.821 0-15.315-.947-22.243-2.68 9.844-4.197 27.88-12.539 33.354-19.456C82.788 92.409 87.37 80 83.324 72.484c-.194-.359 11.215-11.668 23.458-23.647zM1.134 123.867l-.66.002c33.479-14.94 22.161-64.226 58.818-64.226.317 1.418.644 2.944 1.062 4.494-25.907-4.166-23.567 48.031-59.22 59.73zm.713-.007c38.872-.506 78.152-22.347 78.152-44.813-9.27 0-14.073-3.48-16.816-7.942-16.597-7.003-30.365 45.715-61.336 52.755zm65.351-64.008c-4.45 4.115 4.886 16.433 11.318 11.318l45.27-45.27c11.317-11.318 0-22.635-11.318-11.318-11.317 11.318-33.518 34.405-45.27 45.27z\"/></svg>"
        },
        "$:/core/images/permalink-button": {
            "title": "$:/core/images/permalink-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permalink-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M80.483 48l-7.387 32h-25.58l7.388-32h25.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L100.598 32h3.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-7.096l-7.387 32H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H85.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L69.402 96h-25.58L38.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L27.402 96h-3.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h7.096l7.387-32H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h18.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L58.598 32h25.58z\"/></svg>"
        },
        "$:/core/images/permaview-button": {
            "title": "$:/core/images/permaview-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-permaview-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M81.483 48l-1.846 8h-5.58l1.847-8h5.58zm3.694-16l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L101.598 32h2.403c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8h-6.096l-1.847 8h7.944c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H92.364l-1.846 8H104c4.41 0 7.999 3.582 7.999 8 0 4.41-3.581 8-8 8H86.824l-5.624 24.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L70.402 96h-5.58L59.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L48.402 96h-5.58L37.2 120.358c-.993 4.303-5.29 6.996-9.596 6.002-4.296-.992-6.988-5.293-5.994-9.602L26.402 96h-2.403C19.59 96 16 92.418 16 88c0-4.41 3.581-8 8-8h6.096l1.847-8h-7.944C19.59 72 16 68.418 16 64c0-4.41 3.581-8 8-8h11.637l1.846-8H24C19.59 48 16 44.418 16 40c0-4.41 3.581-8 8-8h17.177l5.624-24.358c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L57.598 32h5.58L68.8 7.642c.993-4.303 5.29-6.996 9.596-6.002 4.296.992 6.988 5.293 5.994 9.602L79.598 32h5.58zM53.904 48l-1.847 8h5.58l1.846-8h-5.579zm22.039 24l-1.847 8h-5.58l1.847-8h5.58zm-27.58 0l-1.846 8h5.579l1.847-8h-5.58z\"/></svg>"
        },
        "$:/core/images/picture": {
            "title": "$:/core/images/picture",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-picture tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M112 68.233v-48.23A4.001 4.001 0 00107.997 16H20.003A4.001 4.001 0 0016 20.003v38.31l9.241-14.593c2.8-4.422 9.023-5.008 12.6-1.186l18.247 20.613 13.687-6.407a8 8 0 018.903 1.492 264.97 264.97 0 002.92 2.739 249.44 249.44 0 006.798 6.066 166.5 166.5 0 002.106 1.778c2.108 1.747 3.967 3.188 5.482 4.237.748.518 1.383.92 2.044 1.33.444.117 1.046.144 1.809.05 1.873-.233 4.238-1.144 6.723-2.547a36.016 36.016 0 003.205-2.044c.558-.4.93-.686 1.07-.802.376-.31.765-.577 1.165-.806zM0 8.007A8.01 8.01 0 018.007 0h111.986A8.01 8.01 0 01128 8.007v111.986a8.01 8.01 0 01-8.007 8.007H8.007A8.01 8.01 0 010 119.993V8.007zM95 42a8 8 0 100-16 8 8 0 000 16zM32 76c15.859 4.83 20.035 7.244 20.035 12S32 95.471 32 102.347c0 6.876 1.285 4.99 1.285 9.653H68s-13.685-6.625-13.685-10.8c0-7.665 10.615-8.34 10.615-13.2 0-7.357-14.078-8.833-32.93-12z\"/></svg>"
        },
        "$:/core/images/plugin-generic-language": {
            "title": "$:/core/images/plugin-generic-language",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M61.207 68.137c-4.324 2.795-6.999 6.656-6.999 10.921 0 7.906 9.19 14.424 21.042 15.336 2.162 3.902 8.598 6.785 16.318 7.01-5.126-1.125-9.117-3.742-10.62-7.01C92.805 93.487 102 86.967 102 79.059c0-8.53-10.699-15.445-23.896-15.445-6.599 0-12.572 1.729-16.897 4.524zm12.794-14.158c-4.324 2.795-10.298 4.524-16.897 4.524-2.619 0-5.14-.272-7.497-.775-3.312 2.25-8.383 3.69-14.067 3.69l-.255-.002c4.119-.892 7.511-2.747 9.478-5.13-6.925-2.704-11.555-7.617-11.555-13.228 0-8.53 10.699-15.445 23.896-15.445C70.301 27.613 81 34.528 81 43.058c0 4.265-2.675 8.126-6.999 10.921zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
        },
        "$:/core/images/plugin-generic-plugin": {
            "title": "$:/core/images/plugin-generic-plugin",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M40.397 76.446V95.34h14.12l-.001-.005a6.912 6.912 0 005.364-11.593l.046-.023a6.912 6.912 0 119.979.526l.086.055a6.914 6.914 0 004.408 10.948l-.023.092h21.32V75.568l-.15.038a6.912 6.912 0 00-11.593-5.364l-.022-.046a6.912 6.912 0 11.526-9.979l.055-.086a6.914 6.914 0 0010.948-4.408c.079.018.158.038.236.059v-15.74h-21.32l.023-.094a6.914 6.914 0 01-4.408-10.947 10.23 10.23 0 00-.086-.055 6.912 6.912 0 10-9.979-.526l-.046.023a6.912 6.912 0 01-5.364 11.593l.001.005h-14.12v12.847A6.912 6.912 0 0129.5 59.843l-.054.086a6.912 6.912 0 10-.526 9.979l.023.046a6.912 6.912 0 0111.455 6.492zM64 0l54.56 32v64L64 128 9.44 96V32L64 0z\"/></svg>"
        },
        "$:/core/images/plugin-generic-theme": {
            "title": "$:/core/images/plugin-generic-theme",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M29.408 91.472L51.469 69.41l-.004-.005a2.22 2.22 0 01.004-3.146c.87-.87 2.281-.872 3.147-.005l9.465 9.464a2.22 2.22 0 01-.005 3.147c-.87.87-2.28.871-3.147.005l-.005-.005-22.061 22.062a6.686 6.686 0 11-9.455-9.455zM60.802 66.38c-2.436-2.704-4.465-5.091-5.817-6.869-6.855-9.014-10.313-4.268-14.226 0-3.913 4.268 1.03 7.726-2.683 10.741-3.713 3.015-3.484 4.06-9.752-1.455-6.267-5.516-6.7-7.034-3.823-10.181 2.877-3.147 5.281 1.808 11.159-3.785 5.877-5.593.94-10.55.94-10.55s12.237-25.014 28.588-23.167c16.351 1.848-6.186-2.392-11.792 17.226-2.4 8.4.447 6.42 4.998 9.968 1.394 1.086 6.03 4.401 11.794 8.685l20.677-20.676 1.615-4.766 7.84-4.689 3.151 3.152-4.688 7.84-4.766 1.615-20.224 20.223c12.663 9.547 28.312 22.146 28.312 26.709 0 7.217-3.071 11.526-9.535 9.164-4.693-1.715-18.768-15.192-28.753-25.897l-2.893 2.893-3.151-3.152 3.029-3.029zM63.953 0l54.56 32v64l-54.56 32-54.56-32V32l54.56-32z\"/></svg>"
        },
        "$:/core/images/preview-closed": {
            "title": "$:/core/images/preview-closed",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-closed tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M.088 64a7.144 7.144 0 001.378 5.458C16.246 88.818 39.17 100.414 64 100.414c24.83 0 47.753-11.596 62.534-30.956A7.144 7.144 0 00127.912 64C110.582 78.416 88.304 87.086 64 87.086 39.696 87.086 17.418 78.416.088 64z\"/><rect width=\"4\" height=\"16\" x=\"62\" y=\"96\" rx=\"4\"/><rect width=\"4\" height=\"16\" x=\"78\" y=\"93\" rx=\"4\" transform=\"rotate(-5 80 101)\"/><rect width=\"4\" height=\"16\" x=\"46\" y=\"93\" rx=\"4\" transform=\"rotate(5 48 101)\"/><rect width=\"4\" height=\"16\" x=\"30\" y=\"88\" rx=\"4\" transform=\"rotate(10 32 96)\"/><rect width=\"4\" height=\"16\" x=\"94\" y=\"88\" rx=\"4\" transform=\"rotate(-10 96 96)\"/><rect width=\"4\" height=\"16\" x=\"110\" y=\"80\" rx=\"4\" transform=\"rotate(-20 112 88)\"/><rect width=\"4\" height=\"16\" x=\"14\" y=\"80\" rx=\"4\" transform=\"rotate(20 16 88)\"/></g></svg>"
        },
        "$:/core/images/preview-open": {
            "title": "$:/core/images/preview-open",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-preview-open tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M64.11 99.588c-24.83 0-47.754-11.596-62.534-30.957a7.148 7.148 0 010-8.675C16.356 40.596 39.28 29 64.11 29c24.83 0 47.753 11.596 62.534 30.956a7.148 7.148 0 010 8.675c-14.78 19.36-37.703 30.957-62.534 30.957zm46.104-32.007c1.44-1.524 1.44-3.638 0-5.162C99.326 50.9 82.439 44 64.147 44S28.968 50.9 18.08 62.42c-1.44 1.523-1.44 3.637 0 5.16C28.968 79.1 45.855 86 64.147 86s35.179-6.9 46.067-18.42z\"/><path d=\"M63.5 88C76.479 88 87 77.479 87 64.5S76.479 41 63.5 41 40 51.521 40 64.5 50.521 88 63.5 88z\"/></g></svg>"
        },
        "$:/core/images/print-button": {
            "title": "$:/core/images/print-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-print-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M112 71V30.5h-.032c-.035-2-.816-3.99-2.343-5.516L86.998 2.357A7.978 7.978 0 0081 .02V0H24a8 8 0 00-8 8v63h8V8h57v14.5c0 4.422 3.582 8 8 8h15V71h8z\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"36\" rx=\"4\"/><rect width=\"64\" height=\"8\" x=\"32\" y=\"52\" rx=\"4\"/><rect width=\"40\" height=\"8\" x=\"32\" y=\"20\" rx=\"4\"/><path d=\"M0 80.005C0 71.165 7.156 64 16 64h96c8.836 0 16 7.155 16 16.005v31.99c0 8.84-7.156 16.005-16 16.005H16c-8.836 0-16-7.155-16-16.005v-31.99zM104 96a8 8 0 100-16 8 8 0 000 16z\"/></g></svg>"
        },
        "$:/core/images/quote": {
            "title": "$:/core/images/quote",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-quote tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M51.219 117.713V62.199H27.427c0-8.891 1.683-16.401 5.047-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.36 3.184-20.728 6.669-6.368 3.484-11.835 7.87-16.401 13.157C9.524 27.113 5.98 33.241 3.456 40.21.933 47.18-.21 54.63.03 62.56v55.153H51.22zm76.781 0V62.199h-23.791c0-8.891 1.682-16.401 5.046-22.53 3.365-6.127 9.613-10.754 18.745-13.878V2c-7.45.961-14.359 3.184-20.727 6.669-6.369 3.484-11.836 7.87-16.402 13.157-4.566 5.287-8.11 11.415-10.634 18.384-2.523 6.97-3.665 14.42-3.424 22.35v55.153H128z\"/></svg>"
        },
        "$:/core/images/refresh-button": {
            "title": "$:/core/images/refresh-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-refresh-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M106.369 39.433c10.16 20.879 6.57 46.764-10.771 64.106-21.87 21.87-57.327 21.87-79.196 0-21.87-21.87-21.87-57.326 0-79.196a8 8 0 1111.314 11.314c-15.621 15.62-15.621 40.947 0 56.568 15.62 15.621 40.947 15.621 56.568 0C97.72 78.79 99.6 58.175 89.924 42.73l-6.44 12.264a8 8 0 11-14.166-7.437L84.435 18.76a8 8 0 0110.838-3.345l28.873 15.345a8 8 0 11-7.51 14.129l-10.267-5.457zm-8.222-12.368c-.167-.19-.336-.38-.506-.57l.96-.296-.454.866z\"/></svg>"
        },
        "$:/core/images/right-arrow": {
            "title": "$:/core/images/right-arrow",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-right-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M99.069 64.173c0 2.027-.77 4.054-2.316 5.6l-55.98 55.98a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l50.382-50.382-50.382-50.382a7.92 7.92 0 010-11.195c3.086-3.085 8.104-3.092 11.196 0l55.98 55.98a7.892 7.892 0 012.316 5.595z\"/></svg>"
        },
        "$:/core/images/rotate-left": {
            "title": "$:/core/images/rotate-left",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-rotate-left tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"32\" height=\"80\" rx=\"8\"/><rect width=\"80\" height=\"32\" x=\"48\" y=\"96\" rx=\"8\"/><path d=\"M61.32 36.65c19.743 2.45 35.023 19.287 35.023 39.693a4 4 0 01-8 0c0-15.663-11.254-28.698-26.117-31.46l3.916 3.916a4 4 0 11-5.657 5.657L49.172 43.142a4 4 0 010-5.657l11.313-11.313a4 4 0 115.657 5.656l-4.821 4.822z\"/></g></svg>"
        },
        "$:/core/images/save-button": {
            "title": "$:/core/images/save-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-save-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M120.783 34.33c4.641 8.862 7.266 18.948 7.266 29.646 0 35.347-28.653 64-64 64-35.346 0-64-28.653-64-64 0-35.346 28.654-64 64-64 18.808 0 35.72 8.113 47.43 21.03l2.68-2.68c3.13-3.13 8.197-3.132 11.321-.008 3.118 3.118 3.121 8.193-.007 11.32l-4.69 4.691zm-12.058 12.058a47.876 47.876 0 013.324 17.588c0 26.51-21.49 48-48 48s-48-21.49-48-48 21.49-48 48-48c14.39 0 27.3 6.332 36.098 16.362L58.941 73.544 41.976 56.578c-3.127-3.127-8.201-3.123-11.32-.005-3.123 3.124-3.119 8.194.006 11.319l22.617 22.617a7.992 7.992 0 005.659 2.347c2.05 0 4.101-.783 5.667-2.349l44.12-44.12z\"/></svg>"
        },
        "$:/core/images/size": {
            "title": "$:/core/images/size",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-size tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M92.343 26l-9.171 9.172a4 4 0 105.656 5.656l16-16a4 4 0 000-5.656l-16-16a4 4 0 10-5.656 5.656L92.343 18H22a4 4 0 00-4 4v70.343l-9.172-9.171a4 4 0 10-5.656 5.656l16 16a4 4 0 005.656 0l16-16a4 4 0 10-5.656-5.656L26 92.343V22l-4 4h70.343zM112 52v64l4-4H52a4 4 0 100 8h64a4 4 0 004-4V52a4 4 0 10-8 0z\"/></svg>"
        },
        "$:/core/images/spiral": {
            "title": "$:/core/images/spiral",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-spiral tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M64.534 68.348c3.39 0 6.097-2.62 6.476-5.968l-4.755-.538 4.75.583c.377-3.07-1.194-6.054-3.89-7.78-2.757-1.773-6.34-2.01-9.566-.7-3.46 1.403-6.14 4.392-7.35 8.148l-.01.026c-1.3 4.08-.72 8.64 1.58 12.52 2.5 4.2 6.77 7.2 11.76 8.27 5.37 1.15 11.11-.05 15.83-3.31 5.04-3.51 8.46-9.02 9.45-15.3 1.05-6.7-.72-13.63-4.92-19.19l.02.02c-4.42-5.93-11.2-9.82-18.78-10.78-7.96-1.01-16.13 1.31-22.59 6.43-6.81 5.39-11.18 13.41-12.11 22.26-.98 9.27 1.87 18.65 7.93 26.02 6.32 7.69 15.6 12.56 25.74 13.48 10.54.96 21.15-2.42 29.45-9.4l.01-.01c8.58-7.25 13.94-17.78 14.86-29.21.94-11.84-2.96-23.69-10.86-32.9-8.19-9.5-19.95-15.36-32.69-16.27-13.16-.94-26.24 3.49-36.34 12.34l.01-.01c-10.41 9.08-16.78 22.1-17.68 36.15-.93 14.44 4.03 28.77 13.79 39.78 10.03 11.32 24.28 18.2 39.6 19.09 15.73.92 31.31-4.56 43.24-15.234 12.23-10.954 19.61-26.44 20.5-43.074a4.785 4.785 0 00-4.52-5.03 4.778 4.778 0 00-5.03 4.52c-.75 14.1-7 27.2-17.33 36.45-10.03 8.98-23.11 13.58-36.3 12.81-12.79-.75-24.67-6.48-33-15.89-8.07-9.11-12.17-20.94-11.41-32.827.74-11.52 5.942-22.15 14.43-29.54l.01-.01c8.18-7.17 18.74-10.75 29.35-9.998 10.21.726 19.6 5.41 26.11 12.96 6.24 7.273 9.32 16.61 8.573 25.894-.718 8.9-4.88 17.064-11.504 22.66l.01-.007c-6.36 5.342-14.44 7.92-22.425 7.19-7.604-.68-14.52-4.314-19.21-10.027-4.44-5.4-6.517-12.23-5.806-18.94.67-6.3 3.76-11.977 8.54-15.766 4.46-3.54 10.05-5.128 15.44-4.44 5.03.63 9.46 3.18 12.32 7.01l.02.024c2.65 3.5 3.75 7.814 3.1 11.92-.59 3.71-2.58 6.925-5.45 8.924-2.56 1.767-5.61 2.403-8.38 1.81-2.42-.516-4.42-1.92-5.53-3.79-.93-1.56-1.15-3.3-.69-4.75l-4.56-1.446L59.325 65c.36-1.12 1.068-1.905 1.84-2.22.25-.103.48-.14.668-.13.06.006.11.015.14.025.01 0 .01 0-.01-.01a1.047 1.047 0 01-.264-.332c-.15-.29-.23-.678-.18-1.11l-.005.04c.15-1.332 1.38-2.523 3.035-2.523-2.65 0-4.79 2.144-4.79 4.787s2.14 4.785 4.78 4.785z\"/></svg>"
        },
        "$:/core/images/stamp": {
            "title": "$:/core/images/stamp",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-stamp tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M49.733 64H16.01C11.584 64 8 67.583 8 72.003V97h112V72.003A8 8 0 00111.99 64H78.267A22.813 22.813 0 0175.5 53.077c0-6.475 2.687-12.324 7.009-16.497A22.818 22.818 0 0087 22.952C87 10.276 76.703 0 64 0S41 10.276 41 22.952c0 5.103 1.669 9.817 4.491 13.628 4.322 4.173 7.009 10.022 7.009 16.497 0 3.954-1.002 7.675-2.767 10.923zM8 104h112v8H8v-8z\"/></svg>"
        },
        "$:/core/images/star-filled": {
            "title": "$:/core/images/star-filled",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-star-filled tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M61.836 96.823l37.327 27.287c2.72 1.99 6.379-.69 5.343-3.912L90.29 75.988l-1.26 3.91 37.285-27.345c2.718-1.993 1.32-6.327-2.041-6.33l-46.113-.036 3.3 2.416L67.176 4.416c-1.04-3.221-5.563-3.221-6.604 0L46.29 48.603l3.3-2.416-46.113.036c-3.362.003-4.759 4.337-2.04 6.33L38.72 79.898l-1.26-3.91-14.216 44.21c-1.036 3.223 2.622 5.901 5.343 3.912l37.326-27.287h-4.078z\"/></svg>"
        },
        "$:/core/images/storyview-classic": {
            "title": "$:/core/images/storyview-classic",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-classic tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm0 48C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0 32C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
        },
        "$:/core/images/storyview-pop": {
            "title": "$:/core/images/storyview-pop",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-pop tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16C19.581 16 16 19.578 16 23.992v16.016C16 44.422 19.588 48 24 48h80c4.419 0 8-3.578 8-7.992V23.992c0-4.414-3.588-7.992-8-7.992H24zm-7.99 40C11.587 56 8 59.578 8 63.992v16.016C8 84.422 11.584 88 16.01 88h95.98c4.424 0 8.01-3.578 8.01-7.992V63.992c0-4.414-3.584-7.992-8.01-7.992H16.01zM24 96C19.581 96 16 99.59 16 104c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24zm0-32C19.581 64 16 67.59 16 72c0 4.418 3.588 8 8 8h80c4.419 0 8-3.59 8-8 0-4.418-3.588-8-8-8H24z\"/></svg>"
        },
        "$:/core/images/storyview-zoomin": {
            "title": "$:/core/images/storyview-zoomin",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-storyview-zoomin tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M8.007 0A8.01 8.01 0 000 8.007v111.986A8.01 8.01 0 008.007 128h111.986a8.01 8.01 0 008.007-8.007V8.007A8.01 8.01 0 00119.993 0H8.007zm15.992 16A8 8 0 0016 24.009V71.99C16 76.414 19.588 80 24 80h80a8 8 0 008-8.009V24.01c0-4.423-3.588-8.009-8-8.009H24z\"/></svg>"
        },
        "$:/core/images/strikethrough": {
            "title": "$:/core/images/strikethrough",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-strikethrough tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M92.794 38.726h15.422c-.229-6.74-1.514-12.538-3.856-17.393-2.342-4.855-5.54-8.881-9.596-12.08-4.055-3.199-8.767-5.54-14.136-7.025C75.258.743 69.433 0 63.15 0a62.76 62.76 0 00-16.364 2.142C41.474 3.57 36.733 5.74 32.564 8.653c-4.17 2.913-7.511 6.626-10.025 11.138-2.513 4.512-3.77 9.853-3.77 16.022 0 5.597 1.115 10.252 3.342 13.965 2.228 3.712 5.198 6.74 8.91 9.081 3.713 2.342 7.911 4.227 12.595 5.655a194.641 194.641 0 0014.308 3.77c4.855 1.085 9.624 2.142 14.308 3.17 4.683 1.028 8.881 2.37 12.594 4.027 3.713 1.656 6.683 3.798 8.91 6.425 2.228 2.628 3.342 6.055 3.342 10.281 0 4.456-.914 8.111-2.742 10.967a19.953 19.953 0 01-7.197 6.768c-2.97 1.657-6.311 2.828-10.024 3.513a60.771 60.771 0 01-11.052 1.028c-4.57 0-9.025-.571-13.366-1.713-4.34-1.143-8.139-2.913-11.394-5.312-3.256-2.4-5.884-5.455-7.883-9.168-1.999-3.712-2.998-8.139-2.998-13.28H15c0 7.426 1.342 13.852 4.027 19.278 2.684 5.426 6.34 9.881 10.966 13.365 4.627 3.484 9.996 6.083 16.107 7.797 6.112 1.713 12.595 2.57 19.449 2.57 5.597 0 11.223-.657 16.878-1.97 5.655-1.314 10.767-3.428 15.336-6.34 4.57-2.914 8.31-6.683 11.224-11.31 2.913-4.626 4.37-10.195 4.37-16.707 0-6.054-1.115-11.08-3.342-15.079-2.228-3.998-5.198-7.31-8.91-9.938-3.713-2.627-7.911-4.712-12.595-6.254a170.83 170.83 0 00-14.308-4.027 549.669 549.669 0 00-14.308-3.17c-4.683-.971-8.881-2.2-12.594-3.684-3.713-1.485-6.683-3.399-8.91-5.74-2.228-2.342-3.342-5.398-3.342-9.168 0-3.998.771-7.34 2.313-10.024 1.543-2.685 3.599-4.826 6.17-6.426 2.57-1.599 5.51-2.741 8.824-3.427a49.767 49.767 0 0110.11-1.028c8.453 0 15.393 1.97 20.819 5.912 5.426 3.94 8.596 10.31 9.51 19.106z\"/><path d=\"M5 54h118v16H5z\"/></g></svg>"
        },
        "$:/core/images/subscript": {
            "title": "$:/core/images/subscript",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-subscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 128.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
        },
        "$:/core/images/superscript": {
            "title": "$:/core/images/superscript",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-superscript tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M2.272 16h19.91l21.649 33.675L66.414 16h18.708L53.585 61.969l33.809 49.443H67.082L43.296 74.93l-24.187 36.48H0L33.808 61.97 2.272 16zM127.91 63.412H85.328c.059-5.168 1.306-9.681 3.741-13.542 2.435-3.86 5.761-7.216 9.978-10.066a112.388 112.388 0 016.325-4.321 50.09 50.09 0 006.058-4.499c1.841-1.603 3.356-3.34 4.543-5.211 1.188-1.871 1.812-4.024 1.871-6.46 0-1.128-.133-2.33-.4-3.607a9.545 9.545 0 00-1.56-3.564c-.772-1.098-1.84-2.019-3.207-2.761-1.366-.743-3.148-1.114-5.345-1.114-2.02 0-3.697.4-5.033 1.203-1.337.801-2.406 1.9-3.208 3.296-.801 1.396-1.395 3.044-1.781 4.944-.386 1.9-.609 3.95-.668 6.147H86.486c0-3.445.46-6.637 1.38-9.577.921-2.94 2.302-5.478 4.143-7.617 1.841-2.138 4.083-3.815 6.726-5.033 2.643-1.217 5.716-1.826 9.22-1.826 3.802 0 6.979.623 9.533 1.87 2.554 1.248 4.617 2.822 6.191 4.722 1.574 1.9 2.688 3.965 3.341 6.192.653 2.227.98 4.35.98 6.37 0 2.494-.386 4.75-1.158 6.77a21.803 21.803 0 01-3.118 5.568 31.516 31.516 0 01-4.454 4.677 66.788 66.788 0 01-5.167 4.009 139.198 139.198 0 01-5.346 3.563 79.237 79.237 0 00-4.944 3.386c-1.514 1.128-2.836 2.3-3.964 3.518-1.129 1.218-1.9 2.51-2.317 3.876h30.379v9.087z\"/></svg>"
        },
        "$:/core/images/tag-button": {
            "title": "$:/core/images/tag-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tag-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M18.164 47.66l.004 4.105c.003 3.823 2.19 9.097 4.885 11.792l61.85 61.85c2.697 2.697 7.068 2.69 9.769-.01L125.767 94.3a6.903 6.903 0 00.01-9.77L63.928 22.683c-2.697-2.697-7.976-4.88-11.796-4.881l-27.076-.007a6.902 6.902 0 00-6.91 6.91l.008 9.96.287.033c3.73.411 8.489-.044 13.365-1.153a9.702 9.702 0 0111.14-3.662l.291-.13.128.285a9.7 9.7 0 013.3 2.17c3.796 3.796 3.801 9.945.012 13.734-3.618 3.618-9.386 3.777-13.204.482-5.365 1.122-10.674 1.596-15.309 1.237z\"/><path d=\"M47.633 39.532l.023.051c-9.689 4.356-21.584 6.799-30.396 5.828C5.273 44.089-1.028 36.43 2.443 24.078 5.562 12.976 14.3 4.361 24.047 1.548c10.68-3.083 19.749 1.968 19.749 13.225h-8.623c0-4.859-3.078-6.573-8.735-4.94-6.91 1.995-13.392 8.383-15.694 16.577-1.915 6.818.417 9.653 7.46 10.43 7.126.785 17.531-1.352 25.917-5.121l.027.06.036-.017c1.76-.758 6.266 6.549 3.524 7.74a2.8 2.8 0 01-.075.03z\"/></g></svg>"
        },
        "$:/core/images/theme-button": {
            "title": "$:/core/images/theme-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-theme-button tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M55.854 66.945a122.626 122.626 0 01-3.9-4.819c-11.064-14.548-16.645-6.888-22.96 0-6.315 6.888 1.664 12.47-4.33 17.335-5.993 4.866-5.623 6.552-15.737-2.35-10.115-8.9-10.815-11.351-6.172-16.43 4.644-5.08 8.524 2.918 18.01-6.108 9.485-9.026 1.517-17.026 1.517-17.026S42.03-2.824 68.42.157c26.39 2.982-9.984-3.86-19.031 27.801-3.874 13.556.72 10.362 8.066 16.087 1.707 1.33 6.428 4.732 12.671 9.318-6.129 5.879-11.157 10.669-14.273 13.582zm11.641 12.947c16.013 17.036 37.742 37.726 45.117 40.42 10.432 3.813 15.388-3.141 15.388-14.79 0-7.151-23.83-26.542-43.924-41.769-7.408 7.156-13.376 12.953-16.58 16.139z\"/><path d=\"M11.069 109.828L46.31 74.587a3.56 3.56 0 115.037-5.032l15.098 15.098a3.56 3.56 0 11-5.032 5.037l-35.24 35.241c-4.171 4.17-10.933 4.17-15.104 0-4.17-4.17-4.17-10.933 0-15.103zM124.344 6.622l5.034 5.034-7.49 12.524-7.613 2.58L61.413 79.62l-5.034-5.034 52.861-52.862 2.58-7.614 12.524-7.49z\"/></g></svg>"
        },
        "$:/core/images/timestamp-off": {
            "title": "$:/core/images/timestamp-off",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-off tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M58.25 35.88c-18.777 0-33.998 15.224-33.998 33.998 0 18.773 15.22 34.002 33.998 34.002 18.784 0 34.002-15.23 34.002-34.002 0-18.774-15.218-33.998-34.002-33.998zm-3.03 50.123H44.196v-34H55.22v34zm16.976 0H61.17v-34h11.025v34z\"/></g></svg>"
        },
        "$:/core/images/timestamp-on": {
            "title": "$:/core/images/timestamp-on",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-timestamp-on tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><path d=\"M58.25 11C26.08 11 0 37.082 0 69.25s26.08 58.25 58.25 58.25c32.175 0 58.25-26.082 58.25-58.25S90.425 11 58.25 11zm0 100.5C34.914 111.5 16 92.586 16 69.25 16 45.92 34.914 27 58.25 27s42.25 18.92 42.25 42.25c0 23.336-18.914 42.25-42.25 42.25zM49.704 10a5 5 0 010-10H66.69a5 5 0 015 5c.006 2.757-2.238 5-5 5H49.705z\"/><path d=\"M13.41 27.178a5.005 5.005 0 01-7.045-.613 5.008 5.008 0 01.616-7.047l9.95-8.348a5 5 0 016.429 7.661l-9.95 8.348zm89.573 0a5.005 5.005 0 007.045-.613 5.008 5.008 0 00-.616-7.047l-9.95-8.348a5 5 0 00-6.428 7.661l9.95 8.348zM65.097 71.072c0 3.826-3.09 6.928-6.897 6.928-3.804.006-6.9-3.102-6.903-6.928 0 0 4.76-39.072 6.903-39.072s6.897 39.072 6.897 39.072z\"/></g></svg>"
        },
        "$:/core/images/tip": {
            "title": "$:/core/images/tip",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-tip tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 128.242c35.346 0 64-28.654 64-64 0-35.346-28.654-64-64-64-35.346 0-64 28.654-64 64 0 35.346 28.654 64 64 64zm11.936-36.789c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349C54.33 94.05 58.824 95.82 64 95.82c5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.456c-.624 4.129-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zm0 4.492c-.624 4.13-5.73 7.349-11.936 7.349-6.206 0-11.312-3.22-11.936-7.349 2.266 2.597 6.76 4.366 11.936 4.366 5.175 0 9.67-1.769 11.936-4.366zM64.3 24.242c11.618 0 23.699 7.82 23.699 24.2S75.92 71.754 75.92 83.576c0 5.873-5.868 9.26-11.92 9.26s-12.027-3.006-12.027-9.26C51.973 71.147 40 65.47 40 48.442s12.683-24.2 24.301-24.2z\"/></svg>"
        },
        "$:/core/images/transcludify": {
            "title": "$:/core/images/transcludify",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-transcludify-button tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M0 59.482c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.651-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02C1.36 67.377.591 67.288 0 67.288v-7.806zm24.66 0c.591 0 1.36-.089 2.306-.266a10.417 10.417 0 002.75-.932 6.762 6.762 0 002.306-1.907c.65-.828.976-1.863.976-3.104V35.709c0-2.01.414-3.74 1.242-5.19.828-1.448 1.833-2.66 3.016-3.636s2.425-1.7 3.726-2.173c1.3-.473 2.424-.71 3.37-.71h8.073v7.451h-4.88c-1.241 0-2.232.207-2.97.621-.74.414-1.302.932-1.686 1.552a4.909 4.909 0 00-.71 1.996c-.089.71-.133 1.39-.133 2.04v16.677c0 1.715-.325 3.134-.976 4.258-.65 1.123-1.434 2.025-2.35 2.705-.917.68-1.863 1.168-2.839 1.464-.976.296-1.818.473-2.528.532v.178c.71.059 1.552.207 2.528.443.976.237 1.922.68 2.839 1.33.916.651 1.7 1.583 2.35 2.795.65 1.212.976 2.853.976 4.923v16.144c0 .65.044 1.33.133 2.04.089.71.325 1.375.71 1.996.384.621.946 1.139 1.685 1.553.74.414 1.73.62 2.972.62h4.879v7.452h-8.073c-.946 0-2.07-.237-3.37-.71-1.301-.473-2.543-1.197-3.726-2.173-1.183-.976-2.188-2.188-3.016-3.637-.828-1.449-1.242-3.179-1.242-5.19V74.119c0-1.42-.325-2.572-.976-3.46-.65-.886-1.419-1.581-2.306-2.084a8.868 8.868 0 00-2.75-1.02c-.946-.177-1.715-.266-2.306-.266v-7.806zm43.965-3.538L80.6 52.041l2.306 7.097-12.063 3.903 7.628 10.378-6.12 4.435-7.63-10.467-7.45 10.201-5.943-4.524 7.628-10.023-12.152-4.17 2.306-7.096 12.064 4.17V43.347h7.451v12.596zm34.425 11.344c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806zm24.66 0c-.65 0-1.449.089-2.395.266-.946.177-1.863.488-2.75.931a6.356 6.356 0 00-2.262 1.908c-.62.828-.931 1.862-.931 3.104v17.564c0 2.01-.414 3.74-1.242 5.189-.828 1.449-1.833 2.661-3.016 3.637s-2.425 1.7-3.726 2.173c-1.3.473-2.424.71-3.37.71h-8.073v-7.451h4.88c1.241 0 2.232-.207 2.97-.621.74-.414 1.302-.932 1.686-1.553a4.9 4.9 0 00.71-1.995c.089-.71.133-1.39.133-2.04V72.432c0-1.715.325-3.134.976-4.258.65-1.124 1.434-2.01 2.35-2.661.917-.65 1.863-1.124 2.839-1.42.976-.295 1.818-.502 2.528-.62v-.178c-.71-.059-1.552-.207-2.528-.443-.976-.237-1.922-.68-2.839-1.33-.916-.651-1.7-1.583-2.35-2.795-.65-1.212-.976-2.853-.976-4.923V37.66c0-.651-.044-1.331-.133-2.04a4.909 4.909 0 00-.71-1.997c-.384-.62-.946-1.138-1.685-1.552-.74-.414-1.73-.62-2.972-.62h-4.879V24h8.073c.946 0 2.07.237 3.37.71 1.301.473 2.543 1.197 3.726 2.173 1.183.976 2.188 2.188 3.016 3.637.828 1.449 1.242 3.178 1.242 5.189v16.943c0 1.419.31 2.572.931 3.46a6.897 6.897 0 002.262 2.084 8.868 8.868 0 002.75 1.02c.946.177 1.745.266 2.395.266v7.806z\"/></svg>"
        },
        "$:/core/images/twitter": {
            "title": "$:/core/images/twitter",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-twitter tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M41.626 115.803A73.376 73.376 0 012 104.235c2.022.238 4.08.36 6.166.36 12.111 0 23.258-4.117 32.105-11.023-11.312-.208-20.859-7.653-24.148-17.883a25.98 25.98 0 0011.674-.441C15.971 72.881 7.061 62.474 7.061 49.997c0-.108 0-.216.002-.323a25.824 25.824 0 0011.709 3.22c-6.936-4.617-11.5-12.5-11.5-21.433 0-4.719 1.274-9.142 3.5-12.945 12.75 15.579 31.797 25.83 53.281 26.904-.44-1.884-.67-3.85-.67-5.868 0-14.22 11.575-25.75 25.852-25.75a25.865 25.865 0 0118.869 8.132 51.892 51.892 0 0016.415-6.248c-1.93 6.012-6.029 11.059-11.366 14.246A51.844 51.844 0 00128 25.878a52.428 52.428 0 01-12.9 13.33c.05 1.104.075 2.214.075 3.33 0 34.028-26 73.265-73.549 73.265\"/></svg>"
        },
        "$:/core/images/underline": {
            "title": "$:/core/images/underline",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-underline tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M7 117.421h114.248V128H7v-10.579zm97.871-18.525V0h-16.26v55.856c0 4.463-.605 8.576-1.816 12.338-1.212 3.762-3.03 7.046-5.452 9.851-2.423 2.806-5.452 4.974-9.086 6.504-3.635 1.53-7.939 2.296-12.912 2.296-6.25 0-11.159-1.786-14.73-5.356-3.57-3.571-5.356-8.417-5.356-14.538V0H23v65.038c0 5.356.542 10.234 1.626 14.633 1.084 4.4 2.965 8.194 5.643 11.382 2.678 3.188 6.185 5.643 10.52 7.365 4.337 1.721 9.756 2.582 16.26 2.582 7.27 0 13.582-1.435 18.938-4.304 5.356-2.87 9.755-7.365 13.199-13.486h.382v15.686h15.303z\"/></svg>"
        },
        "$:/core/images/unfold-all-button": {
            "title": "$:/core/images/unfold-all-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold-all tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><rect width=\"128\" height=\"16\" y=\"64\" rx=\"8\"/><path d=\"M63.945 60.624c-2.05 0-4.101-.78-5.666-2.345L35.662 35.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 41.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 58.279a7.986 7.986 0 01-5.663 2.346zM64.004 124.565c-2.05 0-4.102-.78-5.666-2.345L35.721 99.603c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 105.255l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.662 122.22a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/unfold-button": {
            "title": "$:/core/images/unfold-button",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unfold tc-image-button\" viewBox=\"0 0 128 128\"><g fill-rule=\"evenodd\"><rect width=\"128\" height=\"16\" rx=\"8\"/><path d=\"M63.945 63.624c-2.05 0-4.101-.78-5.666-2.345L35.662 38.662c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.192-3.122 11.319.005L63.94 44.314l16.966-16.966c3.124-3.124 8.194-3.129 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319L69.603 61.279a7.986 7.986 0 01-5.663 2.346zM64.004 105.682c-2.05.001-4.102-.78-5.666-2.344L35.721 80.721c-3.125-3.125-3.13-8.195-.005-11.319 3.118-3.118 8.191-3.122 11.318.005L64 86.373l16.966-16.966c3.124-3.125 8.194-3.13 11.318-.005 3.118 3.118 3.122 8.192-.005 11.319l-22.617 22.617a7.986 7.986 0 01-5.663 2.346z\"/></g></svg>"
        },
        "$:/core/images/unlocked-padlock": {
            "title": "$:/core/images/unlocked-padlock",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-unlocked-padlock tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M48.627 64H105v32.01C105 113.674 90.674 128 73.001 128H56C38.318 128 24 113.677 24 96.01V64h6.136c-10.455-12.651-27.364-35.788-4.3-55.142 24.636-20.672 45.835 4.353 55.777 16.201 9.943 11.85-2.676 22.437-12.457 9.892-9.78-12.545-21.167-24.146-33.207-14.043-12.041 10.104-1.757 22.36 8.813 34.958 2.467 2.94 3.641 5.732 3.865 8.134zm19.105 28.364A8.503 8.503 0 0064.5 76a8.5 8.5 0 00-3.498 16.25l-5.095 22.77H72.8l-5.07-22.656z\"/></svg>"
        },
        "$:/core/images/up-arrow": {
            "title": "$:/core/images/up-arrow",
            "created": "20150316000544368",
            "modified": "20150316000831867",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-up-arrow tc-image-button\" viewBox=\"0 0 128 128\"><path d=\"M63.892.281c2.027 0 4.054.77 5.6 2.316l55.98 55.98a7.92 7.92 0 010 11.196c-3.086 3.085-8.104 3.092-11.196 0L63.894 19.393 13.513 69.774a7.92 7.92 0 01-11.196 0c-3.085-3.086-3.092-8.105 0-11.196l55.98-55.98A7.892 7.892 0 0163.893.28z\"/></svg>"
        },
        "$:/core/images/video": {
            "title": "$:/core/images/video",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-video tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M64 12c-34.91 0-55.273 2.917-58.182 5.833C2.91 20.75 0 41.167 0 64.5c0 23.333 2.91 43.75 5.818 46.667C8.728 114.083 29.091 117 64 117c34.91 0 55.273-2.917 58.182-5.833C125.09 108.25 128 87.833 128 64.5c0-23.333-2.91-43.75-5.818-46.667C119.272 14.917 98.909 12 64 12zm-9.084 32.618c-3.813-2.542-6.905-.879-6.905 3.698v31.368c0 4.585 3.099 6.235 6.905 3.698l22.168-14.779c3.813-2.542 3.806-6.669 0-9.206L54.916 44.618z\"/></svg>"
        },
        "$:/core/images/warning": {
            "title": "$:/core/images/warning",
            "tags": "$:/tags/Image",
            "text": "<svg width=\"22pt\" height=\"22pt\" class=\"tc-image-warning tc-image-button\" viewBox=\"0 0 128 128\"><path fill-rule=\"evenodd\" d=\"M57.072 11c3.079-5.333 10.777-5.333 13.856 0l55.426 96c3.079 5.333-.77 12-6.928 12H8.574c-6.158 0-10.007-6.667-6.928-12l55.426-96zM64 37c-4.418 0-8 3.582-8 7.994v28.012C56 77.421 59.59 81 64 81c4.418 0 8-3.582 8-7.994V44.994C72 40.579 68.41 37 64 37zm0 67a8 8 0 100-16 8 8 0 000 16z\"/></svg>"
        },
        "$:/language/Buttons/AdvancedSearch/Caption": {
            "title": "$:/language/Buttons/AdvancedSearch/Caption",
            "text": "advanced search"
        },
        "$:/language/Buttons/AdvancedSearch/Hint": {
            "title": "$:/language/Buttons/AdvancedSearch/Hint",
            "text": "Advanced search"
        },
        "$:/language/Buttons/Cancel/Caption": {
            "title": "$:/language/Buttons/Cancel/Caption",
            "text": "cancel"
        },
        "$:/language/Buttons/Cancel/Hint": {
            "title": "$:/language/Buttons/Cancel/Hint",
            "text": "Discard changes to this tiddler"
        },
        "$:/language/Buttons/Clone/Caption": {
            "title": "$:/language/Buttons/Clone/Caption",
            "text": "clone"
        },
        "$:/language/Buttons/Clone/Hint": {
            "title": "$:/language/Buttons/Clone/Hint",
            "text": "Clone this tiddler"
        },
        "$:/language/Buttons/Close/Caption": {
            "title": "$:/language/Buttons/Close/Caption",
            "text": "close"
        },
        "$:/language/Buttons/Close/Hint": {
            "title": "$:/language/Buttons/Close/Hint",
            "text": "Close this tiddler"
        },
        "$:/language/Buttons/CloseAll/Caption": {
            "title": "$:/language/Buttons/CloseAll/Caption",
            "text": "close all"
        },
        "$:/language/Buttons/CloseAll/Hint": {
            "title": "$:/language/Buttons/CloseAll/Hint",
            "text": "Close all tiddlers"
        },
        "$:/language/Buttons/CloseOthers/Caption": {
            "title": "$:/language/Buttons/CloseOthers/Caption",
            "text": "close others"
        },
        "$:/language/Buttons/CloseOthers/Hint": {
            "title": "$:/language/Buttons/CloseOthers/Hint",
            "text": "Close other tiddlers"
        },
        "$:/language/Buttons/ControlPanel/Caption": {
            "title": "$:/language/Buttons/ControlPanel/Caption",
            "text": "control panel"
        },
        "$:/language/Buttons/ControlPanel/Hint": {
            "title": "$:/language/Buttons/ControlPanel/Hint",
            "text": "Open control panel"
        },
        "$:/language/Buttons/CopyToClipboard/Caption": {
            "title": "$:/language/Buttons/CopyToClipboard/Caption",
            "text": "copy to clipboard"
        },
        "$:/language/Buttons/CopyToClipboard/Hint": {
            "title": "$:/language/Buttons/CopyToClipboard/Hint",
            "text": "Copy this text to the clipboard"
        },
        "$:/language/Buttons/Delete/Caption": {
            "title": "$:/language/Buttons/Delete/Caption",
            "text": "delete"
        },
        "$:/language/Buttons/Delete/Hint": {
            "title": "$:/language/Buttons/Delete/Hint",
            "text": "Delete this tiddler"
        },
        "$:/language/Buttons/Edit/Caption": {
            "title": "$:/language/Buttons/Edit/Caption",
            "text": "edit"
        },
        "$:/language/Buttons/Edit/Hint": {
            "title": "$:/language/Buttons/Edit/Hint",
            "text": "Edit this tiddler"
        },
        "$:/language/Buttons/Encryption/Caption": {
            "title": "$:/language/Buttons/Encryption/Caption",
            "text": "encryption"
        },
        "$:/language/Buttons/Encryption/Hint": {
            "title": "$:/language/Buttons/Encryption/Hint",
            "text": "Set or clear a password for saving this wiki"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
            "text": "clear password"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
            "text": "Clear the password and save this wiki without encryption"
        },
        "$:/language/Buttons/Encryption/SetPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Caption",
            "text": "set password"
        },
        "$:/language/Buttons/Encryption/SetPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Hint",
            "text": "Set a password for saving this wiki with encryption"
        },
        "$:/language/Buttons/ExportPage/Caption": {
            "title": "$:/language/Buttons/ExportPage/Caption",
            "text": "export all"
        },
        "$:/language/Buttons/ExportPage/Hint": {
            "title": "$:/language/Buttons/ExportPage/Hint",
            "text": "Export all tiddlers"
        },
        "$:/language/Buttons/ExportTiddler/Caption": {
            "title": "$:/language/Buttons/ExportTiddler/Caption",
            "text": "export tiddler"
        },
        "$:/language/Buttons/ExportTiddler/Hint": {
            "title": "$:/language/Buttons/ExportTiddler/Hint",
            "text": "Export tiddler"
        },
        "$:/language/Buttons/ExportTiddlers/Caption": {
            "title": "$:/language/Buttons/ExportTiddlers/Caption",
            "text": "export tiddlers"
        },
        "$:/language/Buttons/ExportTiddlers/Hint": {
            "title": "$:/language/Buttons/ExportTiddlers/Hint",
            "text": "Export tiddlers"
        },
        "$:/language/Buttons/SidebarSearch/Hint": {
            "title": "$:/language/Buttons/SidebarSearch/Hint",
            "text": "Select the sidebar search field"
        },
        "$:/language/Buttons/Fold/Caption": {
            "title": "$:/language/Buttons/Fold/Caption",
            "text": "fold tiddler"
        },
        "$:/language/Buttons/Fold/Hint": {
            "title": "$:/language/Buttons/Fold/Hint",
            "text": "Fold the body of this tiddler"
        },
        "$:/language/Buttons/Fold/FoldBar/Caption": {
            "title": "$:/language/Buttons/Fold/FoldBar/Caption",
            "text": "fold-bar"
        },
        "$:/language/Buttons/Fold/FoldBar/Hint": {
            "title": "$:/language/Buttons/Fold/FoldBar/Hint",
            "text": "Optional bars to fold and unfold tiddlers"
        },
        "$:/language/Buttons/Unfold/Caption": {
            "title": "$:/language/Buttons/Unfold/Caption",
            "text": "unfold tiddler"
        },
        "$:/language/Buttons/Unfold/Hint": {
            "title": "$:/language/Buttons/Unfold/Hint",
            "text": "Unfold the body of this tiddler"
        },
        "$:/language/Buttons/FoldOthers/Caption": {
            "title": "$:/language/Buttons/FoldOthers/Caption",
            "text": "fold other tiddlers"
        },
        "$:/language/Buttons/FoldOthers/Hint": {
            "title": "$:/language/Buttons/FoldOthers/Hint",
            "text": "Fold the bodies of other opened tiddlers"
        },
        "$:/language/Buttons/FoldAll/Caption": {
            "title": "$:/language/Buttons/FoldAll/Caption",
            "text": "fold all tiddlers"
        },
        "$:/language/Buttons/FoldAll/Hint": {
            "title": "$:/language/Buttons/FoldAll/Hint",
            "text": "Fold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Caption": {
            "title": "$:/language/Buttons/UnfoldAll/Caption",
            "text": "unfold all tiddlers"
        },
        "$:/language/Buttons/UnfoldAll/Hint": {
            "title": "$:/language/Buttons/UnfoldAll/Hint",
            "text": "Unfold the bodies of all opened tiddlers"
        },
        "$:/language/Buttons/FullScreen/Caption": {
            "title": "$:/language/Buttons/FullScreen/Caption",
            "text": "full-screen"
        },
        "$:/language/Buttons/FullScreen/Hint": {
            "title": "$:/language/Buttons/FullScreen/Hint",
            "text": "Enter or leave full-screen mode"
        },
        "$:/language/Buttons/Help/Caption": {
            "title": "$:/language/Buttons/Help/Caption",
            "text": "help"
        },
        "$:/language/Buttons/Help/Hint": {
            "title": "$:/language/Buttons/Help/Hint",
            "text": "Show help panel"
        },
        "$:/language/Buttons/Import/Caption": {
            "title": "$:/language/Buttons/Import/Caption",
            "text": "import"
        },
        "$:/language/Buttons/Import/Hint": {
            "title": "$:/language/Buttons/Import/Hint",
            "text": "Import many types of file including text, image, TiddlyWiki or JSON"
        },
        "$:/language/Buttons/Info/Caption": {
            "title": "$:/language/Buttons/Info/Caption",
            "text": "info"
        },
        "$:/language/Buttons/Info/Hint": {
            "title": "$:/language/Buttons/Info/Hint",
            "text": "Show information for this tiddler"
        },
        "$:/language/Buttons/Home/Caption": {
            "title": "$:/language/Buttons/Home/Caption",
            "text": "home"
        },
        "$:/language/Buttons/Home/Hint": {
            "title": "$:/language/Buttons/Home/Hint",
            "text": "Open the default tiddlers"
        },
        "$:/language/Buttons/Language/Caption": {
            "title": "$:/language/Buttons/Language/Caption",
            "text": "language"
        },
        "$:/language/Buttons/Language/Hint": {
            "title": "$:/language/Buttons/Language/Hint",
            "text": "Choose the user interface language"
        },
        "$:/language/Buttons/Manager/Caption": {
            "title": "$:/language/Buttons/Manager/Caption",
            "text": "tiddler manager"
        },
        "$:/language/Buttons/Manager/Hint": {
            "title": "$:/language/Buttons/Manager/Hint",
            "text": "Open tiddler manager"
        },
        "$:/language/Buttons/More/Caption": {
            "title": "$:/language/Buttons/More/Caption",
            "text": "more"
        },
        "$:/language/Buttons/More/Hint": {
            "title": "$:/language/Buttons/More/Hint",
            "text": "More actions"
        },
        "$:/language/Buttons/NewHere/Caption": {
            "title": "$:/language/Buttons/NewHere/Caption",
            "text": "new here"
        },
        "$:/language/Buttons/NewHere/Hint": {
            "title": "$:/language/Buttons/NewHere/Hint",
            "text": "Create a new tiddler tagged with this one"
        },
        "$:/language/Buttons/NewJournal/Caption": {
            "title": "$:/language/Buttons/NewJournal/Caption",
            "text": "new journal"
        },
        "$:/language/Buttons/NewJournal/Hint": {
            "title": "$:/language/Buttons/NewJournal/Hint",
            "text": "Create a new journal tiddler"
        },
        "$:/language/Buttons/NewJournalHere/Caption": {
            "title": "$:/language/Buttons/NewJournalHere/Caption",
            "text": "new journal here"
        },
        "$:/language/Buttons/NewJournalHere/Hint": {
            "title": "$:/language/Buttons/NewJournalHere/Hint",
            "text": "Create a new journal tiddler tagged with this one"
        },
        "$:/language/Buttons/NewImage/Caption": {
            "title": "$:/language/Buttons/NewImage/Caption",
            "text": "new image"
        },
        "$:/language/Buttons/NewImage/Hint": {
            "title": "$:/language/Buttons/NewImage/Hint",
            "text": "Create a new image tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Caption": {
            "title": "$:/language/Buttons/NewMarkdown/Caption",
            "text": "new Markdown tiddler"
        },
        "$:/language/Buttons/NewMarkdown/Hint": {
            "title": "$:/language/Buttons/NewMarkdown/Hint",
            "text": "Create a new Markdown tiddler"
        },
        "$:/language/Buttons/NewTiddler/Caption": {
            "title": "$:/language/Buttons/NewTiddler/Caption",
            "text": "new tiddler"
        },
        "$:/language/Buttons/NewTiddler/Hint": {
            "title": "$:/language/Buttons/NewTiddler/Hint",
            "text": "Create a new tiddler"
        },
        "$:/language/Buttons/OpenWindow/Caption": {
            "title": "$:/language/Buttons/OpenWindow/Caption",
            "text": "open in new window"
        },
        "$:/language/Buttons/OpenWindow/Hint": {
            "title": "$:/language/Buttons/OpenWindow/Hint",
            "text": "Open tiddler in new window"
        },
        "$:/language/Buttons/Palette/Caption": {
            "title": "$:/language/Buttons/Palette/Caption",
            "text": "palette"
        },
        "$:/language/Buttons/Palette/Hint": {
            "title": "$:/language/Buttons/Palette/Hint",
            "text": "Choose the colour palette"
        },
        "$:/language/Buttons/Permalink/Caption": {
            "title": "$:/language/Buttons/Permalink/Caption",
            "text": "permalink"
        },
        "$:/language/Buttons/Permalink/Hint": {
            "title": "$:/language/Buttons/Permalink/Hint",
            "text": "Set browser address bar to a direct link to this tiddler"
        },
        "$:/language/Buttons/Permaview/Caption": {
            "title": "$:/language/Buttons/Permaview/Caption",
            "text": "permaview"
        },
        "$:/language/Buttons/Permaview/Hint": {
            "title": "$:/language/Buttons/Permaview/Hint",
            "text": "Set browser address bar to a direct link to all the tiddlers in this story"
        },
        "$:/language/Buttons/Print/Caption": {
            "title": "$:/language/Buttons/Print/Caption",
            "text": "print page"
        },
        "$:/language/Buttons/Print/Hint": {
            "title": "$:/language/Buttons/Print/Hint",
            "text": "Print the current page"
        },
        "$:/language/Buttons/Refresh/Caption": {
            "title": "$:/language/Buttons/Refresh/Caption",
            "text": "refresh"
        },
        "$:/language/Buttons/Refresh/Hint": {
            "title": "$:/language/Buttons/Refresh/Hint",
            "text": "Perform a full refresh of the wiki"
        },
        "$:/language/Buttons/Save/Caption": {
            "title": "$:/language/Buttons/Save/Caption",
            "text": "ok"
        },
        "$:/language/Buttons/Save/Hint": {
            "title": "$:/language/Buttons/Save/Hint",
            "text": "Confirm changes to this tiddler"
        },
        "$:/language/Buttons/SaveWiki/Caption": {
            "title": "$:/language/Buttons/SaveWiki/Caption",
            "text": "save changes"
        },
        "$:/language/Buttons/SaveWiki/Hint": {
            "title": "$:/language/Buttons/SaveWiki/Hint",
            "text": "Save changes"
        },
        "$:/language/Buttons/StoryView/Caption": {
            "title": "$:/language/Buttons/StoryView/Caption",
            "text": "storyview"
        },
        "$:/language/Buttons/StoryView/Hint": {
            "title": "$:/language/Buttons/StoryView/Hint",
            "text": "Choose the story visualisation"
        },
        "$:/language/Buttons/HideSideBar/Caption": {
            "title": "$:/language/Buttons/HideSideBar/Caption",
            "text": "hide sidebar"
        },
        "$:/language/Buttons/HideSideBar/Hint": {
            "title": "$:/language/Buttons/HideSideBar/Hint",
            "text": "Hide sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Caption": {
            "title": "$:/language/Buttons/ShowSideBar/Caption",
            "text": "show sidebar"
        },
        "$:/language/Buttons/ShowSideBar/Hint": {
            "title": "$:/language/Buttons/ShowSideBar/Hint",
            "text": "Show sidebar"
        },
        "$:/language/Buttons/TagManager/Caption": {
            "title": "$:/language/Buttons/TagManager/Caption",
            "text": "tag manager"
        },
        "$:/language/Buttons/TagManager/Hint": {
            "title": "$:/language/Buttons/TagManager/Hint",
            "text": "Open tag manager"
        },
        "$:/language/Buttons/Timestamp/Caption": {
            "title": "$:/language/Buttons/Timestamp/Caption",
            "text": "timestamps"
        },
        "$:/language/Buttons/Timestamp/Hint": {
            "title": "$:/language/Buttons/Timestamp/Hint",
            "text": "Choose whether modifications update timestamps"
        },
        "$:/language/Buttons/Timestamp/On/Caption": {
            "title": "$:/language/Buttons/Timestamp/On/Caption",
            "text": "timestamps are on"
        },
        "$:/language/Buttons/Timestamp/On/Hint": {
            "title": "$:/language/Buttons/Timestamp/On/Hint",
            "text": "Update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Timestamp/Off/Caption": {
            "title": "$:/language/Buttons/Timestamp/Off/Caption",
            "text": "timestamps are off"
        },
        "$:/language/Buttons/Timestamp/Off/Hint": {
            "title": "$:/language/Buttons/Timestamp/Off/Hint",
            "text": "Don't update timestamps when tiddlers are modified"
        },
        "$:/language/Buttons/Theme/Caption": {
            "title": "$:/language/Buttons/Theme/Caption",
            "text": "theme"
        },
        "$:/language/Buttons/Theme/Hint": {
            "title": "$:/language/Buttons/Theme/Hint",
            "text": "Choose the display theme"
        },
        "$:/language/Buttons/Bold/Caption": {
            "title": "$:/language/Buttons/Bold/Caption",
            "text": "bold"
        },
        "$:/language/Buttons/Bold/Hint": {
            "title": "$:/language/Buttons/Bold/Hint",
            "text": "Apply bold formatting to selection"
        },
        "$:/language/Buttons/Clear/Caption": {
            "title": "$:/language/Buttons/Clear/Caption",
            "text": "clear"
        },
        "$:/language/Buttons/Clear/Hint": {
            "title": "$:/language/Buttons/Clear/Hint",
            "text": "Clear image to solid colour"
        },
        "$:/language/Buttons/EditorHeight/Caption": {
            "title": "$:/language/Buttons/EditorHeight/Caption",
            "text": "editor height"
        },
        "$:/language/Buttons/EditorHeight/Caption/Auto": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Auto",
            "text": "Automatically adjust height to fit content"
        },
        "$:/language/Buttons/EditorHeight/Caption/Fixed": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
            "text": "Fixed height:"
        },
        "$:/language/Buttons/EditorHeight/Hint": {
            "title": "$:/language/Buttons/EditorHeight/Hint",
            "text": "Choose the height of the text editor"
        },
        "$:/language/Buttons/Excise/Caption": {
            "title": "$:/language/Buttons/Excise/Caption",
            "text": "excise"
        },
        "$:/language/Buttons/Excise/Caption/Excise": {
            "title": "$:/language/Buttons/Excise/Caption/Excise",
            "text": "Perform excision"
        },
        "$:/language/Buttons/Excise/Caption/MacroName": {
            "title": "$:/language/Buttons/Excise/Caption/MacroName",
            "text": "Macro name:"
        },
        "$:/language/Buttons/Excise/Caption/NewTitle": {
            "title": "$:/language/Buttons/Excise/Caption/NewTitle",
            "text": "Title of new tiddler:"
        },
        "$:/language/Buttons/Excise/Caption/Replace": {
            "title": "$:/language/Buttons/Excise/Caption/Replace",
            "text": "Replace excised text with:"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Macro": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
            "text": "macro"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Link": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Link",
            "text": "link"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
            "text": "transclusion"
        },
        "$:/language/Buttons/Excise/Caption/Tag": {
            "title": "$:/language/Buttons/Excise/Caption/Tag",
            "text": "Tag new tiddler with the title of this tiddler"
        },
        "$:/language/Buttons/Excise/Caption/TiddlerExists": {
            "title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
            "text": "Warning: tiddler already exists"
        },
        "$:/language/Buttons/Excise/Hint": {
            "title": "$:/language/Buttons/Excise/Hint",
            "text": "Excise the selected text into a new tiddler"
        },
        "$:/language/Buttons/Heading1/Caption": {
            "title": "$:/language/Buttons/Heading1/Caption",
            "text": "heading 1"
        },
        "$:/language/Buttons/Heading1/Hint": {
            "title": "$:/language/Buttons/Heading1/Hint",
            "text": "Apply heading level 1 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading2/Caption": {
            "title": "$:/language/Buttons/Heading2/Caption",
            "text": "heading 2"
        },
        "$:/language/Buttons/Heading2/Hint": {
            "title": "$:/language/Buttons/Heading2/Hint",
            "text": "Apply heading level 2 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading3/Caption": {
            "title": "$:/language/Buttons/Heading3/Caption",
            "text": "heading 3"
        },
        "$:/language/Buttons/Heading3/Hint": {
            "title": "$:/language/Buttons/Heading3/Hint",
            "text": "Apply heading level 3 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading4/Caption": {
            "title": "$:/language/Buttons/Heading4/Caption",
            "text": "heading 4"
        },
        "$:/language/Buttons/Heading4/Hint": {
            "title": "$:/language/Buttons/Heading4/Hint",
            "text": "Apply heading level 4 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading5/Caption": {
            "title": "$:/language/Buttons/Heading5/Caption",
            "text": "heading 5"
        },
        "$:/language/Buttons/Heading5/Hint": {
            "title": "$:/language/Buttons/Heading5/Hint",
            "text": "Apply heading level 5 formatting to lines containing selection"
        },
        "$:/language/Buttons/Heading6/Caption": {
            "title": "$:/language/Buttons/Heading6/Caption",
            "text": "heading 6"
        },
        "$:/language/Buttons/Heading6/Hint": {
            "title": "$:/language/Buttons/Heading6/Hint",
            "text": "Apply heading level 6 formatting to lines containing selection"
        },
        "$:/language/Buttons/Italic/Caption": {
            "title": "$:/language/Buttons/Italic/Caption",
            "text": "italic"
        },
        "$:/language/Buttons/Italic/Hint": {
            "title": "$:/language/Buttons/Italic/Hint",
            "text": "Apply italic formatting to selection"
        },
        "$:/language/Buttons/LineWidth/Caption": {
            "title": "$:/language/Buttons/LineWidth/Caption",
            "text": "line width"
        },
        "$:/language/Buttons/LineWidth/Hint": {
            "title": "$:/language/Buttons/LineWidth/Hint",
            "text": "Set line width for painting"
        },
        "$:/language/Buttons/Link/Caption": {
            "title": "$:/language/Buttons/Link/Caption",
            "text": "link"
        },
        "$:/language/Buttons/Link/Hint": {
            "title": "$:/language/Buttons/Link/Hint",
            "text": "Create wikitext link"
        },
        "$:/language/Buttons/Linkify/Caption": {
            "title": "$:/language/Buttons/Linkify/Caption",
            "text": "wikilink"
        },
        "$:/language/Buttons/Linkify/Hint": {
            "title": "$:/language/Buttons/Linkify/Hint",
            "text": "Wrap selection in square brackets"
        },
        "$:/language/Buttons/ListBullet/Caption": {
            "title": "$:/language/Buttons/ListBullet/Caption",
            "text": "bulleted list"
        },
        "$:/language/Buttons/ListBullet/Hint": {
            "title": "$:/language/Buttons/ListBullet/Hint",
            "text": "Apply bulleted list formatting to lines containing selection"
        },
        "$:/language/Buttons/ListNumber/Caption": {
            "title": "$:/language/Buttons/ListNumber/Caption",
            "text": "numbered list"
        },
        "$:/language/Buttons/ListNumber/Hint": {
            "title": "$:/language/Buttons/ListNumber/Hint",
            "text": "Apply numbered list formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoBlock/Caption": {
            "title": "$:/language/Buttons/MonoBlock/Caption",
            "text": "monospaced block"
        },
        "$:/language/Buttons/MonoBlock/Hint": {
            "title": "$:/language/Buttons/MonoBlock/Hint",
            "text": "Apply monospaced block formatting to lines containing selection"
        },
        "$:/language/Buttons/MonoLine/Caption": {
            "title": "$:/language/Buttons/MonoLine/Caption",
            "text": "monospaced"
        },
        "$:/language/Buttons/MonoLine/Hint": {
            "title": "$:/language/Buttons/MonoLine/Hint",
            "text": "Apply monospaced character formatting to selection"
        },
        "$:/language/Buttons/Opacity/Caption": {
            "title": "$:/language/Buttons/Opacity/Caption",
            "text": "opacity"
        },
        "$:/language/Buttons/Opacity/Hint": {
            "title": "$:/language/Buttons/Opacity/Hint",
            "text": "Set painting opacity"
        },
        "$:/language/Buttons/Paint/Caption": {
            "title": "$:/language/Buttons/Paint/Caption",
            "text": "paint colour"
        },
        "$:/language/Buttons/Paint/Hint": {
            "title": "$:/language/Buttons/Paint/Hint",
            "text": "Set painting colour"
        },
        "$:/language/Buttons/Picture/Caption": {
            "title": "$:/language/Buttons/Picture/Caption",
            "text": "picture"
        },
        "$:/language/Buttons/Picture/Hint": {
            "title": "$:/language/Buttons/Picture/Hint",
            "text": "Insert picture"
        },
        "$:/language/Buttons/Preview/Caption": {
            "title": "$:/language/Buttons/Preview/Caption",
            "text": "preview"
        },
        "$:/language/Buttons/Preview/Hint": {
            "title": "$:/language/Buttons/Preview/Hint",
            "text": "Show preview pane"
        },
        "$:/language/Buttons/PreviewType/Caption": {
            "title": "$:/language/Buttons/PreviewType/Caption",
            "text": "preview type"
        },
        "$:/language/Buttons/PreviewType/Hint": {
            "title": "$:/language/Buttons/PreviewType/Hint",
            "text": "Choose preview type"
        },
        "$:/language/Buttons/Quote/Caption": {
            "title": "$:/language/Buttons/Quote/Caption",
            "text": "quote"
        },
        "$:/language/Buttons/Quote/Hint": {
            "title": "$:/language/Buttons/Quote/Hint",
            "text": "Apply quoted text formatting to lines containing selection"
        },
        "$:/language/Buttons/RotateLeft/Caption": {
            "title": "$:/language/Buttons/RotateLeft/Caption",
            "text": "rotate left"
        },
        "$:/language/Buttons/RotateLeft/Hint": {
            "title": "$:/language/Buttons/RotateLeft/Hint",
            "text": "Rotate image left by 90 degrees"
        },
        "$:/language/Buttons/Size/Caption": {
            "title": "$:/language/Buttons/Size/Caption",
            "text": "image size"
        },
        "$:/language/Buttons/Size/Caption/Height": {
            "title": "$:/language/Buttons/Size/Caption/Height",
            "text": "Height:"
        },
        "$:/language/Buttons/Size/Caption/Resize": {
            "title": "$:/language/Buttons/Size/Caption/Resize",
            "text": "Resize image"
        },
        "$:/language/Buttons/Size/Caption/Width": {
            "title": "$:/language/Buttons/Size/Caption/Width",
            "text": "Width:"
        },
        "$:/language/Buttons/Size/Hint": {
            "title": "$:/language/Buttons/Size/Hint",
            "text": "Set image size"
        },
        "$:/language/Buttons/Stamp/Caption": {
            "title": "$:/language/Buttons/Stamp/Caption",
            "text": "stamp"
        },
        "$:/language/Buttons/Stamp/Caption/New": {
            "title": "$:/language/Buttons/Stamp/Caption/New",
            "text": "Add your own"
        },
        "$:/language/Buttons/Stamp/Hint": {
            "title": "$:/language/Buttons/Stamp/Hint",
            "text": "Insert a preconfigured snippet of text"
        },
        "$:/language/Buttons/Stamp/New/Title": {
            "title": "$:/language/Buttons/Stamp/New/Title",
            "text": "Name as shown in menu"
        },
        "$:/language/Buttons/Stamp/New/Text": {
            "title": "$:/language/Buttons/Stamp/New/Text",
            "text": "Text of snippet. (Remember to add a descriptive title in the caption field)."
        },
        "$:/language/Buttons/Strikethrough/Caption": {
            "title": "$:/language/Buttons/Strikethrough/Caption",
            "text": "strikethrough"
        },
        "$:/language/Buttons/Strikethrough/Hint": {
            "title": "$:/language/Buttons/Strikethrough/Hint",
            "text": "Apply strikethrough formatting to selection"
        },
        "$:/language/Buttons/Subscript/Caption": {
            "title": "$:/language/Buttons/Subscript/Caption",
            "text": "subscript"
        },
        "$:/language/Buttons/Subscript/Hint": {
            "title": "$:/language/Buttons/Subscript/Hint",
            "text": "Apply subscript formatting to selection"
        },
        "$:/language/Buttons/Superscript/Caption": {
            "title": "$:/language/Buttons/Superscript/Caption",
            "text": "superscript"
        },
        "$:/language/Buttons/Superscript/Hint": {
            "title": "$:/language/Buttons/Superscript/Hint",
            "text": "Apply superscript formatting to selection"
        },
        "$:/language/Buttons/ToggleSidebar/Hint": {
            "title": "$:/language/Buttons/ToggleSidebar/Hint",
            "text": "Toggle the sidebar visibility"
        },
        "$:/language/Buttons/Transcludify/Caption": {
            "title": "$:/language/Buttons/Transcludify/Caption",
            "text": "transclusion"
        },
        "$:/language/Buttons/Transcludify/Hint": {
            "title": "$:/language/Buttons/Transcludify/Hint",
            "text": "Wrap selection in curly brackets"
        },
        "$:/language/Buttons/Underline/Caption": {
            "title": "$:/language/Buttons/Underline/Caption",
            "text": "underline"
        },
        "$:/language/Buttons/Underline/Hint": {
            "title": "$:/language/Buttons/Underline/Hint",
            "text": "Apply underline formatting to selection"
        },
        "$:/language/ControlPanel/Advanced/Caption": {
            "title": "$:/language/ControlPanel/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/ControlPanel/Advanced/Hint": {
            "title": "$:/language/ControlPanel/Advanced/Hint",
            "text": "Internal information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/Appearance/Caption": {
            "title": "$:/language/ControlPanel/Appearance/Caption",
            "text": "Appearance"
        },
        "$:/language/ControlPanel/Appearance/Hint": {
            "title": "$:/language/ControlPanel/Appearance/Hint",
            "text": "Ways to customise the appearance of your TiddlyWiki."
        },
        "$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
            "text": "Animation duration"
        },
        "$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
            "text": "Default focus field for new tiddlers"
        },
        "$:/language/ControlPanel/Basics/Caption": {
            "title": "$:/language/ControlPanel/Basics/Caption",
            "text": "Basics"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
            "text": "Use &#91;&#91;double square brackets&#93;&#93; for titles with spaces. Or you can choose to <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">retain story ordering</$button>"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
            "text": "Default tiddlers"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
            "text": "Choose which tiddlers are displayed at startup"
        },
        "$:/language/ControlPanel/Basics/Language/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Language/Prompt",
            "text": "Hello! Current language:"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
            "text": "Title of new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
            "text": "Text for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
            "text": "Tags for new journal tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
            "text": "Title of new tiddlers"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
            "text": "Tags for new tiddlers"
        },
        "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
            "text": "Number of overridden shadow tiddlers"
        },
        "$:/language/ControlPanel/Basics/RemoveTags": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags",
            "text": "Update to current format"
        },
        "$:/language/ControlPanel/Basics/RemoveTags/Hint": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags/Hint",
            "text": "Update the tags configuration to the latest format"
        },
        "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
            "text": "Number of shadow tiddlers"
        },
        "$:/language/ControlPanel/Basics/Subtitle/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
            "text": "Subtitle"
        },
        "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
            "text": "Number of system tiddlers"
        },
        "$:/language/ControlPanel/Basics/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tags/Prompt",
            "text": "Number of tags"
        },
        "$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
            "text": "Number of tiddlers"
        },
        "$:/language/ControlPanel/Basics/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Title/Prompt",
            "text": "Title of this ~TiddlyWiki"
        },
        "$:/language/ControlPanel/Basics/Username/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Username/Prompt",
            "text": "Username for signing edits"
        },
        "$:/language/ControlPanel/Basics/Version/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Version/Prompt",
            "text": "~TiddlyWiki version"
        },
        "$:/language/ControlPanel/EditorTypes/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Caption",
            "text": "Editor Types"
        },
        "$:/language/ControlPanel/EditorTypes/Editor/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
            "text": "Editor"
        },
        "$:/language/ControlPanel/EditorTypes/Hint": {
            "title": "$:/language/ControlPanel/EditorTypes/Hint",
            "text": "These tiddlers determine which editor is used to edit specific tiddler types."
        },
        "$:/language/ControlPanel/EditorTypes/Type/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
            "text": "Type"
        },
        "$:/language/ControlPanel/Info/Caption": {
            "title": "$:/language/ControlPanel/Info/Caption",
            "text": "Info"
        },
        "$:/language/ControlPanel/Info/Hint": {
            "title": "$:/language/ControlPanel/Info/Hint",
            "text": "Information about this TiddlyWiki"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
            "text": "Type shortcut here"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
            "text": "add shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
            "text": "Keyboard Shortcuts"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
            "text": "Manage keyboard shortcut assignments"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
            "text": "No keyboard shortcuts assigned"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
            "text": "remove keyboard shortcut"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
            "text": "All platforms"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
            "text": "Macintosh platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
            "text": "Non-Macintosh platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
            "text": "Linux platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
            "text": "Non-Linux platforms only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
            "text": "Windows platform only"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
            "text": "Non-Windows platforms only"
        },
        "$:/language/ControlPanel/LayoutSwitcher/Caption": {
            "title": "$:/language/ControlPanel/LayoutSwitcher/Caption",
            "text": "Layout"
        },
        "$:/language/ControlPanel/LoadedModules/Caption": {
            "title": "$:/language/ControlPanel/LoadedModules/Caption",
            "text": "Loaded Modules"
        },
        "$:/language/ControlPanel/LoadedModules/Hint": {
            "title": "$:/language/ControlPanel/LoadedModules/Hint",
            "text": "These are the currently loaded tiddler modules linked to their source tiddlers. Any italicised modules lack a source tiddler, typically because they were setup during the boot process."
        },
        "$:/language/ControlPanel/Palette/Caption": {
            "title": "$:/language/ControlPanel/Palette/Caption",
            "text": "Palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
            "text": "clone"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
            "text": "It is recommended that you clone this shadow palette before editing it"
        },
        "$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
            "title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
            "text": "delete this entry from the current palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
            "title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
            "text": "Show color names that are not part of the current palette"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
            "text": "This shadow palette has been modified"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt",
            "text": "Editing"
        },
        "$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
            "text": "reset"
        },
        "$:/language/ControlPanel/Palette/HideEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
            "text": "hide editor"
        },
        "$:/language/ControlPanel/Palette/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Prompt",
            "text": "Current palette:"
        },
        "$:/language/ControlPanel/Palette/ShowEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
            "text": "show editor"
        },
        "$:/language/ControlPanel/Parsing/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Caption",
            "text": "Parsing"
        },
        "$:/language/ControlPanel/Parsing/Hint": {
            "title": "$:/language/ControlPanel/Parsing/Hint",
            "text": "Here you can globally disable/enable wiki parser rules. For changes to take effect, save and reload your wiki. Disabling certain parser rules can prevent <$text text=\"TiddlyWiki\"/> from functioning correctly. Use [[safe mode|https://tiddlywiki.com/#SafeMode]] to restore normal operation."
        },
        "$:/language/ControlPanel/Parsing/Block/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Block/Caption",
            "text": "Block Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Inline/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Inline/Caption",
            "text": "Inline Parse Rules"
        },
        "$:/language/ControlPanel/Parsing/Pragma/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
            "text": "Pragma Parse Rules"
        },
        "$:/language/ControlPanel/Plugins/Add/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Add/Caption",
            "text": "Get more plugins"
        },
        "$:/language/ControlPanel/Plugins/Add/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Add/Hint",
            "text": "Install plugins from the official library"
        },
        "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
            "text": "This plugin is already installed at version <$text text=<<installedVersion>>/>"
        },
        "$:/language/ControlPanel/Plugins/AlsoRequires": {
            "title": "$:/language/ControlPanel/Plugins/AlsoRequires",
            "text": "Also requires:"
        },
        "$:/language/ControlPanel/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Disable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Caption",
            "text": "disable"
        },
        "$:/language/ControlPanel/Plugins/Disable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Hint",
            "text": "Disable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Disabled/Status": {
            "title": "$:/language/ControlPanel/Plugins/Disabled/Status",
            "text": "(disabled)"
        },
        "$:/language/ControlPanel/Plugins/Downgrade/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
            "text": "downgrade"
        },
        "$:/language/ControlPanel/Plugins/Empty/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Empty/Hint",
            "text": "None"
        },
        "$:/language/ControlPanel/Plugins/Enable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Caption",
            "text": "enable"
        },
        "$:/language/ControlPanel/Plugins/Enable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Hint",
            "text": "Enable this plugin when reloading page"
        },
        "$:/language/ControlPanel/Plugins/Install/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Install/Caption",
            "text": "install"
        },
        "$:/language/ControlPanel/Plugins/Installed/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Installed/Hint",
            "text": "Currently installed plugins:"
        },
        "$:/language/ControlPanel/Plugins/Languages/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Caption",
            "text": "Languages"
        },
        "$:/language/ControlPanel/Plugins/Languages/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Hint",
            "text": "Language pack plugins"
        },
        "$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
            "text": "No ''\"<$text text=<<currentTab>>/>\"'' found"
        },
        "$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
            "text": "This plugin is not currently installed"
        },
        "$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
            "text": "open plugin library"
        },
        "$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
            "text": "close plugin library"
        },
        "$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
            "title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
            "text": "(requires reload)"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
            "text": "Plugins"
        },
        "$:/language/ControlPanel/Plugins/Reinstall/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
            "text": "reinstall"
        },
        "$:/language/ControlPanel/Plugins/Themes/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Caption",
            "text": "Themes"
        },
        "$:/language/ControlPanel/Plugins/Themes/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Hint",
            "text": "Theme plugins"
        },
        "$:/language/ControlPanel/Plugins/Update/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Update/Caption",
            "text": "update"
        },
        "$:/language/ControlPanel/Plugins/Updates/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Caption",
            "text": "Updates"
        },
        "$:/language/ControlPanel/Plugins/Updates/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Hint",
            "text": "Available updates to installed plugins"
        },
        "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
            "text": "Update <<update-count>> plugins"
        },
        "$:/language/ControlPanel/Plugins/SubPluginPrompt": {
            "title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
            "text": "With <<count>> sub-plugins available"
        },
        "$:/language/ControlPanel/Saving/Caption": {
            "title": "$:/language/ControlPanel/Saving/Caption",
            "text": "Saving"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
            "text": "Permit automatic saving for the download saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
            "text": "Enable Autosave for Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
            "text": "Download Saver"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
            "text": "These settings apply to the HTML5-compatible download saver"
        },
        "$:/language/ControlPanel/Saving/General/Caption": {
            "title": "$:/language/ControlPanel/Saving/General/Caption",
            "text": "General"
        },
        "$:/language/ControlPanel/Saving/General/Hint": {
            "title": "$:/language/ControlPanel/Saving/General/Hint",
            "text": "These settings apply to all the loaded savers"
        },
        "$:/language/ControlPanel/Saving/Hint": {
            "title": "$:/language/ControlPanel/Saving/Hint",
            "text": "Settings used for saving the entire TiddlyWiki as a single file via a saver module"
        },
        "$:/language/ControlPanel/Saving/GitService/Branch": {
            "title": "$:/language/ControlPanel/Saving/GitService/Branch",
            "text": "Target branch for saving"
        },
        "$:/language/ControlPanel/Saving/GitService/CommitMessage": {
            "title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
            "text": "Saved by TiddlyWiki"
        },
        "$:/language/ControlPanel/Saving/GitService/Description": {
            "title": "$:/language/ControlPanel/Saving/GitService/Description",
            "text": "These settings are only used when saving to <<service-name>>"
        },
        "$:/language/ControlPanel/Saving/GitService/Filename": {
            "title": "$:/language/ControlPanel/Saving/GitService/Filename",
            "text": "Filename of target file (e.g. `index.html`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Path": {
            "title": "$:/language/ControlPanel/Saving/GitService/Path",
            "text": "Path to target file (e.g. `/wiki/`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Repo": {
            "title": "$:/language/ControlPanel/Saving/GitService/Repo",
            "text": "Target repository (e.g. `Jermolene/TiddlyWiki5`)"
        },
        "$:/language/ControlPanel/Saving/GitService/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
            "text": "Server API URL"
        },
        "$:/language/ControlPanel/Saving/GitService/UserName": {
            "title": "$:/language/ControlPanel/Saving/GitService/UserName",
            "text": "Username"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
            "text": "~GitHub Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
            "text": "Password, OAUTH token, or personal access token (see [[GitHub help page|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]] for details)"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
            "text": "~GitLab Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
            "text": "Personal access token for API (see [[GitLab help page|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]] for details)"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
            "text": "Gitea Saver"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
            "text": "Personal access token for API (via Gitea’s web interface: `Settings | Applications | Generate New Token`)"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
            "text": "Advanced Settings"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
            "text": "Backup Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel",
            "text": "~TiddlySpot Control Panel"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
            "text": "Backups"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
            "text": "~TiddlySpot Saver"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Description": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
            "text": "These settings are only used when saving to http://tiddlyspot.com or a compatible remote server"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
            "text": "Upload Filename"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
            "text": "~TiddlySpot"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
            "text": "//The server URL defaults to `http://<wikiname>.tiddlyspot.com/store.cgi` and can be changed to use a custom server address, e.g. `http://example.com/store.php`.//"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Password": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
            "text": "Password"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly",
            "text": "The ~TiddlySpot service is currently only available in read-only form. Please see http://tiddlyspot.com/ for the latest details. The ~TiddlySpot saver can still be used to save to compatible servers."
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
            "text": "Server URL"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
            "text": "Upload Directory"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
            "text": "Wiki Name"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Caption": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
            "text": "Autosave"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
            "text": "Do not save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
            "text": "Save changes automatically"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
            "text": "Attempt to automatically save changes during editing when using a supporting saver"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Caption": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
            "text": "Camel Case Wiki Links"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Hint": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
            "text": "You can globally disable automatic linking of ~CamelCase phrases. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Description": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Description",
            "text": "Enable automatic ~CamelCase linking"
        },
        "$:/language/ControlPanel/Settings/Caption": {
            "title": "$:/language/ControlPanel/Settings/Caption",
            "text": "Settings"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
            "text": "Enable or disable the editor toolbar:"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Description": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
            "text": "Show editor toolbar"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
            "text": "Tiddler Info Panel Mode"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
            "text": "Control when the tiddler info panel closes:"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
            "text": "Tiddler info panel closes automatically"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
            "text": "Tiddler info panel stays open until explicitly closed"
        },
        "$:/language/ControlPanel/Settings/Hint": {
            "title": "$:/language/ControlPanel/Settings/Hint",
            "text": "These settings let you customise the behaviour of TiddlyWiki."
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
            "text": "Navigation Address Bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
            "text": "Behaviour of the browser address bar when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
            "text": "Do not update the address bar"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
            "text": "Include the target tiddler"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
            "text": "Include the target tiddler and the current story sequence"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
            "text": "Navigation History"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
            "text": "Update browser history when navigating to a tiddler:"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
            "text": "Do not update history"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
            "text": "Update history"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
            "text": "Permalink/permaview Mode"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
            "text": "Choose how permalink/permaview is handled:"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
            "text": "Copy permalink/permaview URL to clipboard"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
            "text": "Update address bar with permalink/permaview URL"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
            "text": "Performance Instrumentation"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
            "text": "Displays performance statistics in the browser developer console. Requires reload to take effect"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
            "text": "Enable performance instrumentation"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
            "text": "Toolbar Button Style"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
            "text": "Choose the style for toolbar buttons:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
            "text": "Borderless"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
            "text": "Boxed"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
            "text": "Rounded"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
            "text": "Toolbar Buttons"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
            "text": "Default toolbar button appearance:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
            "text": "Include icon"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
            "text": "Include text"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
            "text": "Default Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
            "text": "Specify which sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
            "text": "Default More Sidebar Tab"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
            "text": "Specify which More sidebar tab is displayed by default"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
            "text": "Tiddler Opening Behaviour"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
            "text": "Navigation from //within// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
            "text": "Navigation from //outside// the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
            "text": "Open above the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
            "text": "Open below the current tiddler"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
            "text": "Open at the top of the story river"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
            "text": "Open at the bottom of the story river"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
            "text": "Tiddler Titles"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
            "text": "Optionally display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
            "text": "Do not display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
            "text": "Display tiddler titles as links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
            "text": "Wiki Links"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
            "text": "Choose whether to link to tiddlers that do not exist yet"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Description": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
            "text": "Enable links to missing tiddlers"
        },
        "$:/language/ControlPanel/StoryView/Caption": {
            "title": "$:/language/ControlPanel/StoryView/Caption",
            "text": "Story View"
        },
        "$:/language/ControlPanel/StoryView/Prompt": {
            "title": "$:/language/ControlPanel/StoryView/Prompt",
            "text": "Current view:"
        },
        "$:/language/ControlPanel/Stylesheets/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Caption",
            "text": "Stylesheets"
        },
        "$:/language/ControlPanel/Stylesheets/Expand/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
            "text": "Expand All"
        },
        "$:/language/ControlPanel/Stylesheets/Hint": {
            "title": "$:/language/ControlPanel/Stylesheets/Hint",
            "text": "This is the rendered CSS of the current stylesheet tiddlers tagged with <<tag \"$:/tags/Stylesheet\">>"
        },
        "$:/language/ControlPanel/Stylesheets/Restore/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
            "text": "Restore"
        },
        "$:/language/ControlPanel/Theme/Caption": {
            "title": "$:/language/ControlPanel/Theme/Caption",
            "text": "Theme"
        },
        "$:/language/ControlPanel/Theme/Prompt": {
            "title": "$:/language/ControlPanel/Theme/Prompt",
            "text": "Current theme:"
        },
        "$:/language/ControlPanel/TiddlerFields/Caption": {
            "title": "$:/language/ControlPanel/TiddlerFields/Caption",
            "text": "Tiddler Fields"
        },
        "$:/language/ControlPanel/TiddlerFields/Hint": {
            "title": "$:/language/ControlPanel/TiddlerFields/Hint",
            "text": "This is the full set of TiddlerFields in use in this wiki (including system tiddlers but excluding shadow tiddlers)."
        },
        "$:/language/ControlPanel/Toolbars/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/Caption",
            "text": "Toolbars"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
            "text": "Edit Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in edit mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/Hint",
            "text": "Select which toolbar buttons are displayed"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
            "text": "Page Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
            "text": "Choose which buttons are displayed on the main page toolbar. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
            "text": "Editor Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
            "text": "Choose which buttons are displayed in the editor toolbar. Note that some buttons will only appear when editing tiddlers of a certain type. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
            "text": "View Toolbar"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
            "text": "Choose which buttons are displayed for tiddlers in view mode. Drag and drop to change the ordering"
        },
        "$:/language/ControlPanel/Tools/Download/Full/Caption": {
            "title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
            "text": "Download full wiki"
        },
        "$:/language/Date/DaySuffix/1": {
            "title": "$:/language/Date/DaySuffix/1",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/2": {
            "title": "$:/language/Date/DaySuffix/2",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/3": {
            "title": "$:/language/Date/DaySuffix/3",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/4": {
            "title": "$:/language/Date/DaySuffix/4",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/5": {
            "title": "$:/language/Date/DaySuffix/5",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/6": {
            "title": "$:/language/Date/DaySuffix/6",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/7": {
            "title": "$:/language/Date/DaySuffix/7",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/8": {
            "title": "$:/language/Date/DaySuffix/8",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/9": {
            "title": "$:/language/Date/DaySuffix/9",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/10": {
            "title": "$:/language/Date/DaySuffix/10",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/11": {
            "title": "$:/language/Date/DaySuffix/11",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/12": {
            "title": "$:/language/Date/DaySuffix/12",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/13": {
            "title": "$:/language/Date/DaySuffix/13",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/14": {
            "title": "$:/language/Date/DaySuffix/14",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/15": {
            "title": "$:/language/Date/DaySuffix/15",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/16": {
            "title": "$:/language/Date/DaySuffix/16",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/17": {
            "title": "$:/language/Date/DaySuffix/17",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/18": {
            "title": "$:/language/Date/DaySuffix/18",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/19": {
            "title": "$:/language/Date/DaySuffix/19",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/20": {
            "title": "$:/language/Date/DaySuffix/20",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/21": {
            "title": "$:/language/Date/DaySuffix/21",
            "text": "st"
        },
        "$:/language/Date/DaySuffix/22": {
            "title": "$:/language/Date/DaySuffix/22",
            "text": "nd"
        },
        "$:/language/Date/DaySuffix/23": {
            "title": "$:/language/Date/DaySuffix/23",
            "text": "rd"
        },
        "$:/language/Date/DaySuffix/24": {
            "title": "$:/language/Date/DaySuffix/24",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/25": {
            "title": "$:/language/Date/DaySuffix/25",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/26": {
            "title": "$:/language/Date/DaySuffix/26",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/27": {
            "title": "$:/language/Date/DaySuffix/27",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/28": {
            "title": "$:/language/Date/DaySuffix/28",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/29": {
            "title": "$:/language/Date/DaySuffix/29",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/30": {
            "title": "$:/language/Date/DaySuffix/30",
            "text": "th"
        },
        "$:/language/Date/DaySuffix/31": {
            "title": "$:/language/Date/DaySuffix/31",
            "text": "st"
        },
        "$:/language/Date/Long/Day/0": {
            "title": "$:/language/Date/Long/Day/0",
            "text": "Sunday"
        },
        "$:/language/Date/Long/Day/1": {
            "title": "$:/language/Date/Long/Day/1",
            "text": "Monday"
        },
        "$:/language/Date/Long/Day/2": {
            "title": "$:/language/Date/Long/Day/2",
            "text": "Tuesday"
        },
        "$:/language/Date/Long/Day/3": {
            "title": "$:/language/Date/Long/Day/3",
            "text": "Wednesday"
        },
        "$:/language/Date/Long/Day/4": {
            "title": "$:/language/Date/Long/Day/4",
            "text": "Thursday"
        },
        "$:/language/Date/Long/Day/5": {
            "title": "$:/language/Date/Long/Day/5",
            "text": "Friday"
        },
        "$:/language/Date/Long/Day/6": {
            "title": "$:/language/Date/Long/Day/6",
            "text": "Saturday"
        },
        "$:/language/Date/Long/Month/1": {
            "title": "$:/language/Date/Long/Month/1",
            "text": "January"
        },
        "$:/language/Date/Long/Month/2": {
            "title": "$:/language/Date/Long/Month/2",
            "text": "February"
        },
        "$:/language/Date/Long/Month/3": {
            "title": "$:/language/Date/Long/Month/3",
            "text": "March"
        },
        "$:/language/Date/Long/Month/4": {
            "title": "$:/language/Date/Long/Month/4",
            "text": "April"
        },
        "$:/language/Date/Long/Month/5": {
            "title": "$:/language/Date/Long/Month/5",
            "text": "May"
        },
        "$:/language/Date/Long/Month/6": {
            "title": "$:/language/Date/Long/Month/6",
            "text": "June"
        },
        "$:/language/Date/Long/Month/7": {
            "title": "$:/language/Date/Long/Month/7",
            "text": "July"
        },
        "$:/language/Date/Long/Month/8": {
            "title": "$:/language/Date/Long/Month/8",
            "text": "August"
        },
        "$:/language/Date/Long/Month/9": {
            "title": "$:/language/Date/Long/Month/9",
            "text": "September"
        },
        "$:/language/Date/Long/Month/10": {
            "title": "$:/language/Date/Long/Month/10",
            "text": "October"
        },
        "$:/language/Date/Long/Month/11": {
            "title": "$:/language/Date/Long/Month/11",
            "text": "November"
        },
        "$:/language/Date/Long/Month/12": {
            "title": "$:/language/Date/Long/Month/12",
            "text": "December"
        },
        "$:/language/Date/Period/am": {
            "title": "$:/language/Date/Period/am",
            "text": "am"
        },
        "$:/language/Date/Period/pm": {
            "title": "$:/language/Date/Period/pm",
            "text": "pm"
        },
        "$:/language/Date/Short/Day/0": {
            "title": "$:/language/Date/Short/Day/0",
            "text": "Sun"
        },
        "$:/language/Date/Short/Day/1": {
            "title": "$:/language/Date/Short/Day/1",
            "text": "Mon"
        },
        "$:/language/Date/Short/Day/2": {
            "title": "$:/language/Date/Short/Day/2",
            "text": "Tue"
        },
        "$:/language/Date/Short/Day/3": {
            "title": "$:/language/Date/Short/Day/3",
            "text": "Wed"
        },
        "$:/language/Date/Short/Day/4": {
            "title": "$:/language/Date/Short/Day/4",
            "text": "Thu"
        },
        "$:/language/Date/Short/Day/5": {
            "title": "$:/language/Date/Short/Day/5",
            "text": "Fri"
        },
        "$:/language/Date/Short/Day/6": {
            "title": "$:/language/Date/Short/Day/6",
            "text": "Sat"
        },
        "$:/language/Date/Short/Month/1": {
            "title": "$:/language/Date/Short/Month/1",
            "text": "Jan"
        },
        "$:/language/Date/Short/Month/2": {
            "title": "$:/language/Date/Short/Month/2",
            "text": "Feb"
        },
        "$:/language/Date/Short/Month/3": {
            "title": "$:/language/Date/Short/Month/3",
            "text": "Mar"
        },
        "$:/language/Date/Short/Month/4": {
            "title": "$:/language/Date/Short/Month/4",
            "text": "Apr"
        },
        "$:/language/Date/Short/Month/5": {
            "title": "$:/language/Date/Short/Month/5",
            "text": "May"
        },
        "$:/language/Date/Short/Month/6": {
            "title": "$:/language/Date/Short/Month/6",
            "text": "Jun"
        },
        "$:/language/Date/Short/Month/7": {
            "title": "$:/language/Date/Short/Month/7",
            "text": "Jul"
        },
        "$:/language/Date/Short/Month/8": {
            "title": "$:/language/Date/Short/Month/8",
            "text": "Aug"
        },
        "$:/language/Date/Short/Month/9": {
            "title": "$:/language/Date/Short/Month/9",
            "text": "Sep"
        },
        "$:/language/Date/Short/Month/10": {
            "title": "$:/language/Date/Short/Month/10",
            "text": "Oct"
        },
        "$:/language/Date/Short/Month/11": {
            "title": "$:/language/Date/Short/Month/11",
            "text": "Nov"
        },
        "$:/language/Date/Short/Month/12": {
            "title": "$:/language/Date/Short/Month/12",
            "text": "Dec"
        },
        "$:/language/RelativeDate/Future/Days": {
            "title": "$:/language/RelativeDate/Future/Days",
            "text": "<<period>> days from now"
        },
        "$:/language/RelativeDate/Future/Hours": {
            "title": "$:/language/RelativeDate/Future/Hours",
            "text": "<<period>> hours from now"
        },
        "$:/language/RelativeDate/Future/Minutes": {
            "title": "$:/language/RelativeDate/Future/Minutes",
            "text": "<<period>> minutes from now"
        },
        "$:/language/RelativeDate/Future/Months": {
            "title": "$:/language/RelativeDate/Future/Months",
            "text": "<<period>> months from now"
        },
        "$:/language/RelativeDate/Future/Second": {
            "title": "$:/language/RelativeDate/Future/Second",
            "text": "1 second from now"
        },
        "$:/language/RelativeDate/Future/Seconds": {
            "title": "$:/language/RelativeDate/Future/Seconds",
            "text": "<<period>> seconds from now"
        },
        "$:/language/RelativeDate/Future/Years": {
            "title": "$:/language/RelativeDate/Future/Years",
            "text": "<<period>> years from now"
        },
        "$:/language/RelativeDate/Past/Days": {
            "title": "$:/language/RelativeDate/Past/Days",
            "text": "<<period>> days ago"
        },
        "$:/language/RelativeDate/Past/Hours": {
            "title": "$:/language/RelativeDate/Past/Hours",
            "text": "<<period>> hours ago"
        },
        "$:/language/RelativeDate/Past/Minutes": {
            "title": "$:/language/RelativeDate/Past/Minutes",
            "text": "<<period>> minutes ago"
        },
        "$:/language/RelativeDate/Past/Months": {
            "title": "$:/language/RelativeDate/Past/Months",
            "text": "<<period>> months ago"
        },
        "$:/language/RelativeDate/Past/Second": {
            "title": "$:/language/RelativeDate/Past/Second",
            "text": "1 second ago"
        },
        "$:/language/RelativeDate/Past/Seconds": {
            "title": "$:/language/RelativeDate/Past/Seconds",
            "text": "<<period>> seconds ago"
        },
        "$:/language/RelativeDate/Past/Years": {
            "title": "$:/language/RelativeDate/Past/Years",
            "text": "<<period>> years ago"
        },
        "$:/language/Docs/ModuleTypes/allfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/allfilteroperator",
            "text": "A sub-operator for the ''all'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/animation": {
            "title": "$:/language/Docs/ModuleTypes/animation",
            "text": "Animations that may be used with the RevealWidget."
        },
        "$:/language/Docs/ModuleTypes/authenticator": {
            "title": "$:/language/Docs/ModuleTypes/authenticator",
            "text": "Defines how requests are authenticated by the built-in HTTP server."
        },
        "$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
            "text": "A bitmap editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/command": {
            "title": "$:/language/Docs/ModuleTypes/command",
            "text": "Commands that can be executed under Node.js."
        },
        "$:/language/Docs/ModuleTypes/config": {
            "title": "$:/language/Docs/ModuleTypes/config",
            "text": "Data to be inserted into `$tw.config`."
        },
        "$:/language/Docs/ModuleTypes/filteroperator": {
            "title": "$:/language/Docs/ModuleTypes/filteroperator",
            "text": "Individual filter operator methods."
        },
        "$:/language/Docs/ModuleTypes/global": {
            "title": "$:/language/Docs/ModuleTypes/global",
            "text": "Global data to be inserted into `$tw`."
        },
        "$:/language/Docs/ModuleTypes/info": {
            "title": "$:/language/Docs/ModuleTypes/info",
            "text": "Publishes system information via the [[$:/temp/info-plugin]] pseudo-plugin."
        },
        "$:/language/Docs/ModuleTypes/isfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/isfilteroperator",
            "text": "Operands for the ''is'' filter operator."
        },
        "$:/language/Docs/ModuleTypes/library": {
            "title": "$:/language/Docs/ModuleTypes/library",
            "text": "Generic module type for general purpose JavaScript modules."
        },
        "$:/language/Docs/ModuleTypes/macro": {
            "title": "$:/language/Docs/ModuleTypes/macro",
            "text": "JavaScript macro definitions."
        },
        "$:/language/Docs/ModuleTypes/parser": {
            "title": "$:/language/Docs/ModuleTypes/parser",
            "text": "Parsers for different content types."
        },
        "$:/language/Docs/ModuleTypes/route": {
            "title": "$:/language/Docs/ModuleTypes/route",
            "text": "Defines how individual URL patterns are handled by the built-in HTTP server."
        },
        "$:/language/Docs/ModuleTypes/saver": {
            "title": "$:/language/Docs/ModuleTypes/saver",
            "text": "Savers handle different methods for saving files from the browser."
        },
        "$:/language/Docs/ModuleTypes/startup": {
            "title": "$:/language/Docs/ModuleTypes/startup",
            "text": "Startup functions."
        },
        "$:/language/Docs/ModuleTypes/storyview": {
            "title": "$:/language/Docs/ModuleTypes/storyview",
            "text": "Story views customise the animation and behaviour of list widgets."
        },
        "$:/language/Docs/ModuleTypes/texteditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/texteditoroperation",
            "text": "A text editor toolbar operation."
        },
        "$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
            "text": "Converts different content types into tiddlers."
        },
        "$:/language/Docs/ModuleTypes/tiddlerfield": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerfield",
            "text": "Defines the behaviour of an individual tiddler field."
        },
        "$:/language/Docs/ModuleTypes/tiddlermethod": {
            "title": "$:/language/Docs/ModuleTypes/tiddlermethod",
            "text": "Adds methods to the `$tw.Tiddler` prototype."
        },
        "$:/language/Docs/ModuleTypes/upgrader": {
            "title": "$:/language/Docs/ModuleTypes/upgrader",
            "text": "Applies upgrade processing to tiddlers during an upgrade/import."
        },
        "$:/language/Docs/ModuleTypes/utils": {
            "title": "$:/language/Docs/ModuleTypes/utils",
            "text": "Adds methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/utils-node": {
            "title": "$:/language/Docs/ModuleTypes/utils-node",
            "text": "Adds Node.js-specific methods to `$tw.utils`."
        },
        "$:/language/Docs/ModuleTypes/widget": {
            "title": "$:/language/Docs/ModuleTypes/widget",
            "text": "Widgets encapsulate DOM rendering and refreshing."
        },
        "$:/language/Docs/ModuleTypes/wikimethod": {
            "title": "$:/language/Docs/ModuleTypes/wikimethod",
            "text": "Adds methods to `$tw.Wiki`."
        },
        "$:/language/Docs/ModuleTypes/wikirule": {
            "title": "$:/language/Docs/ModuleTypes/wikirule",
            "text": "Individual parser rules for the main WikiText parser."
        },
        "$:/language/Docs/PaletteColours/alert-background": {
            "title": "$:/language/Docs/PaletteColours/alert-background",
            "text": "Alert background"
        },
        "$:/language/Docs/PaletteColours/alert-border": {
            "title": "$:/language/Docs/PaletteColours/alert-border",
            "text": "Alert border"
        },
        "$:/language/Docs/PaletteColours/alert-highlight": {
            "title": "$:/language/Docs/PaletteColours/alert-highlight",
            "text": "Alert highlight"
        },
        "$:/language/Docs/PaletteColours/alert-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
            "text": "Alert muted foreground"
        },
        "$:/language/Docs/PaletteColours/background": {
            "title": "$:/language/Docs/PaletteColours/background",
            "text": "General background"
        },
        "$:/language/Docs/PaletteColours/blockquote-bar": {
            "title": "$:/language/Docs/PaletteColours/blockquote-bar",
            "text": "Blockquote bar"
        },
        "$:/language/Docs/PaletteColours/button-background": {
            "title": "$:/language/Docs/PaletteColours/button-background",
            "text": "Default button background"
        },
        "$:/language/Docs/PaletteColours/button-border": {
            "title": "$:/language/Docs/PaletteColours/button-border",
            "text": "Default button border"
        },
        "$:/language/Docs/PaletteColours/button-foreground": {
            "title": "$:/language/Docs/PaletteColours/button-foreground",
            "text": "Default button foreground"
        },
        "$:/language/Docs/PaletteColours/dirty-indicator": {
            "title": "$:/language/Docs/PaletteColours/dirty-indicator",
            "text": "Unsaved changes indicator"
        },
        "$:/language/Docs/PaletteColours/code-background": {
            "title": "$:/language/Docs/PaletteColours/code-background",
            "text": "Code background"
        },
        "$:/language/Docs/PaletteColours/code-border": {
            "title": "$:/language/Docs/PaletteColours/code-border",
            "text": "Code border"
        },
        "$:/language/Docs/PaletteColours/code-foreground": {
            "title": "$:/language/Docs/PaletteColours/code-foreground",
            "text": "Code foreground"
        },
        "$:/language/Docs/PaletteColours/download-background": {
            "title": "$:/language/Docs/PaletteColours/download-background",
            "text": "Download button background"
        },
        "$:/language/Docs/PaletteColours/download-foreground": {
            "title": "$:/language/Docs/PaletteColours/download-foreground",
            "text": "Download button foreground"
        },
        "$:/language/Docs/PaletteColours/dragger-background": {
            "title": "$:/language/Docs/PaletteColours/dragger-background",
            "text": "Dragger background"
        },
        "$:/language/Docs/PaletteColours/dragger-foreground": {
            "title": "$:/language/Docs/PaletteColours/dragger-foreground",
            "text": "Dragger foreground"
        },
        "$:/language/Docs/PaletteColours/dropdown-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-background",
            "text": "Dropdown background"
        },
        "$:/language/Docs/PaletteColours/dropdown-border": {
            "title": "$:/language/Docs/PaletteColours/dropdown-border",
            "text": "Dropdown border"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
            "text": "Dropdown tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
            "text": "Dropdown tab background"
        },
        "$:/language/Docs/PaletteColours/dropzone-background": {
            "title": "$:/language/Docs/PaletteColours/dropzone-background",
            "text": "Dropzone background"
        },
        "$:/language/Docs/PaletteColours/external-link-background-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-hover",
            "text": "External link background hover"
        },
        "$:/language/Docs/PaletteColours/external-link-background-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-visited",
            "text": "External link background visited"
        },
        "$:/language/Docs/PaletteColours/external-link-background": {
            "title": "$:/language/Docs/PaletteColours/external-link-background",
            "text": "External link background"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
            "text": "External link foreground hover"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
            "text": "External link foreground visited"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground",
            "text": "External link foreground"
        },
        "$:/language/Docs/PaletteColours/foreground": {
            "title": "$:/language/Docs/PaletteColours/foreground",
            "text": "General foreground"
        },
        "$:/language/Docs/PaletteColours/menubar-background": {
            "title": "$:/language/Docs/PaletteColours/menubar-background",
            "text": "Menu bar background"
        },
        "$:/language/Docs/PaletteColours/menubar-foreground": {
            "title": "$:/language/Docs/PaletteColours/menubar-foreground",
            "text": "Menu bar foreground"
        },
        "$:/language/Docs/PaletteColours/message-background": {
            "title": "$:/language/Docs/PaletteColours/message-background",
            "text": "Message box background"
        },
        "$:/language/Docs/PaletteColours/message-border": {
            "title": "$:/language/Docs/PaletteColours/message-border",
            "text": "Message box border"
        },
        "$:/language/Docs/PaletteColours/message-foreground": {
            "title": "$:/language/Docs/PaletteColours/message-foreground",
            "text": "Message box foreground"
        },
        "$:/language/Docs/PaletteColours/modal-backdrop": {
            "title": "$:/language/Docs/PaletteColours/modal-backdrop",
            "text": "Modal backdrop"
        },
        "$:/language/Docs/PaletteColours/modal-background": {
            "title": "$:/language/Docs/PaletteColours/modal-background",
            "text": "Modal background"
        },
        "$:/language/Docs/PaletteColours/modal-border": {
            "title": "$:/language/Docs/PaletteColours/modal-border",
            "text": "Modal border"
        },
        "$:/language/Docs/PaletteColours/modal-footer-background": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-background",
            "text": "Modal footer background"
        },
        "$:/language/Docs/PaletteColours/modal-footer-border": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-border",
            "text": "Modal footer border"
        },
        "$:/language/Docs/PaletteColours/modal-header-border": {
            "title": "$:/language/Docs/PaletteColours/modal-header-border",
            "text": "Modal header border"
        },
        "$:/language/Docs/PaletteColours/muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/muted-foreground",
            "text": "General muted foreground"
        },
        "$:/language/Docs/PaletteColours/notification-background": {
            "title": "$:/language/Docs/PaletteColours/notification-background",
            "text": "Notification background"
        },
        "$:/language/Docs/PaletteColours/notification-border": {
            "title": "$:/language/Docs/PaletteColours/notification-border",
            "text": "Notification border"
        },
        "$:/language/Docs/PaletteColours/page-background": {
            "title": "$:/language/Docs/PaletteColours/page-background",
            "text": "Page background"
        },
        "$:/language/Docs/PaletteColours/pre-background": {
            "title": "$:/language/Docs/PaletteColours/pre-background",
            "text": "Preformatted code background"
        },
        "$:/language/Docs/PaletteColours/pre-border": {
            "title": "$:/language/Docs/PaletteColours/pre-border",
            "text": "Preformatted code border"
        },
        "$:/language/Docs/PaletteColours/primary": {
            "title": "$:/language/Docs/PaletteColours/primary",
            "text": "General primary"
        },
        "$:/language/Docs/PaletteColours/select-tag-background": {
            "title": "$:/language/Docs/PaletteColours/select-tag-background",
            "text": "`<select>` element background"
        },
        "$:/language/Docs/PaletteColours/select-tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/select-tag-foreground",
            "text": "`<select>` element text"
        },
        "$:/language/Docs/PaletteColours/sidebar-button-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
            "text": "Sidebar button foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
            "text": "Sidebar controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
            "text": "Sidebar controls foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
            "text": "Sidebar foreground shadow"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground",
            "text": "Sidebar foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
            "text": "Sidebar muted foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
            "text": "Sidebar muted foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
            "text": "Sidebar tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
            "text": "Sidebar tab background"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
            "text": "Sidebar tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
            "text": "Sidebar tab border"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-divider": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
            "text": "Sidebar tab divider"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
            "text": "Sidebar tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
            "text": "Sidebar tab foreground"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
            "text": "Sidebar tiddler link foreground hover"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
            "text": "Sidebar tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/site-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/site-title-foreground",
            "text": "Site title foreground"
        },
        "$:/language/Docs/PaletteColours/static-alert-foreground": {
            "title": "$:/language/Docs/PaletteColours/static-alert-foreground",
            "text": "Static alert foreground"
        },
        "$:/language/Docs/PaletteColours/tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-background-selected",
            "text": "Tab background for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-background": {
            "title": "$:/language/Docs/PaletteColours/tab-background",
            "text": "Tab background"
        },
        "$:/language/Docs/PaletteColours/tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-border-selected",
            "text": "Tab border for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-border": {
            "title": "$:/language/Docs/PaletteColours/tab-border",
            "text": "Tab border"
        },
        "$:/language/Docs/PaletteColours/tab-divider": {
            "title": "$:/language/Docs/PaletteColours/tab-divider",
            "text": "Tab divider"
        },
        "$:/language/Docs/PaletteColours/tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
            "text": "Tab foreground for selected tabs"
        },
        "$:/language/Docs/PaletteColours/tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground",
            "text": "Tab foreground"
        },
        "$:/language/Docs/PaletteColours/table-border": {
            "title": "$:/language/Docs/PaletteColours/table-border",
            "text": "Table border"
        },
        "$:/language/Docs/PaletteColours/table-footer-background": {
            "title": "$:/language/Docs/PaletteColours/table-footer-background",
            "text": "Table footer background"
        },
        "$:/language/Docs/PaletteColours/table-header-background": {
            "title": "$:/language/Docs/PaletteColours/table-header-background",
            "text": "Table header background"
        },
        "$:/language/Docs/PaletteColours/tag-background": {
            "title": "$:/language/Docs/PaletteColours/tag-background",
            "text": "Tag background"
        },
        "$:/language/Docs/PaletteColours/tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/tag-foreground",
            "text": "Tag foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-background",
            "text": "Tiddler background"
        },
        "$:/language/Docs/PaletteColours/tiddler-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-border",
            "text": "Tiddler border"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
            "text": "Tiddler controls foreground hover"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
            "text": "Tiddler controls foreground for selected controls"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
            "text": "Tiddler controls foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
            "text": "Tiddler editor background"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
            "text": "Tiddler editor border image"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
            "text": "Tiddler editor border"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
            "text": "Tiddler editor background for even fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
            "text": "Tiddler editor background for odd fields"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-background",
            "text": "Tiddler info panel background"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-border",
            "text": "Tiddler info panel border"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
            "text": "Tiddler info panel tab background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-background",
            "text": "Tiddler link background"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
            "text": "Tiddler link foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
            "text": "Tiddler subtitle foreground"
        },
        "$:/language/Docs/PaletteColours/tiddler-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
            "text": "Tiddler title foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-new-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-new-button",
            "text": "Toolbar 'new tiddler' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-options-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-options-button",
            "text": "Toolbar 'options' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-save-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-save-button",
            "text": "Toolbar 'save' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-info-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-info-button",
            "text": "Toolbar 'info' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-edit-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
            "text": "Toolbar 'edit' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-close-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-close-button",
            "text": "Toolbar 'close' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-delete-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
            "text": "Toolbar 'delete' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-cancel-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
            "text": "Toolbar 'cancel' button foreground"
        },
        "$:/language/Docs/PaletteColours/toolbar-done-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-done-button",
            "text": "Toolbar 'done' button foreground"
        },
        "$:/language/Docs/PaletteColours/untagged-background": {
            "title": "$:/language/Docs/PaletteColours/untagged-background",
            "text": "Untagged pill background"
        },
        "$:/language/Docs/PaletteColours/very-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/very-muted-foreground",
            "text": "Very muted foreground"
        },
        "$:/language/EditTemplate/Body/External/Hint": {
            "title": "$:/language/EditTemplate/Body/External/Hint",
            "text": "This tiddler shows content stored outside of the main TiddlyWiki file. You can edit the tags and fields but cannot directly edit the content itself"
        },
        "$:/language/EditTemplate/Body/Placeholder": {
            "title": "$:/language/EditTemplate/Body/Placeholder",
            "text": "Type the text for this tiddler"
        },
        "$:/language/EditTemplate/Body/Preview/Type/Output": {
            "title": "$:/language/EditTemplate/Body/Preview/Type/Output",
            "text": "output"
        },
        "$:/language/EditTemplate/Field/Remove/Caption": {
            "title": "$:/language/EditTemplate/Field/Remove/Caption",
            "text": "remove field"
        },
        "$:/language/EditTemplate/Field/Remove/Hint": {
            "title": "$:/language/EditTemplate/Field/Remove/Hint",
            "text": "Remove field"
        },
        "$:/language/EditTemplate/Field/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Caption",
            "text": "field list"
        },
        "$:/language/EditTemplate/Field/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Hint",
            "text": "Show field list"
        },
        "$:/language/EditTemplate/Fields/Add/Button": {
            "title": "$:/language/EditTemplate/Fields/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Fields/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
            "text": "Add the new field to the tiddler"
        },
        "$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
            "text": "field name"
        },
        "$:/language/EditTemplate/Fields/Add/Prompt": {
            "title": "$:/language/EditTemplate/Fields/Add/Prompt",
            "text": "Add a new field:"
        },
        "$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
            "text": "field value"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/System": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
            "text": "System fields"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/User": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
            "text": "User fields"
        },
        "$:/language/EditTemplate/Shadow/Warning": {
            "title": "$:/language/EditTemplate/Shadow/Warning",
            "text": "This is a shadow tiddler. Any changes you make will override the default version from the plugin <<pluginLink>>"
        },
        "$:/language/EditTemplate/Shadow/OverriddenWarning": {
            "title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
            "text": "This is a modified shadow tiddler. You can revert to the default version in the plugin <<pluginLink>> by deleting this tiddler"
        },
        "$:/language/EditTemplate/Tags/Add/Button": {
            "title": "$:/language/EditTemplate/Tags/Add/Button",
            "text": "add"
        },
        "$:/language/EditTemplate/Tags/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
            "text": "add tag"
        },
        "$:/language/EditTemplate/Tags/Add/Placeholder": {
            "title": "$:/language/EditTemplate/Tags/Add/Placeholder",
            "text": "tag name"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Caption": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Caption",
            "text": "clear input"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Hint": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Hint",
            "text": "Clear tag input"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
            "text": "tag list"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
            "text": "Show tag list"
        },
        "$:/language/EditTemplate/Title/BadCharacterWarning": {
            "title": "$:/language/EditTemplate/Title/BadCharacterWarning",
            "text": "Warning: avoid using any of the characters <<bad-chars>> in tiddler titles"
        },
        "$:/language/EditTemplate/Title/Exists/Prompt": {
            "title": "$:/language/EditTemplate/Title/Exists/Prompt",
            "text": "Target tiddler already exists"
        },
        "$:/language/EditTemplate/Title/Relink/Prompt": {
            "title": "$:/language/EditTemplate/Title/Relink/Prompt",
            "text": "Update ''<$text text=<<fromTitle>>/>'' to ''<$text text=<<toTitle>>/>'' in the //tags// and //list// fields of other tiddlers"
        },
        "$:/language/EditTemplate/Title/References/Prompt": {
            "title": "$:/language/EditTemplate/Title/References/Prompt",
            "text": "The following references to this tiddler will not be automatically updated:"
        },
        "$:/language/EditTemplate/Type/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Caption",
            "text": "content type list"
        },
        "$:/language/EditTemplate/Type/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Hint",
            "text": "Show content type list"
        },
        "$:/language/EditTemplate/Type/Delete/Caption": {
            "title": "$:/language/EditTemplate/Type/Delete/Caption",
            "text": "delete content type"
        },
        "$:/language/EditTemplate/Type/Delete/Hint": {
            "title": "$:/language/EditTemplate/Type/Delete/Hint",
            "text": "Delete content type"
        },
        "$:/language/EditTemplate/Type/Placeholder": {
            "title": "$:/language/EditTemplate/Type/Placeholder",
            "text": "content type"
        },
        "$:/language/EditTemplate/Type/Prompt": {
            "title": "$:/language/EditTemplate/Type/Prompt",
            "text": "Type:"
        },
        "$:/language/Exporters/StaticRiver": {
            "title": "$:/language/Exporters/StaticRiver",
            "text": "Static HTML"
        },
        "$:/language/Exporters/JsonFile": {
            "title": "$:/language/Exporters/JsonFile",
            "text": "JSON file"
        },
        "$:/language/Exporters/CsvFile": {
            "title": "$:/language/Exporters/CsvFile",
            "text": "CSV file"
        },
        "$:/language/Exporters/TidFile": {
            "title": "$:/language/Exporters/TidFile",
            "text": "\".tid\" file"
        },
        "$:/language/Docs/Fields/_canonical_uri": {
            "title": "$:/language/Docs/Fields/_canonical_uri",
            "text": "The full URI of an external image tiddler"
        },
        "$:/language/Docs/Fields/bag": {
            "title": "$:/language/Docs/Fields/bag",
            "text": "The name of the bag from which a tiddler came"
        },
        "$:/language/Docs/Fields/caption": {
            "title": "$:/language/Docs/Fields/caption",
            "text": "The text to be displayed on a tab or button"
        },
        "$:/language/Docs/Fields/color": {
            "title": "$:/language/Docs/Fields/color",
            "text": "The CSS color value associated with a tiddler"
        },
        "$:/language/Docs/Fields/component": {
            "title": "$:/language/Docs/Fields/component",
            "text": "The name of the component responsible for an [[alert tiddler|AlertMechanism]]"
        },
        "$:/language/Docs/Fields/current-tiddler": {
            "title": "$:/language/Docs/Fields/current-tiddler",
            "text": "Used to cache the top tiddler in a [[history list|HistoryMechanism]]"
        },
        "$:/language/Docs/Fields/created": {
            "title": "$:/language/Docs/Fields/created",
            "text": "The date a tiddler was created"
        },
        "$:/language/Docs/Fields/creator": {
            "title": "$:/language/Docs/Fields/creator",
            "text": "The name of the person who created a tiddler"
        },
        "$:/language/Docs/Fields/dependents": {
            "title": "$:/language/Docs/Fields/dependents",
            "text": "For a plugin, lists the dependent plugin titles"
        },
        "$:/language/Docs/Fields/description": {
            "title": "$:/language/Docs/Fields/description",
            "text": "The descriptive text for a plugin, or a modal dialogue"
        },
        "$:/language/Docs/Fields/draft.of": {
            "title": "$:/language/Docs/Fields/draft.of",
            "text": "For draft tiddlers, contains the title of the tiddler of which this is a draft"
        },
        "$:/language/Docs/Fields/draft.title": {
            "title": "$:/language/Docs/Fields/draft.title",
            "text": "For draft tiddlers, contains the proposed new title of the tiddler"
        },
        "$:/language/Docs/Fields/footer": {
            "title": "$:/language/Docs/Fields/footer",
            "text": "The footer text for a wizard"
        },
        "$:/language/Docs/Fields/hide-body": {
            "title": "$:/language/Docs/Fields/hide-body",
            "text": "The view template will hide bodies of tiddlers if set to: ''yes''"
        },
        "$:/language/Docs/Fields/icon": {
            "title": "$:/language/Docs/Fields/icon",
            "text": "The title of the tiddler containing the icon associated with a tiddler"
        },
        "$:/language/Docs/Fields/library": {
            "title": "$:/language/Docs/Fields/library",
            "text": "Indicates that a tiddler should be saved as a JavaScript library if set to: ''yes''"
        },
        "$:/language/Docs/Fields/list": {
            "title": "$:/language/Docs/Fields/list",
            "text": "An ordered list of tiddler titles associated with a tiddler"
        },
        "$:/language/Docs/Fields/list-before": {
            "title": "$:/language/Docs/Fields/list-before",
            "text": "If set, the title of a tiddler before which this tiddler should be added to the ordered list of tiddler titles, or at the start of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/list-after": {
            "title": "$:/language/Docs/Fields/list-after",
            "text": "If set, the title of the tiddler after which this tiddler should be added to the ordered list of tiddler titles, or at the end of the list if this field is present but empty"
        },
        "$:/language/Docs/Fields/modified": {
            "title": "$:/language/Docs/Fields/modified",
            "text": "The date and time at which a tiddler was last modified"
        },
        "$:/language/Docs/Fields/modifier": {
            "title": "$:/language/Docs/Fields/modifier",
            "text": "The tiddler title associated with the person who last modified a tiddler"
        },
        "$:/language/Docs/Fields/name": {
            "title": "$:/language/Docs/Fields/name",
            "text": "The human readable name associated with a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-priority": {
            "title": "$:/language/Docs/Fields/plugin-priority",
            "text": "A numerical value indicating the priority of a plugin tiddler"
        },
        "$:/language/Docs/Fields/plugin-type": {
            "title": "$:/language/Docs/Fields/plugin-type",
            "text": "The type of plugin in a plugin tiddler"
        },
        "$:/language/Docs/Fields/revision": {
            "title": "$:/language/Docs/Fields/revision",
            "text": "The revision of the tiddler held at the server"
        },
        "$:/language/Docs/Fields/released": {
            "title": "$:/language/Docs/Fields/released",
            "text": "Date of a TiddlyWiki release"
        },
        "$:/language/Docs/Fields/source": {
            "title": "$:/language/Docs/Fields/source",
            "text": "The source URL associated with a tiddler"
        },
        "$:/language/Docs/Fields/subtitle": {
            "title": "$:/language/Docs/Fields/subtitle",
            "text": "The subtitle text for a wizard"
        },
        "$:/language/Docs/Fields/tags": {
            "title": "$:/language/Docs/Fields/tags",
            "text": "A list of tags associated with a tiddler"
        },
        "$:/language/Docs/Fields/text": {
            "title": "$:/language/Docs/Fields/text",
            "text": "The body text of a tiddler"
        },
        "$:/language/Docs/Fields/throttle.refresh": {
            "title": "$:/language/Docs/Fields/throttle.refresh",
            "text": "If present, throttles refreshes of this tiddler"
        },
        "$:/language/Docs/Fields/title": {
            "title": "$:/language/Docs/Fields/title",
            "text": "The unique name of a tiddler"
        },
        "$:/language/Docs/Fields/toc-link": {
            "title": "$:/language/Docs/Fields/toc-link",
            "text": "Suppresses the tiddler's link in a Table of Contents tree if set to: ''no''"
        },
        "$:/language/Docs/Fields/type": {
            "title": "$:/language/Docs/Fields/type",
            "text": "The content type of a tiddler"
        },
        "$:/language/Docs/Fields/version": {
            "title": "$:/language/Docs/Fields/version",
            "text": "Version information for a plugin"
        },
        "$:/language/Docs/Fields/_is_skinny": {
            "title": "$:/language/Docs/Fields/_is_skinny",
            "text": "If present, indicates that the tiddler text field must be loaded from the server"
        },
        "$:/language/Filters/AllTiddlers": {
            "title": "$:/language/Filters/AllTiddlers",
            "text": "All tiddlers except system tiddlers"
        },
        "$:/language/Filters/RecentSystemTiddlers": {
            "title": "$:/language/Filters/RecentSystemTiddlers",
            "text": "Recently modified tiddlers, including system tiddlers"
        },
        "$:/language/Filters/RecentTiddlers": {
            "title": "$:/language/Filters/RecentTiddlers",
            "text": "Recently modified tiddlers"
        },
        "$:/language/Filters/AllTags": {
            "title": "$:/language/Filters/AllTags",
            "text": "All tags except system tags"
        },
        "$:/language/Filters/Missing": {
            "title": "$:/language/Filters/Missing",
            "text": "Missing tiddlers"
        },
        "$:/language/Filters/Drafts": {
            "title": "$:/language/Filters/Drafts",
            "text": "Draft tiddlers"
        },
        "$:/language/Filters/Orphans": {
            "title": "$:/language/Filters/Orphans",
            "text": "Orphan tiddlers"
        },
        "$:/language/Filters/SystemTiddlers": {
            "title": "$:/language/Filters/SystemTiddlers",
            "text": "System tiddlers"
        },
        "$:/language/Filters/ShadowTiddlers": {
            "title": "$:/language/Filters/ShadowTiddlers",
            "text": "Shadow tiddlers"
        },
        "$:/language/Filters/OverriddenShadowTiddlers": {
            "title": "$:/language/Filters/OverriddenShadowTiddlers",
            "text": "Overridden shadow tiddlers"
        },
        "$:/language/Filters/SessionTiddlers": {
            "title": "$:/language/Filters/SessionTiddlers",
            "text": "Tiddlers modified since the wiki was loaded"
        },
        "$:/language/Filters/SystemTags": {
            "title": "$:/language/Filters/SystemTags",
            "text": "System tags"
        },
        "$:/language/Filters/StoryList": {
            "title": "$:/language/Filters/StoryList",
            "text": "Tiddlers in the story river, excluding <$text text=\"$:/AdvancedSearch\"/>"
        },
        "$:/language/Filters/TypedTiddlers": {
            "title": "$:/language/Filters/TypedTiddlers",
            "text": "Non wiki-text tiddlers"
        },
        "GettingStarted": {
            "title": "GettingStarted",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\nWelcome to ~TiddlyWiki and the ~TiddlyWiki community\n\nBefore you start storing important information in ~TiddlyWiki it is vital to make sure that you can reliably save changes. See https://tiddlywiki.com/#GettingStarted for details\n\n!! Set up this ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\nSee the [[control panel|$:/ControlPanel]] for more options.\n"
        },
        "$:/language/Help/build": {
            "title": "$:/language/Help/build",
            "description": "Automatically run configured commands",
            "text": "Build the specified build targets for the current wiki. If no build targets are specified then all available targets will be built.\n\n```\n--build <target> [<target> ...]\n```\n\nBuild targets are defined in the `tiddlywiki.info` file of a wiki folder.\n\n"
        },
        "$:/language/Help/clearpassword": {
            "title": "$:/language/Help/clearpassword",
            "description": "Clear a password for subsequent crypto operations",
            "text": "Clear the password for subsequent crypto operations\n\n```\n--clearpassword\n```\n"
        },
        "$:/language/Help/default": {
            "title": "$:/language/Help/default",
            "text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\nusage: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\nAvailable commands:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\nTo get detailed help on a command:\n\n```\ntiddlywiki --help <command>\n```\n"
        },
        "$:/language/Help/deletetiddlers": {
            "title": "$:/language/Help/deletetiddlers",
            "description": "Deletes a group of tiddlers",
            "text": "<<.from-version \"5.1.20\">> Deletes a group of tiddlers identified by a filter.\n\n```\n--deletetiddlers <filter>\n```\n"
        },
        "$:/language/Help/editions": {
            "title": "$:/language/Help/editions",
            "description": "Lists the available editions of TiddlyWiki",
            "text": "Lists the names and descriptions of the available editions. You can create a new wiki of a specified edition with the `--init` command.\n\n```\n--editions\n```\n"
        },
        "$:/language/Help/fetch": {
            "title": "$:/language/Help/fetch",
            "description": "Fetch tiddlers from wiki by URL",
            "text": "Fetch one or more files over HTTP/HTTPS, and import the tiddlers matching a filter, optionally transforming the incoming titles.\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\nThe \"file\" and \"files\" variants fetch the specified files and attempt to import the tiddlers within them (the same processing as if the files were dragged into the browser window). The \"raw-file\" and \"raw-files\" variants fetch the specified files and then store the raw file data in tiddlers, without applying the import logic.\n\nWith the \"file\" and \"raw-file\" variants only a single file is fetched and the first parameter is the URL of the file to read.\n\nWith the \"files\" and \"raw-files\" variants, multiple files are fetched and the first parameter is a filter yielding a list of URLs of the files to read. For example, given a set of tiddlers tagged \"remote-server\" that have a field \"url\" the filter `[tag[remote-server]get[url]]` will retrieve all the available URLs.\n\nFor the \"file\" and \"files\" variants, the `<import-filter>` parameter specifies a filter determining which tiddlers are imported. It defaults to `[all[tiddlers]]` if not provided.\n\nFor all variants, the `<transform-filter>` parameter specifies an optional filter that transforms the titles of the imported tiddlers. For example, `[addprefix[$:/myimports/]]` would add the prefix `$:/myimports/` to each title.\n\nPreceding the `--fetch` command with `--verbose` will output progress information during the import.\n\nNote that TiddlyWiki will not fetch an older version of an already loaded plugin.\n\nThe following example retrieves all the non-system tiddlers from https://tiddlywiki.com and saves them to a JSON file:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\nThe following example retrieves the \"favicon\" file from tiddlywiki.com and saves it in a file called \"output.ico\". Note that the intermediate tiddler \"Icon Tiddler\" is quoted in the \"--fetch\" command because it is being used as a transformation filter to replace the default title, while there are no quotes for the \"--savetiddler\" command because it is being used directly as a title.\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n\n"
        },
        "$:/language/Help/help": {
            "title": "$:/language/Help/help",
            "description": "Display help for TiddlyWiki commands",
            "text": "Displays help text for a command:\n\n```\n--help [<command>]\n```\n\nIf the command name is omitted then a list of available commands is displayed.\n"
        },
        "$:/language/Help/import": {
            "title": "$:/language/Help/import",
            "description": "Import tiddlers from a file",
            "text": "Import tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The deserializer must be explicitly specified, unlike the `load` command which infers the deserializer from the file extension.\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\nThe deserializers in the core include:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\nThe title of the imported tiddler defaults to the filename.\n\nThe encoding defaults to \"utf8\", but can be \"base64\" for importing binary files.\n\nNote that TiddlyWiki will not import an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/init": {
            "title": "$:/language/Help/init",
            "description": "Initialise a new wiki folder",
            "text": "Initialise an empty [[WikiFolder|WikiFolders]] with a copy of the specified edition.\n\n```\n--init <edition> [<edition> ...]\n```\n\nFor example:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\nNote:\n\n* The wiki folder directory will be created if necessary\n* The \"edition\" defaults to ''empty''\n* The init command will fail if the wiki folder is not empty\n* The init command removes any `includeWikis` definitions in the edition's `tiddlywiki.info` file\n* When multiple editions are specified, editions initialised later will overwrite any files shared with earlier editions (so, the final `tiddlywiki.info` file will be copied from the last edition)\n* `--editions` returns a list of available editions\n"
        },
        "$:/language/Help/listen": {
            "title": "$:/language/Help/listen",
            "description": "Provides an HTTP server interface to TiddlyWiki",
            "text": "Serves a wiki over HTTP.\n\nThe listen command uses NamedCommandParameters:\n\n```\n--listen [<name>=<value>]...\n```\n\nAll parameters are optional with safe defaults, and can be specified in any order. The recognised parameters are:\n\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''credentials'' - pathname of credentials CSV file (relative to wiki folder)\n* ''anon-username'' - the username for signing edits for anonymous users\n* ''username'' - optional username for basic authentication\n* ''password'' - optional password for basic authentication\n* ''authenticated-user-header'' - optional name of header to be used for trusted authentication\n* ''readers'' - comma separated list of principals allowed to read from this wiki\n* ''writers'' - comma separated list of principals allowed to write to this wiki\n* ''csrf-disable'' - set to \"yes\" to disable CSRF checks (defaults to \"no\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''tls-cert'' - pathname of TLS certificate file (relative to wiki folder)\n* ''tls-key'' - pathname of TLS key file (relative to wiki folder)\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n* ''gzip'' - set to \"yes\" to enable gzip compression for some http endpoints (defaults to \"no\")\n\nFor information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\n"
        },
        "$:/language/Help/load": {
            "title": "$:/language/Help/load",
            "description": "Load tiddlers from a file",
            "text": "Load tiddlers from TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` or other local files. The processing applied to incoming files is determined by the file extension. Use the alternative `import` command if you need to specify the deserializer and encoding explicitly.\n\n```\n--load <filepath> [noerror]\n--load <dirpath> [noerror]\n```\n\nBy default, the load command raises an error if no tiddlers are found. The error can be suppressed by providing the optional \"noerror\" parameter.\n\nTo load tiddlers from an encrypted TiddlyWiki file you should first specify the password with the PasswordCommand. For example:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\nNote that TiddlyWiki will not load an older version of an already loaded plugin.\n"
        },
        "$:/language/Help/makelibrary": {
            "title": "$:/language/Help/makelibrary",
            "description": "Construct library plugin required by upgrade process",
            "text": "Constructs the `$:/UpgradeLibrary` tiddler for the upgrade process.\n\nThe upgrade library is formatted as an ordinary plugin tiddler with the plugin type `library`. It contains a copy of each of the plugins, themes and language packs available within the TiddlyWiki5 repository.\n\nThis command is intended for internal use; it is only relevant to users constructing a custom upgrade procedure.\n\n```\n--makelibrary <title>\n```\n\nThe title argument defaults to `$:/UpgradeLibrary`.\n"
        },
        "$:/language/Help/notfound": {
            "title": "$:/language/Help/notfound",
            "text": "No such help item"
        },
        "$:/language/Help/output": {
            "title": "$:/language/Help/output",
            "description": "Set the base output directory for subsequent commands",
            "text": "Sets the base output directory for subsequent commands. The default output directory is the `output` subdirectory of the edition directory.\n\n```\n--output <pathname>\n```\n\nIf the specified pathname is relative then it is resolved relative to the current working directory. For example `--output .` sets the output directory to the current working directory.\n\n"
        },
        "$:/language/Help/password": {
            "title": "$:/language/Help/password",
            "description": "Set a password for subsequent crypto operations",
            "text": "Set a password for subsequent crypto operations\n\n```\n--password <password>\n```\n\n''Note'': This should not be used for serving TiddlyWiki with password protection. Instead, see the password option under the [[ServerCommand]].\n"
        },
        "$:/language/Help/render": {
            "title": "$:/language/Help/render",
            "description": "Renders individual tiddlers to files",
            "text": "Render individual tiddlers identified by a filter and save the results to the specified files.\n\nOptionally, the title of a template tiddler can be specified. In this case, instead of directly rendering each tiddler, the template tiddler is rendered with the \"currentTiddler\" variable set to the title of the tiddler that is being rendered.\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be rendered\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]addsuffix[.html]]`, which uses the unchanged tiddler title as the filename\n* ''render-type'': Optional render type: `text/html` (the default) returns the full HTML text and `text/plain` just returns the text content (ie it ignores HTML tags and other unprintable material)\n* ''template'': Optional template through which each tiddler is rendered\n* ''name'': Name of optional variable\n* ''value'': Value of optional variable\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When referring to a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--render \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being rendered, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--render` command is a more flexible replacement for both the `--rendertiddler` and `--rendertiddlers` commands, which are deprecated\n\nExamples:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- renders all non-system tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles and the extension HTML\n\n"
        },
        "$:/language/Help/rendertiddler": {
            "title": "$:/language/Help/rendertiddler",
            "description": "Render an individual tiddler as a specified ContentType",
            "text": "(Note: The `--rendertiddler` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender an individual tiddler as a specified ContentType, defaulting to `text/html` and save it to the specified filename.\n\nOptionally the title of a template tiddler can be specified, in which case the template tiddler is rendered with the \"currentTiddler\" variable set to the tiddler that is being rendered (the first parameter value).\n\nA name and value for an additional variable may optionally also be specified.\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>] [<name>] [<value>]\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n\nFor example, the following command saves all tiddlers matching the filter `[tag[done]]` to a JSON file titled `output.json` by employing the core template `$:/core/templates/exporters/JsonFile`.\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```\n"
        },
        "$:/language/Help/rendertiddlers": {
            "title": "$:/language/Help/rendertiddlers",
            "description": "Render tiddlers matching a filter to a specified ContentType",
            "text": "(Note: The `--rendertiddlers` command is deprecated in favour of the new, more flexible `--render` command)\n\nRender a set of tiddlers matching a filter to separate files of a specified ContentType (defaults to `text/html`) and extension (defaults to `.html`).\n\n```\n--rendertiddlers '<filter>' <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\nFor example:\n\n```\n--rendertiddlers '[!is[system]]' $:/core/templates/static.tiddler.html ./static text/plain\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny files in the target directory are deleted unless the ''noclean'' flag is specified. The target directory is recursively created if it is missing.\n"
        },
        "$:/language/Help/save": {
            "title": "$:/language/Help/save",
            "description": "Saves individual raw tiddlers to files",
            "text": "Saves individual tiddlers identified by a filter in their raw text or binary format to the specified files.\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': A filter identifying the tiddler(s) to be saved\n* ''filename-filter'': Optional filter transforming tiddler titles into pathnames. If omitted, defaults to `[is[tiddler]]`, which uses the unchanged tiddler title as the filename\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nNotes:\n\n* The output directory is not cleared of any existing files\n* Any missing directories in the path to the filename are automatically created.\n* When saving a tiddler with spaces in its title, take care to use both the quotes required by your shell and also TiddlyWiki's double square brackets : `--save \"[[Motovun Jack.jpg]]\"`\n* The filename filter is evaluated with the selected items being set to the title of the tiddler currently being saved, allowing the title to be used as the basis for computing the filename. For example `[encodeuricomponent[]addprefix[static/]]` applies URI encoding to each title, and then adds the prefix `static/`\n* The `--save` command is a more flexible replacement for both the `--savetiddler` and `--savetiddlers` commands, which are deprecated\n\nExamples:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- saves all non-system image tiddlers as files in the subdirectory \"tiddlers\" with URL-encoded titles\n"
        },
        "$:/language/Help/savetiddler": {
            "title": "$:/language/Help/savetiddler",
            "description": "Saves a raw tiddler to a file",
            "text": "(Note: The `--savetiddler` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves an individual tiddler in its raw text or binary format to the specified filename.\n\n```\n--savetiddler <title> <filename>\n```\n\nBy default, the filename is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nAny missing directories in the path to the filename are automatically created.\n"
        },
        "$:/language/Help/savetiddlers": {
            "title": "$:/language/Help/savetiddlers",
            "description": "Saves a group of raw tiddlers to a directory",
            "text": "(Note: The `--savetiddlers` command is deprecated in favour of the new, more flexible `--save` command)\n\nSaves a group of tiddlers in their raw text or binary format to the specified directory.\n\n```\n--savetiddlers <filter> <pathname> [\"noclean\"]\n```\n\nBy default, the pathname is resolved relative to the `output` subdirectory of the edition directory. The `--output` command can be used to direct output to a different directory.\n\nThe output directory is cleared of existing files before saving the specified files. The deletion can be disabled by specifying the ''noclean'' flag.\n\nAny missing directories in the pathname are automatically created.\n"
        },
        "$:/language/Help/savewikifolder": {
            "title": "$:/language/Help/savewikifolder",
            "description": "Saves a wiki to a new wiki folder",
            "text": "<<.from-version \"5.1.20\">> Saves the current wiki as a wiki folder, including tiddlers, plugins and configuration:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* The target wiki folder must be empty or non-existent\n* The filter specifies which tiddlers should be included. It is optional, defaulting to `[all[tiddlers]]`\n* Plugins from the official plugin library are replaced with references to those plugins in the `tiddlywiki.info` file\n* Custom plugins are unpacked into their own folder\n\nA common usage is to convert a TiddlyWiki HTML file into a wiki folder:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
        },
        "$:/language/Help/server": {
            "title": "$:/language/Help/server",
            "description": "Provides an HTTP server interface to TiddlyWiki (deprecated in favour of the new listen command)",
            "text": "Legacy command to serve a wiki over HTTP.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\n```\n\nThe parameters are:\n\n* ''port'' - port number on which to listen; non-numeric values are interpreted as a system environment variable from which the port number is extracted (defaults to \"8080\")\n* ''root-tiddler'' - the tiddler to serve at the root (defaults to \"$:/core/save/all\")\n* ''root-render-type'' - the content type to which the root tiddler should be rendered (defaults to \"text/plain\")\n* ''root-serve-type'' - the content type with which the root tiddler should be served (defaults to \"text/html\")\n* ''username'' - the default username for signing edits\n* ''password'' - optional password for basic authentication\n* ''host'' - optional hostname to serve from (defaults to \"127.0.0.1\" aka \"localhost\")\n* ''path-prefix'' - optional prefix for paths\n* ''debug-level'' - optional debug level; set to \"debug\" to view request details (defaults to \"none\")\n\nIf the password parameter is specified then the browser will prompt the user for the username and password. Note that the password is transmitted in plain text so this implementation should only be used on a trusted network or over HTTPS.\n\nFor example:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\nThe username and password can be specified as empty strings if you need to set the hostname or pathprefix and don't want to require a password.\n\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\nUsing an address like this exposes your system to the local network. For information on opening up your instance to the entire local network, and possible security concerns, see the WebServer tiddler at TiddlyWiki.com.\n\nTo run multiple TiddlyWiki servers at the same time you'll need to put each one on a different port. It can be useful to use an environment variable to pass the port number to the Node.js process. This example references an environment variable called \"MY_PORT_NUMBER\":\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n"
        },
        "$:/language/Help/setfield": {
            "title": "$:/language/Help/setfield",
            "description": "Prepares external tiddlers for use",
            "text": "//Note that this command is experimental and may change or be replaced before being finalised//\n\nSets the specified field of a group of tiddlers to the result of wikifying a template tiddler with the `currentTiddler` variable set to the tiddler.\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\nThe parameters are:\n\n* ''filter'' - filter identifying the tiddlers to be affected\n* ''fieldname'' - the field to modify (defaults to \"text\")\n* ''templatetitle'' - the tiddler to wikify into the specified field. If blank or missing then the specified field is deleted\n* ''rendertype'' - the text type to render (defaults to \"text/plain\"; \"text/html\" can be used to include HTML tags)\n"
        },
        "$:/language/Help/unpackplugin": {
            "title": "$:/language/Help/unpackplugin",
            "description": "Unpack the payload tiddlers from a plugin",
            "text": "Extract the payload tiddlers from a plugin, creating them as ordinary tiddlers:\n\n```\n--unpackplugin <title>\n```\n"
        },
        "$:/language/Help/verbose": {
            "title": "$:/language/Help/verbose",
            "description": "Triggers verbose output mode",
            "text": "Triggers verbose output, useful for debugging\n\n```\n--verbose\n```\n"
        },
        "$:/language/Help/version": {
            "title": "$:/language/Help/version",
            "description": "Displays the version number of TiddlyWiki",
            "text": "Displays the version number of TiddlyWiki.\n\n```\n--version\n```\n"
        },
        "$:/language/Import/Imported/Hint": {
            "title": "$:/language/Import/Imported/Hint",
            "text": "The following tiddlers were imported:"
        },
        "$:/language/Import/Listing/Cancel/Caption": {
            "title": "$:/language/Import/Listing/Cancel/Caption",
            "text": "Cancel"
        },
        "$:/language/Import/Listing/Hint": {
            "title": "$:/language/Import/Listing/Hint",
            "text": "These tiddlers are ready to import:"
        },
        "$:/language/Import/Listing/Import/Caption": {
            "title": "$:/language/Import/Listing/Import/Caption",
            "text": "Import"
        },
        "$:/language/Import/Listing/Select/Caption": {
            "title": "$:/language/Import/Listing/Select/Caption",
            "text": "Select"
        },
        "$:/language/Import/Listing/Status/Caption": {
            "title": "$:/language/Import/Listing/Status/Caption",
            "text": "Status"
        },
        "$:/language/Import/Listing/Title/Caption": {
            "title": "$:/language/Import/Listing/Title/Caption",
            "text": "Title"
        },
        "$:/language/Import/Listing/Preview": {
            "title": "$:/language/Import/Listing/Preview",
            "text": "Preview:"
        },
        "$:/language/Import/Listing/Preview/Text": {
            "title": "$:/language/Import/Listing/Preview/Text",
            "text": "Text"
        },
        "$:/language/Import/Listing/Preview/TextRaw": {
            "title": "$:/language/Import/Listing/Preview/TextRaw",
            "text": "Text (Raw)"
        },
        "$:/language/Import/Listing/Preview/Fields": {
            "title": "$:/language/Import/Listing/Preview/Fields",
            "text": "Fields"
        },
        "$:/language/Import/Listing/Preview/Diff": {
            "title": "$:/language/Import/Listing/Preview/Diff",
            "text": "Diff"
        },
        "$:/language/Import/Listing/Preview/DiffFields": {
            "title": "$:/language/Import/Listing/Preview/DiffFields",
            "text": "Diff (Fields)"
        },
        "$:/language/Import/Listing/Rename/Tooltip": {
            "title": "$:/language/Import/Listing/Rename/Tooltip",
            "text": "Rename tiddler before importing"
        },
        "$:/language/Import/Listing/Rename/Prompt": {
            "title": "$:/language/Import/Listing/Rename/Prompt",
            "text": "Rename to:"
        },
        "$:/language/Import/Listing/Rename/ConfirmRename": {
            "title": "$:/language/Import/Listing/Rename/ConfirmRename",
            "text": "Rename tiddler"
        },
        "$:/language/Import/Listing/Rename/CancelRename": {
            "title": "$:/language/Import/Listing/Rename/CancelRename",
            "text": "Cancel"
        },
        "$:/language/Import/Listing/Rename/OverwriteWarning": {
            "title": "$:/language/Import/Listing/Rename/OverwriteWarning",
            "text": "A tiddler with this title already exists."
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
            "text": "Blocked incompatible or obsolete plugin."
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
            "text": "Blocked plugin (due to incoming <<incoming>> not being newer than existing <<existing>>)."
        },
        "$:/language/Import/Upgrader/Plugins/Upgraded": {
            "title": "$:/language/Import/Upgrader/Plugins/Upgraded",
            "text": "Upgraded plugin from <<incoming>> to <<upgraded>>."
        },
        "$:/language/Import/Upgrader/State/Suppressed": {
            "title": "$:/language/Import/Upgrader/State/Suppressed",
            "text": "Blocked temporary state tiddler."
        },
        "$:/language/Import/Upgrader/System/Suppressed": {
            "title": "$:/language/Import/Upgrader/System/Suppressed",
            "text": "Blocked system tiddler."
        },
        "$:/language/Import/Upgrader/System/Warning": {
            "title": "$:/language/Import/Upgrader/System/Warning",
            "text": "Core module tiddler."
        },
        "$:/language/Import/Upgrader/System/Alert": {
            "title": "$:/language/Import/Upgrader/System/Alert",
            "text": "You are about to import a tiddler that will overwrite a core module tiddler. This is not recommended as it may make the system unstable."
        },
        "$:/language/Import/Upgrader/ThemeTweaks/Created": {
            "title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
            "text": "Migrated theme tweak from <$text text=<<from>>/>."
        },
        "$:/language/AboveStory/ClassicPlugin/Warning": {
            "title": "$:/language/AboveStory/ClassicPlugin/Warning",
            "text": "It looks like you are trying to load a plugin designed for ~TiddlyWiki Classic. Please note that [[these plugins do not work with TiddlyWiki version 5.x.x|https://tiddlywiki.com/#TiddlyWikiClassic]]. ~TiddlyWiki Classic plugins detected:"
        },
        "$:/language/BinaryWarning/Prompt": {
            "title": "$:/language/BinaryWarning/Prompt",
            "text": "This tiddler contains binary data"
        },
        "$:/language/ClassicWarning/Hint": {
            "title": "$:/language/ClassicWarning/Hint",
            "text": "This tiddler is written in TiddlyWiki Classic wiki text format, which is not fully compatible with TiddlyWiki version 5. See https://tiddlywiki.com/static/Upgrading.html for more details."
        },
        "$:/language/ClassicWarning/Upgrade/Caption": {
            "title": "$:/language/ClassicWarning/Upgrade/Caption",
            "text": "upgrade"
        },
        "$:/language/CloseAll/Button": {
            "title": "$:/language/CloseAll/Button",
            "text": "close all"
        },
        "$:/language/ColourPicker/Recent": {
            "title": "$:/language/ColourPicker/Recent",
            "text": "Recent:"
        },
        "$:/language/ConfirmCancelTiddler": {
            "title": "$:/language/ConfirmCancelTiddler",
            "text": "Do you wish to discard changes to the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmDeleteTiddler": {
            "title": "$:/language/ConfirmDeleteTiddler",
            "text": "Do you wish to delete the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmOverwriteTiddler": {
            "title": "$:/language/ConfirmOverwriteTiddler",
            "text": "Do you wish to overwrite the tiddler \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmEditShadowTiddler": {
            "title": "$:/language/ConfirmEditShadowTiddler",
            "text": "You are about to edit a ShadowTiddler. Any changes will override the default system making future upgrades non-trivial. Are you sure you want to edit \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmAction": {
            "title": "$:/language/ConfirmAction",
            "text": "Do you wish to proceed?"
        },
        "$:/language/Count": {
            "title": "$:/language/Count",
            "text": "count"
        },
        "$:/language/DefaultNewTiddlerTitle": {
            "title": "$:/language/DefaultNewTiddlerTitle",
            "text": "New Tiddler"
        },
        "$:/language/Diffs/CountMessage": {
            "title": "$:/language/Diffs/CountMessage",
            "text": "<<diff-count>> differences"
        },
        "$:/language/DropMessage": {
            "title": "$:/language/DropMessage",
            "text": "Drop here (or use the 'Escape' key to cancel)"
        },
        "$:/language/Encryption/Cancel": {
            "title": "$:/language/Encryption/Cancel",
            "text": "Cancel"
        },
        "$:/language/Encryption/ConfirmClearPassword": {
            "title": "$:/language/Encryption/ConfirmClearPassword",
            "text": "Do you wish to clear the password? This will remove the encryption applied when saving this wiki"
        },
        "$:/language/Encryption/PromptSetPassword": {
            "title": "$:/language/Encryption/PromptSetPassword",
            "text": "Set a new password for this TiddlyWiki"
        },
        "$:/language/Encryption/Username": {
            "title": "$:/language/Encryption/Username",
            "text": "Username"
        },
        "$:/language/Encryption/Password": {
            "title": "$:/language/Encryption/Password",
            "text": "Password"
        },
        "$:/language/Encryption/RepeatPassword": {
            "title": "$:/language/Encryption/RepeatPassword",
            "text": "Repeat password"
        },
        "$:/language/Encryption/PasswordNoMatch": {
            "title": "$:/language/Encryption/PasswordNoMatch",
            "text": "Passwords do not match"
        },
        "$:/language/Encryption/SetPassword": {
            "title": "$:/language/Encryption/SetPassword",
            "text": "Set password"
        },
        "$:/language/Error/Caption": {
            "title": "$:/language/Error/Caption",
            "text": "Error"
        },
        "$:/language/Error/EditConflict": {
            "title": "$:/language/Error/EditConflict",
            "text": "File changed on server"
        },
        "$:/language/Error/Filter": {
            "title": "$:/language/Error/Filter",
            "text": "Filter error"
        },
        "$:/language/Error/FilterSyntax": {
            "title": "$:/language/Error/FilterSyntax",
            "text": "Syntax error in filter expression"
        },
        "$:/language/Error/FilterRunPrefix": {
            "title": "$:/language/Error/FilterRunPrefix",
            "text": "Filter Error: Unknown prefix for filter run"
        },
        "$:/language/Error/IsFilterOperator": {
            "title": "$:/language/Error/IsFilterOperator",
            "text": "Filter Error: Unknown operand for the 'is' filter operator"
        },
        "$:/language/Error/FormatFilterOperator": {
            "title": "$:/language/Error/FormatFilterOperator",
            "text": "Filter Error: Unknown suffix for the 'format' filter operator"
        },
        "$:/language/Error/LoadingPluginLibrary": {
            "title": "$:/language/Error/LoadingPluginLibrary",
            "text": "Error loading plugin library"
        },
        "$:/language/Error/NetworkErrorAlert": {
            "title": "$:/language/Error/NetworkErrorAlert",
            "text": "`<h2>''Network Error''</h2>It looks like the connection to the server has been lost. This may indicate a problem with your network connection. Please attempt to restore network connectivity before continuing.<br><br>''Any unsaved changes will be automatically synchronised when connectivity is restored''.`"
        },
        "$:/language/Error/RecursiveTransclusion": {
            "title": "$:/language/Error/RecursiveTransclusion",
            "text": "Recursive transclusion error in transclude widget"
        },
        "$:/language/Error/RetrievingSkinny": {
            "title": "$:/language/Error/RetrievingSkinny",
            "text": "Error retrieving skinny tiddler list"
        },
        "$:/language/Error/SavingToTWEdit": {
            "title": "$:/language/Error/SavingToTWEdit",
            "text": "Error saving to TWEdit"
        },
        "$:/language/Error/WhileSaving": {
            "title": "$:/language/Error/WhileSaving",
            "text": "Error while saving"
        },
        "$:/language/Error/XMLHttpRequest": {
            "title": "$:/language/Error/XMLHttpRequest",
            "text": "XMLHttpRequest error code"
        },
        "$:/language/InternalJavaScriptError/Title": {
            "title": "$:/language/InternalJavaScriptError/Title",
            "text": "Internal JavaScript Error"
        },
        "$:/language/InternalJavaScriptError/Hint": {
            "title": "$:/language/InternalJavaScriptError/Hint",
            "text": "Well, this is embarrassing. It is recommended that you restart TiddlyWiki by refreshing your browser"
        },
        "$:/language/InvalidFieldName": {
            "title": "$:/language/InvalidFieldName",
            "text": "Illegal characters in field name \"<$text text=<<fieldName>>/>\". Fields can only contain lowercase letters, digits and the characters underscore (`_`), hyphen (`-`) and period (`.`)"
        },
        "$:/language/LayoutSwitcher/Description": {
            "title": "$:/language/LayoutSwitcher/Description",
            "text": "Open the layout switcher"
        },
        "$:/language/LazyLoadingWarning": {
            "title": "$:/language/LazyLoadingWarning",
            "text": "<p>Trying to load external content from ''<$text text={{!!_canonical_uri}}/>''</p><p>If this message doesn't disappear, either the tiddler content type doesn't match the type of the external content, or you may be using a browser that doesn't support external content for wikis loaded as standalone files. See https://tiddlywiki.com/#ExternalText</p>"
        },
        "$:/language/LoginToTiddlySpace": {
            "title": "$:/language/LoginToTiddlySpace",
            "text": "Login to TiddlySpace"
        },
        "$:/language/Manager/Controls/FilterByTag/None": {
            "title": "$:/language/Manager/Controls/FilterByTag/None",
            "text": "(none)"
        },
        "$:/language/Manager/Controls/FilterByTag/Prompt": {
            "title": "$:/language/Manager/Controls/FilterByTag/Prompt",
            "text": "Filter by tag:"
        },
        "$:/language/Manager/Controls/Order/Prompt": {
            "title": "$:/language/Manager/Controls/Order/Prompt",
            "text": "Reverse order"
        },
        "$:/language/Manager/Controls/Search/Placeholder": {
            "title": "$:/language/Manager/Controls/Search/Placeholder",
            "text": "Search"
        },
        "$:/language/Manager/Controls/Search/Prompt": {
            "title": "$:/language/Manager/Controls/Search/Prompt",
            "text": "Search:"
        },
        "$:/language/Manager/Controls/Show/Option/Tags": {
            "title": "$:/language/Manager/Controls/Show/Option/Tags",
            "text": "tags"
        },
        "$:/language/Manager/Controls/Show/Option/Tiddlers": {
            "title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
            "text": "tiddlers"
        },
        "$:/language/Manager/Controls/Show/Prompt": {
            "title": "$:/language/Manager/Controls/Show/Prompt",
            "text": "Show:"
        },
        "$:/language/Manager/Controls/Sort/Prompt": {
            "title": "$:/language/Manager/Controls/Sort/Prompt",
            "text": "Sort by:"
        },
        "$:/language/Manager/Item/Colour": {
            "title": "$:/language/Manager/Item/Colour",
            "text": "Colour"
        },
        "$:/language/Manager/Item/Fields": {
            "title": "$:/language/Manager/Item/Fields",
            "text": "Fields"
        },
        "$:/language/Manager/Item/Icon/None": {
            "title": "$:/language/Manager/Item/Icon/None",
            "text": "(none)"
        },
        "$:/language/Manager/Item/Icon": {
            "title": "$:/language/Manager/Item/Icon",
            "text": "Icon"
        },
        "$:/language/Manager/Item/RawText": {
            "title": "$:/language/Manager/Item/RawText",
            "text": "Raw text"
        },
        "$:/language/Manager/Item/Tags": {
            "title": "$:/language/Manager/Item/Tags",
            "text": "Tags"
        },
        "$:/language/Manager/Item/Tools": {
            "title": "$:/language/Manager/Item/Tools",
            "text": "Tools"
        },
        "$:/language/Manager/Item/WikifiedText": {
            "title": "$:/language/Manager/Item/WikifiedText",
            "text": "Wikified text"
        },
        "$:/language/MissingTiddler/Hint": {
            "title": "$:/language/MissingTiddler/Hint",
            "text": "Missing tiddler \"<$text text=<<currentTiddler>>/>\" -- click {{||$:/core/ui/Buttons/edit}} to create"
        },
        "$:/language/No": {
            "title": "$:/language/No",
            "text": "No"
        },
        "$:/language/OfficialPluginLibrary": {
            "title": "$:/language/OfficialPluginLibrary",
            "text": "Official ~TiddlyWiki Plugin Library"
        },
        "$:/language/OfficialPluginLibrary/Hint": {
            "title": "$:/language/OfficialPluginLibrary/Hint",
            "text": "The official ~TiddlyWiki plugin library at tiddlywiki.com. Plugins, themes and language packs are maintained by the core team."
        },
        "$:/language/PageTemplate/Description": {
            "title": "$:/language/PageTemplate/Description",
            "text": "the default ~TiddlyWiki layout"
        },
        "$:/language/PageTemplate/Name": {
            "title": "$:/language/PageTemplate/Name",
            "text": "Default ~PageTemplate"
        },
        "$:/language/PluginReloadWarning": {
            "title": "$:/language/PluginReloadWarning",
            "text": "Please save {{$:/core/ui/Buttons/save-wiki}} and reload {{$:/core/ui/Buttons/refresh}} to allow changes to ~JavaScript plugins to take effect"
        },
        "$:/language/RecentChanges/DateFormat": {
            "title": "$:/language/RecentChanges/DateFormat",
            "text": "DDth MMM YYYY"
        },
        "$:/language/Shortcuts/Input/AdvancedSearch/Hint": {
            "title": "$:/language/Shortcuts/Input/AdvancedSearch/Hint",
            "text": "Open the ~AdvancedSearch panel from within the sidebar search field"
        },
        "$:/language/Shortcuts/Input/Accept/Hint": {
            "title": "$:/language/Shortcuts/Input/Accept/Hint",
            "text": "Accept the selected item"
        },
        "$:/language/Shortcuts/Input/AcceptVariant/Hint": {
            "title": "$:/language/Shortcuts/Input/AcceptVariant/Hint",
            "text": "Accept the selected item (variant)"
        },
        "$:/language/Shortcuts/Input/Cancel/Hint": {
            "title": "$:/language/Shortcuts/Input/Cancel/Hint",
            "text": "Clear the input field"
        },
        "$:/language/Shortcuts/Input/Down/Hint": {
            "title": "$:/language/Shortcuts/Input/Down/Hint",
            "text": "Select the next item"
        },
        "$:/language/Shortcuts/Input/Tab-Left/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Left/Hint",
            "text": "Select the previous Tab"
        },
        "$:/language/Shortcuts/Input/Tab-Right/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Right/Hint",
            "text": "Select the next Tab"
        },
        "$:/language/Shortcuts/Input/Up/Hint": {
            "title": "$:/language/Shortcuts/Input/Up/Hint",
            "text": "Select the previous item"
        },
        "$:/language/Shortcuts/SidebarLayout/Hint": {
            "title": "$:/language/Shortcuts/SidebarLayout/Hint",
            "text": "Change the sidebar layout"
        },
        "$:/language/Switcher/Subtitle/theme": {
            "title": "$:/language/Switcher/Subtitle/theme",
            "text": "Switch Theme"
        },
        "$:/language/Switcher/Subtitle/layout": {
            "title": "$:/language/Switcher/Subtitle/layout",
            "text": "Switch Layout"
        },
        "$:/language/Switcher/Subtitle/language": {
            "title": "$:/language/Switcher/Subtitle/language",
            "text": "Switch Language"
        },
        "$:/language/Switcher/Subtitle/palette": {
            "title": "$:/language/Switcher/Subtitle/palette",
            "text": "Switch Palette"
        },
        "$:/language/SystemTiddler/Tooltip": {
            "title": "$:/language/SystemTiddler/Tooltip",
            "text": "This is a system tiddler"
        },
        "$:/language/SystemTiddlers/Include/Prompt": {
            "title": "$:/language/SystemTiddlers/Include/Prompt",
            "text": "Include system tiddlers"
        },
        "$:/language/TagManager/Colour/Heading": {
            "title": "$:/language/TagManager/Colour/Heading",
            "text": "Colour"
        },
        "$:/language/TagManager/Count/Heading": {
            "title": "$:/language/TagManager/Count/Heading",
            "text": "Count"
        },
        "$:/language/TagManager/Icon/Heading": {
            "title": "$:/language/TagManager/Icon/Heading",
            "text": "Icon"
        },
        "$:/language/TagManager/Icons/None": {
            "title": "$:/language/TagManager/Icons/None",
            "text": "None"
        },
        "$:/language/TagManager/Info/Heading": {
            "title": "$:/language/TagManager/Info/Heading",
            "text": "Info"
        },
        "$:/language/TagManager/Tag/Heading": {
            "title": "$:/language/TagManager/Tag/Heading",
            "text": "Tag"
        },
        "$:/language/Tiddler/DateFormat": {
            "title": "$:/language/Tiddler/DateFormat",
            "text": "DDth MMM YYYY at hh12:0mmam"
        },
        "$:/language/UnsavedChangesWarning": {
            "title": "$:/language/UnsavedChangesWarning",
            "text": "You have unsaved changes in TiddlyWiki"
        },
        "$:/language/Yes": {
            "title": "$:/language/Yes",
            "text": "Yes"
        },
        "$:/language/Modals/Download": {
            "title": "$:/language/Modals/Download",
            "subtitle": "Download changes",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/DownloadingChanges.html",
            "text": "Your browser only supports manual saving.\n\nTo save your modified wiki, right click on the download link below and select \"Download file\" or \"Save file\", and then choose the folder and filename.\n\n//You can marginally speed things up by clicking the link with the control key (Windows) or the options/alt key (Mac OS X). You will not be prompted for the folder or filename, but your browser is likely to give it an unrecognisable name -- you may need to rename the file to include an `.html` extension before you can do anything useful with it.//\n\nOn smartphones that do not allow files to be downloaded you can instead bookmark the link, and then sync your bookmarks to a desktop computer from where the wiki can be saved normally.\n"
        },
        "$:/language/Modals/SaveInstructions": {
            "title": "$:/language/Modals/SaveInstructions",
            "subtitle": "Save your work",
            "footer": "<$button message=\"tm-close-tiddler\">Close</$button>",
            "help": "https://tiddlywiki.com/static/SavingChanges.html",
            "text": "Your changes to this wiki need to be saved as a ~TiddlyWiki HTML file.\n\n!!! Desktop browsers\n\n# Select ''Save As'' from the ''File'' menu\n# Choose a filename and location\n#* Some browsers also require you to explicitly specify the file saving format as ''Webpage, HTML only'' or similar\n# Close this tab\n\n!!! Smartphone browsers\n\n# Create a bookmark to this page\n#* If you've got iCloud or Google Sync set up then the bookmark will automatically sync to your desktop where you can open it and save it as above\n# Close this tab\n\n//If you open the bookmark again in Mobile Safari you will see this message again. If you want to go ahead and use the file, just click the ''close'' button below//\n"
        },
        "$:/config/NewJournal/Title": {
            "title": "$:/config/NewJournal/Title",
            "text": "DDth MMM YYYY"
        },
        "$:/config/NewJournal/Text": {
            "title": "$:/config/NewJournal/Text",
            "text": ""
        },
        "$:/config/NewJournal/Tags": {
            "title": "$:/config/NewJournal/Tags",
            "text": "Journal\n"
        },
        "$:/language/Notifications/Save/Done": {
            "title": "$:/language/Notifications/Save/Done",
            "text": "Saved wiki"
        },
        "$:/language/Notifications/Save/Starting": {
            "title": "$:/language/Notifications/Save/Starting",
            "text": "Starting to save wiki"
        },
        "$:/language/Notifications/CopiedToClipboard/Succeeded": {
            "title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
            "text": "Copied to clipboard!"
        },
        "$:/language/Notifications/CopiedToClipboard/Failed": {
            "title": "$:/language/Notifications/CopiedToClipboard/Failed",
            "text": "Failed to copy to clipboard!"
        },
        "$:/language/Search/DefaultResults/Caption": {
            "title": "$:/language/Search/DefaultResults/Caption",
            "text": "List"
        },
        "$:/language/Search/Filter/Caption": {
            "title": "$:/language/Search/Filter/Caption",
            "text": "Filter"
        },
        "$:/language/Search/Filter/Hint": {
            "title": "$:/language/Search/Filter/Hint",
            "text": "Search via a [[filter expression|https://tiddlywiki.com/static/Filters.html]]"
        },
        "$:/language/Search/Filter/Matches": {
            "title": "$:/language/Search/Filter/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches": {
            "title": "$:/language/Search/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Matches/All": {
            "title": "$:/language/Search/Matches/All",
            "text": "All matches:"
        },
        "$:/language/Search/Matches/Title": {
            "title": "$:/language/Search/Matches/Title",
            "text": "Title matches:"
        },
        "$:/language/Search/Search": {
            "title": "$:/language/Search/Search",
            "text": "Search"
        },
        "$:/language/Search/Search/TooShort": {
            "title": "$:/language/Search/Search/TooShort",
            "text": "Search text too short"
        },
        "$:/language/Search/Shadows/Caption": {
            "title": "$:/language/Search/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/Search/Shadows/Hint": {
            "title": "$:/language/Search/Shadows/Hint",
            "text": "Search for shadow tiddlers"
        },
        "$:/language/Search/Shadows/Matches": {
            "title": "$:/language/Search/Shadows/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/Standard/Caption": {
            "title": "$:/language/Search/Standard/Caption",
            "text": "Standard"
        },
        "$:/language/Search/Standard/Hint": {
            "title": "$:/language/Search/Standard/Hint",
            "text": "Search for standard tiddlers"
        },
        "$:/language/Search/Standard/Matches": {
            "title": "$:/language/Search/Standard/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/Search/System/Caption": {
            "title": "$:/language/Search/System/Caption",
            "text": "System"
        },
        "$:/language/Search/System/Hint": {
            "title": "$:/language/Search/System/Hint",
            "text": "Search for system tiddlers"
        },
        "$:/language/Search/System/Matches": {
            "title": "$:/language/Search/System/Matches",
            "text": "//<small><<resultCount>> matches</small>//"
        },
        "$:/language/SideBar/All/Caption": {
            "title": "$:/language/SideBar/All/Caption",
            "text": "All"
        },
        "$:/language/SideBar/Contents/Caption": {
            "title": "$:/language/SideBar/Contents/Caption",
            "text": "Contents"
        },
        "$:/language/SideBar/Drafts/Caption": {
            "title": "$:/language/SideBar/Drafts/Caption",
            "text": "Drafts"
        },
        "$:/language/SideBar/Explorer/Caption": {
            "title": "$:/language/SideBar/Explorer/Caption",
            "text": "Explorer"
        },
        "$:/language/SideBar/Missing/Caption": {
            "title": "$:/language/SideBar/Missing/Caption",
            "text": "Missing"
        },
        "$:/language/SideBar/More/Caption": {
            "title": "$:/language/SideBar/More/Caption",
            "text": "More"
        },
        "$:/language/SideBar/Open/Caption": {
            "title": "$:/language/SideBar/Open/Caption",
            "text": "Open"
        },
        "$:/language/SideBar/Orphans/Caption": {
            "title": "$:/language/SideBar/Orphans/Caption",
            "text": "Orphans"
        },
        "$:/language/SideBar/Recent/Caption": {
            "title": "$:/language/SideBar/Recent/Caption",
            "text": "Recent"
        },
        "$:/language/SideBar/Shadows/Caption": {
            "title": "$:/language/SideBar/Shadows/Caption",
            "text": "Shadows"
        },
        "$:/language/SideBar/System/Caption": {
            "title": "$:/language/SideBar/System/Caption",
            "text": "System"
        },
        "$:/language/SideBar/Tags/Caption": {
            "title": "$:/language/SideBar/Tags/Caption",
            "text": "Tags"
        },
        "$:/language/SideBar/Tags/Untagged/Caption": {
            "title": "$:/language/SideBar/Tags/Untagged/Caption",
            "text": "untagged"
        },
        "$:/language/SideBar/Tools/Caption": {
            "title": "$:/language/SideBar/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/SideBar/Types/Caption": {
            "title": "$:/language/SideBar/Types/Caption",
            "text": "Types"
        },
        "$:/SiteSubtitle": {
            "title": "$:/SiteSubtitle",
            "text": "a non-linear personal web notebook"
        },
        "$:/SiteTitle": {
            "title": "$:/SiteTitle",
            "text": "My ~TiddlyWiki"
        },
        "$:/language/Snippets/ListByTag": {
            "title": "$:/language/Snippets/ListByTag",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "List of tiddlers by tag",
            "text": "<<list-links \"[tag[task]sort[title]]\">>\n"
        },
        "$:/language/Snippets/MacroDefinition": {
            "title": "$:/language/Snippets/MacroDefinition",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Macro definition",
            "text": "\\define macroName(param1:\"default value\",param2)\nText of the macro\n\\end\n"
        },
        "$:/language/Snippets/Table4x3": {
            "title": "$:/language/Snippets/Table4x3",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table with 4 columns by 3 rows",
            "text": "|! |!Alpha |!Beta |!Gamma |!Delta |\n|!One | | | | |\n|!Two | | | | |\n|!Three | | | | |\n"
        },
        "$:/language/Snippets/TableOfContents": {
            "title": "$:/language/Snippets/TableOfContents",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "Table of Contents",
            "text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
        },
        "$:/language/ThemeTweaks/ThemeTweaks": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks",
            "text": "Theme Tweaks"
        },
        "$:/language/ThemeTweaks/ThemeTweaks/Hint": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
            "text": "You can tweak certain aspects of the ''Vanilla'' theme."
        },
        "$:/language/ThemeTweaks/Options": {
            "title": "$:/language/ThemeTweaks/Options",
            "text": "Options"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout",
            "text": "Sidebar layout"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
            "text": "Fixed story, fluid sidebar"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
            "text": "Fluid story, fixed sidebar"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles",
            "text": "Sticky titles"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
            "text": "Causes tiddler titles to \"stick\" to the top of the browser window"
        },
        "$:/language/ThemeTweaks/Options/CodeWrapping": {
            "title": "$:/language/ThemeTweaks/Options/CodeWrapping",
            "text": "Wrap long lines in code blocks"
        },
        "$:/language/ThemeTweaks/Settings": {
            "title": "$:/language/ThemeTweaks/Settings",
            "text": "Settings"
        },
        "$:/language/ThemeTweaks/Settings/FontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/FontFamily",
            "text": "Font family"
        },
        "$:/language/ThemeTweaks/Settings/CodeFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
            "text": "Code font family"
        },
        "$:/language/ThemeTweaks/Settings/EditorFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
            "text": "Editor font family"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImage": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
            "text": "Page background image"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
            "text": "Page background image attachment"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
            "text": "Scroll with tiddlers"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
            "text": "Fixed to window"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
            "text": "Page background image size"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
            "text": "Auto"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
            "text": "Cover"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
            "text": "Contain"
        },
        "$:/language/ThemeTweaks/Metrics": {
            "title": "$:/language/ThemeTweaks/Metrics",
            "text": "Sizes"
        },
        "$:/language/ThemeTweaks/Metrics/FontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/FontSize",
            "text": "Font size"
        },
        "$:/language/ThemeTweaks/Metrics/LineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/LineHeight",
            "text": "Line height"
        },
        "$:/language/ThemeTweaks/Metrics/BodyFontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
            "text": "Font size for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
            "text": "Line height for tiddler body"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
            "text": "Story left position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
            "text": "how far the left margin of the story river<br>(tiddler area) is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop",
            "text": "Story top position"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
            "text": "how far the top margin of the story river<br>is from the top of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight",
            "text": "Story right"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
            "text": "how far the left margin of the sidebar <br>is from the left of the page"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
            "text": "Story width"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
            "text": "the overall width of the story river"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
            "text": "Tiddler width"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
            "text": "within the story river"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
            "text": "Sidebar breakpoint"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
            "text": "the minimum page width at which the story<br>river and sidebar will appear side by side"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
            "text": "Sidebar width"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
            "text": "the width of the sidebar in fluid-fixed layout"
        },
        "$:/language/TiddlerInfo/Advanced/Caption": {
            "title": "$:/language/TiddlerInfo/Advanced/Caption",
            "text": "Advanced"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
            "text": "none"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
            "text": "Plugin Details"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
            "text": "This plugin contains the following shadow tiddlers:"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
            "text": "Shadow Status"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is not a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
            "text": "The tiddler <$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> is a shadow tiddler"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
            "text": "It is defined in the plugin <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
            "text": "It is overridden by an ordinary tiddler"
        },
        "$:/language/TiddlerInfo/Fields/Caption": {
            "title": "$:/language/TiddlerInfo/Fields/Caption",
            "text": "Fields"
        },
        "$:/language/TiddlerInfo/List/Caption": {
            "title": "$:/language/TiddlerInfo/List/Caption",
            "text": "List"
        },
        "$:/language/TiddlerInfo/List/Empty": {
            "title": "$:/language/TiddlerInfo/List/Empty",
            "text": "This tiddler does not have a list"
        },
        "$:/language/TiddlerInfo/Listed/Caption": {
            "title": "$:/language/TiddlerInfo/Listed/Caption",
            "text": "Listed"
        },
        "$:/language/TiddlerInfo/Listed/Empty": {
            "title": "$:/language/TiddlerInfo/Listed/Empty",
            "text": "This tiddler is not listed by any others"
        },
        "$:/language/TiddlerInfo/References/Caption": {
            "title": "$:/language/TiddlerInfo/References/Caption",
            "text": "Backlinks"
        },
        "$:/language/TiddlerInfo/References/Empty": {
            "title": "$:/language/TiddlerInfo/References/Empty",
            "text": "No tiddlers link to this one"
        },
        "$:/language/TiddlerInfo/Tagging/Caption": {
            "title": "$:/language/TiddlerInfo/Tagging/Caption",
            "text": "Tagging"
        },
        "$:/language/TiddlerInfo/Tagging/Empty": {
            "title": "$:/language/TiddlerInfo/Tagging/Empty",
            "text": "No tiddlers are tagged with this one"
        },
        "$:/language/TiddlerInfo/Tools/Caption": {
            "title": "$:/language/TiddlerInfo/Tools/Caption",
            "text": "Tools"
        },
        "$:/language/Docs/Types/application/javascript": {
            "title": "$:/language/Docs/Types/application/javascript",
            "description": "JavaScript code",
            "name": "application/javascript",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/json": {
            "title": "$:/language/Docs/Types/application/json",
            "description": "JSON data",
            "name": "application/json",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/application/x-tiddler-dictionary": {
            "title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
            "description": "Data dictionary",
            "name": "application/x-tiddler-dictionary",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/image/gif": {
            "title": "$:/language/Docs/Types/image/gif",
            "description": "GIF image",
            "name": "image/gif",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/jpeg": {
            "title": "$:/language/Docs/Types/image/jpeg",
            "description": "JPEG image",
            "name": "image/jpeg",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/png": {
            "title": "$:/language/Docs/Types/image/png",
            "description": "PNG image",
            "name": "image/png",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/svg+xml": {
            "title": "$:/language/Docs/Types/image/svg+xml",
            "description": "Structured Vector Graphics image",
            "name": "image/svg+xml",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/image/x-icon": {
            "title": "$:/language/Docs/Types/image/x-icon",
            "description": "ICO format icon file",
            "name": "image/x-icon",
            "group": "Image",
            "group-sort": "1"
        },
        "$:/language/Docs/Types/text/css": {
            "title": "$:/language/Docs/Types/text/css",
            "description": "Static stylesheet",
            "name": "text/css",
            "group": "Developer",
            "group-sort": "2"
        },
        "$:/language/Docs/Types/text/html": {
            "title": "$:/language/Docs/Types/text/html",
            "description": "HTML markup",
            "name": "text/html",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/plain": {
            "title": "$:/language/Docs/Types/text/plain",
            "description": "Plain text",
            "name": "text/plain",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/vnd.tiddlywiki": {
            "title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
            "description": "TiddlyWiki 5",
            "name": "text/vnd.tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/language/Docs/Types/text/x-tiddlywiki": {
            "title": "$:/language/Docs/Types/text/x-tiddlywiki",
            "description": "TiddlyWiki Classic",
            "name": "text/x-tiddlywiki",
            "group": "Text",
            "group-sort": "0"
        },
        "$:/languages/en-GB/icon": {
            "title": "$:/languages/en-GB/icon",
            "type": "image/svg+xml",
            "text": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 60 30\" width=\"1200\" height=\"600\">\n<clipPath id=\"t\">\n\t<path d=\"M30,15 h30 v15 z v15 h-30 z h-30 v-15 z v-15 h30 z\"/>\n</clipPath>\n<path d=\"M0,0 v30 h60 v-30 z\" fill=\"#00247d\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" stroke=\"#fff\" stroke-width=\"6\"/>\n<path d=\"M0,0 L60,30 M60,0 L0,30\" clip-path=\"url(#t)\" stroke=\"#cf142b\" stroke-width=\"4\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#fff\" stroke-width=\"10\"/>\n<path d=\"M30,0 v30 M0,15 h60\" stroke=\"#cf142b\" stroke-width=\"6\"/>\n</svg>\n"
        },
        "$:/languages/en-GB": {
            "title": "$:/languages/en-GB",
            "name": "en-GB",
            "description": "English (British)",
            "author": "JeremyRuston",
            "core-version": ">=5.0.0\"",
            "text": "Stub pseudo-plugin for the default language"
        },
        "$:/core/modules/commander.js": {
            "title": "$:/core/modules/commander.js",
            "text": "/*\\\ntitle: $:/core/modules/commander.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Commander class is a command interpreter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a sequence of commands\n\tcommandTokens: an array of command string tokens\n\twiki: reference to the wiki store object\n\tstreams: {output:, error:}, each of which has a write(string) method\n\tcallback: a callback invoked as callback(err) where err is null if there was no error\n*/\nvar Commander = function(commandTokens,callback,wiki,streams) {\n\tvar path = require(\"path\");\n\tthis.commandTokens = commandTokens;\n\tthis.nextToken = 0;\n\tthis.callback = callback;\n\tthis.wiki = wiki;\n\tthis.streams = streams;\n\tthis.outputPath = path.resolve($tw.boot.wikiPath,$tw.config.wikiOutputSubDir);\n};\n\n/*\nLog a string if verbose flag is set\n*/\nCommander.prototype.log = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str + \"\\n\");\n\t}\n};\n\n/*\nWrite a string if verbose flag is set\n*/\nCommander.prototype.write = function(str) {\n\tif(this.verbose) {\n\t\tthis.streams.output.write(str);\n\t}\n};\n\n/*\nAdd a string of tokens to the command queue\n*/\nCommander.prototype.addCommandTokens = function(commandTokens) {\n\tvar params = commandTokens.slice(0);\n\tparams.unshift(0);\n\tparams.unshift(this.nextToken);\n\tArray.prototype.splice.apply(this.commandTokens,params);\n};\n\n/*\nExecute the sequence of commands and invoke a callback on completion\n*/\nCommander.prototype.execute = function() {\n\tthis.executeNextCommand();\n};\n\n/*\nExecute the next command in the sequence\n*/\nCommander.prototype.executeNextCommand = function() {\n\tvar self = this;\n\t// Invoke the callback if there are no more commands\n\tif(this.nextToken >= this.commandTokens.length) {\n\t\tthis.callback(null);\n\t} else {\n\t\t// Get and check the command token\n\t\tvar commandName = this.commandTokens[this.nextToken++];\n\t\tif(commandName.substr(0,2) !== \"--\") {\n\t\t\tthis.callback(\"Missing command: \" + commandName);\n\t\t} else {\n\t\t\tcommandName = commandName.substr(2); // Trim off the --\n\t\t\t// Accumulate the parameters to the command\n\t\t\tvar params = [];\n\t\t\twhile(this.nextToken < this.commandTokens.length && \n\t\t\t\tthis.commandTokens[this.nextToken].substr(0,2) !== \"--\") {\n\t\t\t\tparams.push(this.commandTokens[this.nextToken++]);\n\t\t\t}\n\t\t\t// Get the command info\n\t\t\tvar command = $tw.commands[commandName],\n\t\t\t\tc,err;\n\t\t\tif(!command) {\n\t\t\t\tthis.callback(\"Unknown command: \" + commandName);\n\t\t\t} else {\n\t\t\t\tif(this.verbose) {\n\t\t\t\t\tthis.streams.output.write(\"Executing command: \" + commandName + \" \" + params.join(\" \") + \"\\n\");\n\t\t\t\t}\n\t\t\t\t// Parse named parameters if required\n\t\t\t\tif(command.info.namedParameterMode) {\n\t\t\t\t\tparams = this.extractNamedParameters(params,command.info.mandatoryParameters);\n\t\t\t\t\tif(typeof params === \"string\") {\n\t\t\t\t\t\treturn this.callback(params);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(command.info.synchronous) {\n\t\t\t\t\t// Synchronous command\n\t\t\t\t\tc = new command.Command(params,this);\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.executeNextCommand();\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Asynchronous command\n\t\t\t\t\tc = new command.Command(params,this,function(err) {\n\t\t\t\t\t\tif(err) {\n\t\t\t\t\t\t\tself.callback(err);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tself.executeNextCommand();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t\terr = c.execute();\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\tthis.callback(err);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nGiven an array of parameter strings `params` in name:value format, and an array of mandatory parameter names in `mandatoryParameters`, returns a hashmap of values or a string if error\n*/\nCommander.prototype.extractNamedParameters = function(params,mandatoryParameters) {\n\tmandatoryParameters = mandatoryParameters || [];\n\tvar errors = [],\n\t\tparamsByName = Object.create(null);\n\t// Extract the parameters\n\t$tw.utils.each(params,function(param) {\n\t\tvar index = param.indexOf(\"=\");\n\t\tif(index < 1) {\n\t\t\terrors.push(\"malformed named parameter: '\" + param + \"'\");\n\t\t}\n\t\tparamsByName[param.slice(0,index)] = $tw.utils.trim(param.slice(index+1));\n\t});\n\t// Check the mandatory parameters are present\n\t$tw.utils.each(mandatoryParameters,function(mandatoryParameter) {\n\t\tif(!$tw.utils.hop(paramsByName,mandatoryParameter)) {\n\t\t\terrors.push(\"missing mandatory parameter: '\" + mandatoryParameter + \"'\");\n\t\t}\n\t});\n\t// Return any errors\n\tif(errors.length > 0) {\n\t\treturn errors.join(\" and\\n\");\n\t} else {\n\t\treturn paramsByName;\t\t\n\t}\n};\n\nCommander.initCommands = function(moduleType) {\n\tmoduleType = moduleType || \"command\";\n\t$tw.commands = {};\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tvar c = $tw.commands[module.info.name] = {};\n\t\t// Add the methods defined by the module\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\tc[f] = module[f];\n\t\t\t}\n\t\t}\n\t});\n};\n\nexports.Commander = Commander;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/commands/build.js": {
            "title": "$:/core/modules/commands/build.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/build.js\ntype: application/javascript\nmodule-type: command\n\nCommand to build a build target\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"build\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\t// Get the build targets defined in the wiki\n\tvar buildTargets = $tw.boot.wikiInfo.build;\n\tif(!buildTargets) {\n\t\treturn \"No build targets defined\";\n\t}\n\t// Loop through each of the specified targets\n\tvar targets;\n\tif(this.params.length > 0) {\n\t\ttargets = this.params;\n\t} else {\n\t\ttargets = Object.keys(buildTargets);\n\t}\n\tfor(var targetIndex=0; targetIndex<targets.length; targetIndex++) {\n\t\tvar target = targets[targetIndex],\n\t\t\tcommands = buildTargets[target];\n\t\tif(!commands) {\n\t\t\treturn \"Build target '\" + target + \"' not found\";\n\t\t}\n\t\t// Add the commands to the queue\n\t\tthis.commander.addCommandTokens(commands);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/clearpassword.js": {
            "title": "$:/core/modules/commands/clearpassword.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/clearpassword.js\ntype: application/javascript\nmodule-type: command\n\nClear password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"clearpassword\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\t$tw.crypto.setPassword(null);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/deletetiddlers.js": {
            "title": "$:/core/modules/commands/deletetiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/deletetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to delete tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"deletetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filter\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\twiki.deleteTiddler(title);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/editions.js": {
            "title": "$:/core/modules/commands/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/editions.js\ntype: application/javascript\nmodule-type: command\n\nCommand to list the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"editions\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\t// Output the list\n\tthis.commander.streams.output.write(\"Available editions:\\n\\n\");\n\tvar editionInfo = $tw.utils.getEditionInfo();\n\t$tw.utils.each(editionInfo,function(info,name) {\n\t\tself.commander.streams.output.write(\"    \" + name + \": \" + info.description + \"\\n\");\n\t});\n\tthis.commander.streams.output.write(\"\\n\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/fetch.js": {
            "title": "$:/core/modules/commands/fetch.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/fetch.js\ntype: application/javascript\nmodule-type: command\n\nCommands to fetch external tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"fetch\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing subcommand and url\";\n\t}\n\tswitch(this.params[0]) {\n\t\tcase \"raw-file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turl: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"file\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turl: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"raw-files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\traw: true,\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\ttransformFilter: this.params[2] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t\tcase \"files\":\n\t\t\treturn this.fetchFiles({\n\t\t\t\turlFilter: this.params[1],\n\t\t\t\timportFilter: this.params[2],\n\t\t\t\ttransformFilter: this.params[3] || \"\",\n\t\t\t\tcallback: this.callback\n\t\t\t});\n\t\t\tbreak;\n\t}\n\treturn null;\n};\n\nCommand.prototype.fetchFiles = function(options) {\n\tvar self = this;\n\t// Get the list of URLs\n\tvar urls;\n\tif(options.url) {\n\t\turls = [options.url]\n\t} else if(options.urlFilter) {\n\t\turls = this.commander.wiki.filterTiddlers(options.urlFilter);\n\t} else {\n\t\treturn \"Missing URL\";\n\t}\n\t// Process each URL in turn\n\tvar next = 0;\n\tvar getNextFile = function(err) {\n\t\tif(err) {\n\t\t\treturn options.callback(err);\n\t\t}\n\t\tif(next < urls.length) {\n\t\t\tself.fetchFile(urls[next++],options,getNextFile);\n\t\t} else {\n\t\t\toptions.callback(null);\n\t\t}\n\t};\n\tgetNextFile(null);\n\t// Success\n\treturn null;\n};\n\nCommand.prototype.fetchFile = function(url,options,callback,redirectCount) {\n\tif(redirectCount > 10) {\n\t\treturn callback(\"Error too many redirects retrieving \" + url);\n\t}\n\tvar self = this,\n\t\tlib = url.substr(0,8) === \"https://\" ? require(\"https\") : require(\"http\");\n\tlib.get(url).on(\"response\",function(response) {\n\t    var type = (response.headers[\"content-type\"] || \"\").split(\";\")[0],\n\t    \tdata = [];\n\t    self.commander.write(\"Reading \" + url + \": \");\n\t    response.on(\"data\",function(chunk) {\n\t        data.push(chunk);\n\t        self.commander.write(\".\");\n\t    });\n\t    response.on(\"end\",function() {\n\t        self.commander.write(\"\\n\");\n\t        if(response.statusCode === 200) {\n\t\t        self.processBody(Buffer.concat(data),type,options,url);\n\t\t        callback(null);\n\t        } else {\n\t        \tif(response.statusCode === 302 || response.statusCode === 303 || response.statusCode === 307) {\n\t        \t\treturn self.fetchFile(response.headers.location,options,callback,redirectCount + 1);\n\t        \t} else {\n\t\t        \treturn callback(\"Error \" + response.statusCode + \" retrieving \" + url)\t        \t\t\n\t        \t}\n\t        }\n\t   \t});\n\t   \tresponse.on(\"error\",function(e) {\n\t\t\tconsole.log(\"Error on GET request: \" + e);\n\t\t\tcallback(e);\n\t   \t});\n\t});\n\treturn null;\n};\n\nCommand.prototype.processBody = function(body,type,options,url) {\n\tvar self = this;\n\t// Collect the tiddlers in a wiki\n\tvar incomingWiki = new $tw.Wiki();\n\tif(options.raw) {\n\t\tvar typeInfo = type ? $tw.config.contentTypeInfo[type] : null,\n\t\t\tencoding = typeInfo ? typeInfo.encoding : \"utf8\";\n\t\tincomingWiki.addTiddler(new $tw.Tiddler({\n\t\t\ttitle: url,\n\t\t\ttype: type,\n\t\t\ttext: body.toString(encoding)\n\t\t}));\n\t} else {\n\t\t// Deserialise the file to extract the tiddlers\n\t\tvar tiddlers = this.commander.wiki.deserializeTiddlers(type || \"text/html\",body.toString(\"utf8\"),{});\n\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\tincomingWiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t});\n\t}\n\t// Filter the tiddlers to select the ones we want\n\tvar filteredTitles = incomingWiki.filterTiddlers(options.importFilter || \"[all[tiddlers]]\");\n\t// Import the selected tiddlers\n\tvar count = 0;\n\tincomingWiki.each(function(tiddler,title) {\n\t\tif(filteredTitles.indexOf(title) !== -1) {\n\t\t\tvar newTiddler;\n\t\t\tif(options.transformFilter) {\n\t\t\t\tvar transformedTitle = (incomingWiki.filterTiddlers(options.transformFilter,null,self.commander.wiki.makeTiddlerIterator([title])) || [\"\"])[0];\n\t\t\t\tif(transformedTitle) {\n\t\t\t\t\tself.commander.log(\"Importing \" + title + \" as \" + transformedTitle)\n\t\t\t\t\tnewTiddler = new $tw.Tiddler(tiddler,{title: transformedTitle});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.commander.log(\"Importing \" + title)\n\t\t\t\tnewTiddler = tiddler;\n\t\t\t}\n\t\t\tself.commander.wiki.importTiddler(newTiddler);\n\t\t\tcount++;\n\t\t}\n\t});\n\tself.commander.log(\"Imported \" + count + \" tiddlers\")\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/help.js": {
            "title": "$:/core/modules/commands/help.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/help.js\ntype: application/javascript\nmodule-type: command\n\nHelp command\n\n\\*/\n(function(){\n\n/*jshint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"help\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar subhelp = this.params[0] || \"default\",\n\t\thelpBase = \"$:/language/Help/\",\n\t\ttext;\n\tif(!this.commander.wiki.getTiddler(helpBase + subhelp)) {\n\t\tsubhelp = \"notfound\";\n\t}\n\t// Wikify the help as formatted text (ie block elements generate newlines)\n\ttext = this.commander.wiki.renderTiddler(\"text/plain-formatted\",helpBase + subhelp);\n\t// Remove any leading linebreaks\n\ttext = text.replace(/^(\\r?\\n)*/g,\"\");\n\tthis.commander.streams.output.write(text);\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/import.js": {
            "title": "$:/core/modules/commands/import.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/import.js\ntype: application/javascript\nmodule-type: command\n\nCommand to import tiddlers from a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"import\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 2) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar filename = self.params[0],\n\t\tdeserializer = self.params[1],\n\t\ttitle = self.params[2] || filename,\n\t\tencoding = self.params[3] || \"utf8\",\n\t\ttext = fs.readFileSync(filename,encoding),\n\t\ttiddlers = this.commander.wiki.deserializeTiddlers(null,text,{title: title},{deserializer: deserializer});\n\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t});\n\tthis.commander.log(tiddlers.length + \" tiddler(s) imported\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/init.js": {
            "title": "$:/core/modules/commands/init.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/init.js\ntype: application/javascript\nmodule-type: command\n\nCommand to initialise an empty wiki folder\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"init\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\t// Check that we don't already have a valid wiki folder\n\tif($tw.boot.wikiTiddlersPath || ($tw.utils.isDirectory($tw.boot.wikiPath) && !$tw.utils.isDirectoryEmpty($tw.boot.wikiPath))) {\n\t\treturn \"Wiki folder is not empty\";\n\t}\n\t// Loop through each of the specified editions\n\tvar editions = this.params.length > 0 ? this.params : [\"empty\"];\n\tfor(var editionIndex=0; editionIndex<editions.length; editionIndex++) {\n\t\tvar editionName = editions[editionIndex];\n\t\t// Check the edition exists\n\t\tvar editionPath = $tw.findLibraryItem(editionName,$tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar));\n\t\tif(!$tw.utils.isDirectory(editionPath)) {\n\t\t\treturn \"Edition '\" + editionName + \"' not found\";\n\t\t}\n\t\t// Copy the edition content\n\t\tvar err = $tw.utils.copyDirectory(editionPath,$tw.boot.wikiPath);\n\t\tif(!err) {\n\t\t\tthis.commander.streams.output.write(\"Copied edition '\" + editionName + \"' to \" + $tw.boot.wikiPath + \"\\n\");\n\t\t} else {\n\t\t\treturn err;\n\t\t}\n\t}\n\t// Tweak the tiddlywiki.info to remove any included wikis\n\tvar packagePath = $tw.boot.wikiPath + \"/tiddlywiki.info\",\n\t\tpackageJson = JSON.parse(fs.readFileSync(packagePath));\n\tdelete packageJson.includeWikis;\n\tfs.writeFileSync(packagePath,JSON.stringify(packageJson,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/listen.js": {
            "title": "$:/core/modules/commands/listen.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/listen.js\ntype: application/javascript\nmodule-type: command\n\nListen for HTTP requests and serve tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"listen\",\n\tsynchronous: true,\n\tnamedParameterMode: true,\n\tmandatoryParameters: [],\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this;\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: self.params\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/load.js": {
            "title": "$:/core/modules/commands/load.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/load.js\ntype: application/javascript\nmodule-type: command\n\nCommand to load tiddlers from a file or directory\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"load\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar tiddlers = $tw.loadTiddlersFromPath(self.params[0]),\n\t\tcount = 0;\n\t$tw.utils.each(tiddlers,function(tiddlerInfo) {\n\t\t$tw.utils.each(tiddlerInfo.tiddlers,function(tiddler) {\n\t\t\tself.commander.wiki.importTiddler(new $tw.Tiddler(tiddler));\n\t\t\tcount++;\n\t\t});\n\t});\n\tif(!count && self.params[1] !== \"noerror\") {\n\t\tself.callback(\"No tiddlers found in file \\\"\" + self.params[0] + \"\\\"\");\n\t} else {\n\t\tself.callback(null);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/makelibrary.js": {
            "title": "$:/core/modules/commands/makelibrary.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/makelibrary.js\ntype: application/javascript\nmodule-type: command\n\nCommand to pack all of the plugins in the library into a plugin tiddler of type \"library\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"makelibrary\",\n\tsynchronous: true\n};\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar wiki = this.commander.wiki,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tupgradeLibraryTitle = this.params[0] || UPGRADE_LIBRARY_TITLE,\n\t\ttiddlers = {};\n\t// Collect up the library plugins\n\tvar collectPlugins = function(folder) {\n\t\t\tvar pluginFolders = $tw.utils.getSubdirectories(folder) || [];\n\t\t\tfor(var p=0; p<pluginFolders.length; p++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(pluginFolders[p])) {\n\t\t\t\t\tpluginFields = $tw.loadPluginFolder(path.resolve(folder,\"./\" + pluginFolders[p]));\n\t\t\t\t\tif(pluginFields && pluginFields.title) {\n\t\t\t\t\t\ttiddlers[pluginFields.title] = pluginFields;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tcollectPublisherPlugins = function(folder) {\n\t\t\tvar publisherFolders = $tw.utils.getSubdirectories(folder) || [];\n\t\t\tfor(var t=0; t<publisherFolders.length; t++) {\n\t\t\t\tif(!$tw.boot.excludeRegExp.test(publisherFolders[t])) {\n\t\t\t\t\tcollectPlugins(path.resolve(folder,\"./\" + publisherFolders[t]));\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.pluginsPath,$tw.config.pluginsEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.themesPath,$tw.config.themesEnvVar),collectPublisherPlugins);\n\t$tw.utils.each($tw.getLibraryItemSearchPaths($tw.config.languagesPath,$tw.config.languagesEnvVar),collectPlugins);\n\t// Save the upgrade library tiddler\n\tvar pluginFields = {\n\t\ttitle: upgradeLibraryTitle,\n\t\ttype: \"application/json\",\n\t\t\"plugin-type\": \"library\",\n\t\t\"text\": JSON.stringify({tiddlers: tiddlers})\n\t};\n\twiki.addTiddler(new $tw.Tiddler(pluginFields));\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/output.js": {
            "title": "$:/core/modules/commands/output.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/output.js\ntype: application/javascript\nmodule-type: command\n\nCommand to set the default output location (defaults to current working directory)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"output\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tvar fs = require(\"fs\"),\n\t\tpath = require(\"path\");\n\tif(this.params.length < 1) {\n\t\treturn \"Missing output path\";\n\t}\n\tthis.commander.outputPath = path.resolve(process.cwd(),this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/password.js": {
            "title": "$:/core/modules/commands/password.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/password.js\ntype: application/javascript\nmodule-type: command\n\nSave password for crypto operations\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"password\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing password\";\n\t}\n\t$tw.crypto.setPassword(this.params[0]);\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/render.js": {
            "title": "$:/core/modules/commands/render.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/render.js\ntype: application/javascript\nmodule-type: command\n\nRender individual tiddlers and save the results to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"render\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing tiddler filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]addsuffix[.html]]\",\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tvarName = this.params[4],\n\t\tvarValue = this.params[5],\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template || title),\n\t\t\tvariables = {currentTiddler: title};\n\t\tif(varName) {\n\t\t\tvariables[varName] = varValue || \"\";\n\t\t}\n\t\tvar widgetNode = wiki.makeWidget(parser,{variables: variables}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Rendering \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddler.js": {
            "title": "$:/core/modules/commands/rendertiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render a tiddler and save it to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"rendertiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttype = this.params[2] || \"text/html\",\n\t\ttemplate = this.params[3],\n\t\tname = this.params[4],\n\t\tvalue = this.params[5],\n\t\tvariables = {};\n\t$tw.utils.createFileDirectories(filename);\n\tif(template) {\n\t\tvariables.currentTiddler = title;\n\t\ttitle = template;\n\t}\n\tif(name && value) {\n\t\tvariables[name] = value;\n\t}\n\tfs.writeFile(filename,this.commander.wiki.renderTiddler(type,title,{variables: variables}),\"utf8\",function(err) {\n\t\tself.callback(err);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/rendertiddlers.js": {
            "title": "$:/core/modules/commands/rendertiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/rendertiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to render several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"rendertiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\ttemplate = this.params[1],\n\t\toutputPath = this.commander.outputPath,\n\t\tpathname = path.resolve(outputPath,this.params[2]),\t\t\n\t\ttype = this.params[3] || \"text/html\",\n\t\textension = this.params[4] || \".html\",\n\t\tdeleteDirectory = (this.params[5] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(template),\n\t\t\twidgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}}),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\tvar text = type === \"text/html\" ? container.innerHTML : container.textContent,\n\t\t\texportPath = null;\n\t\tif($tw.utils.hop($tw.macros,\"tv-get-export-path\")) {\n\t\t\tvar macroPath = $tw.macros[\"tv-get-export-path\"].run.apply(self,[title]);\n\t\t\tif(macroPath) {\n\t\t\t\texportPath = path.resolve(outputPath,macroPath + extension);\n\t\t\t}\n\t\t}\n\t\tvar finalPath = exportPath || path.resolve(pathname,encodeURIComponent(title) + extension);\n\t\t$tw.utils.createFileDirectories(finalPath);\n\t\tfs.writeFileSync(finalPath,text,\"utf8\");\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/save.js": {
            "title": "$:/core/modules/commands/save.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/save.js\ntype: application/javascript\nmodule-type: command\n\nSaves individual tiddlers in their raw text or binary format to the specified files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"save\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename filter\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\ttiddlerFilter = this.params[0],\n\t\tfilenameFilter = this.params[1] || \"[is[tiddler]]\",\n\t\ttiddlers = wiki.filterTiddlers(tiddlerFilter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilepath = path.resolve(self.commander.outputPath,wiki.filterTiddlers(filenameFilter,$tw.rootWidget,wiki.makeTiddlerIterator([title]))[0]);\n\t\tif(self.commander.verbose) {\n\t\t\tconsole.log(\"Saving \\\"\" + title + \"\\\" to \\\"\" + filepath + \"\\\"\");\n\t\t}\n\t\t$tw.utils.createFileDirectories(filepath);\n\t\tfs.writeFileSync(filepath,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savelibrarytiddlers.js": {
            "title": "$:/core/modules/commands/savelibrarytiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savelibrarytiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the subtiddlers of a bundle tiddler as a series of JSON files\n\n--savelibrarytiddlers <tiddler> <tiddler-filter> <pathname> <skinnylisting>\n\nThe tiddler identifies the bundle tiddler that contains the subtiddlers.\n\nThe tiddler filter specifies the plugins to be included.\n\nThe pathname specifies the pathname to the folder in which the JSON files should be saved. The filename is the URL encoded title of the subtiddler.\n\nThe skinnylisting specifies the title of the tiddler to which a JSON catalogue of the subtiddlers will be saved. The JSON file contains the same data as the bundle tiddler but with the `text` field removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savelibrarytiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\tcontainerTitle = this.params[0],\n\t\tfilter = this.params[1],\n\t\tbasepath = this.params[2],\n\t\tskinnyListTitle = this.params[3];\n\t// Get the container tiddler as data\n\tvar containerData = self.commander.wiki.getTiddlerDataCached(containerTitle,undefined);\n\tif(!containerData) {\n\t\treturn \"'\" + containerTitle + \"' is not a tiddler bundle\";\n\t}\n\t// Filter the list of plugins\n\tvar pluginList = [];\n\t$tw.utils.each(containerData.tiddlers,function(tiddler,title) {\n\t\tpluginList.push(title);\n\t});\n\tvar filteredPluginList;\n\tif(filter) {\n\t\tfilteredPluginList = self.commander.wiki.filterTiddlers(filter,null,self.commander.wiki.makeTiddlerIterator(pluginList));\n\t} else {\n\t\tfilteredPluginList = pluginList;\n\t}\n\t// Iterate through the plugins\n\tvar skinnyList = [];\n\t$tw.utils.each(filteredPluginList,function(title) {\n\t\tvar tiddler = containerData.tiddlers[title];\n\t\t// Save each JSON file and collect the skinny data\n\t\tvar pathname = path.resolve(self.commander.outputPath,basepath + encodeURIComponent(title) + \".json\");\n\t\t$tw.utils.createFileDirectories(pathname);\n\t\tfs.writeFileSync(pathname,JSON.stringify(tiddler),\"utf8\");\n\t\t// Collect the skinny list data\n\t\tvar pluginTiddlers = JSON.parse(tiddler.text),\n\t\t\treadmeContent = (pluginTiddlers.tiddlers[title + \"/readme\"] || {}).text,\n\t\t\tdoesRequireReload = !!self.commander.wiki.doesPluginInfoRequireReload(pluginTiddlers),\n\t\t\ticonTiddler = pluginTiddlers.tiddlers[title + \"/icon\"] || {},\n\t\t\ticonType = iconTiddler.type,\n\t\t\ticonText = iconTiddler.text,\n\t\t\ticonContent;\n\t\tif(iconType && iconText) {\n\t\t\ticonContent = $tw.utils.makeDataUri(iconText,iconType);\n\t\t}\n\t\tskinnyList.push($tw.utils.extend({},tiddler,{\n\t\t\ttext: undefined,\n\t\t\treadme: readmeContent,\n\t\t\t\"requires-reload\": doesRequireReload ? \"yes\" : \"no\",\n\t\t\ticon: iconContent\n\t\t}));\n\t});\n\t// Save the catalogue tiddler\n\tif(skinnyListTitle) {\n\t\tself.commander.wiki.setTiddlerData(skinnyListTitle,skinnyList);\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddler.js": {
            "title": "$:/core/modules/commands/savetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddler.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the content of a tiddler to a file\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savetiddler\",\n\tsynchronous: false\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 2) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\ttitle = this.params[0],\n\t\tfilename = path.resolve(this.commander.outputPath,this.params[1]),\n\t\ttiddler = this.commander.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar type = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"};\n\t\t$tw.utils.createFileDirectories(filename);\n\t\tfs.writeFile(filename,tiddler.fields.text,contentTypeInfo.encoding,function(err) {\n\t\t\tself.callback(err);\n\t\t});\n\t} else {\n\t\treturn \"Missing tiddler: \" + title;\n\t}\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savetiddlers.js": {
            "title": "$:/core/modules/commands/savetiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savetiddlers.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save several tiddlers to a folder of files\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"savetiddlers\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing filename\";\n\t}\n\tvar self = this,\n\t\tfs = require(\"fs\"),\n\t\tpath = require(\"path\"),\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tpathname = path.resolve(this.commander.outputPath,this.params[1]),\n\t\tdeleteDirectory = (this.params[2] || \"\").toLowerCase() !== \"noclean\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\tif(deleteDirectory) {\n\t\t$tw.utils.deleteDirectory(pathname);\n\t}\n\t$tw.utils.createDirectory(pathname);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.commander.wiki.getTiddler(title),\n\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\",\n\t\t\tcontentTypeInfo = $tw.config.contentTypeInfo[type] || {encoding: \"utf8\"},\n\t\t\tfilename = path.resolve(pathname,encodeURIComponent(title));\n\t\tfs.writeFileSync(filename,tiddler.fields.text,contentTypeInfo.encoding);\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/savewikifolder.js": {
            "title": "$:/core/modules/commands/savewikifolder.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/savewikifolder.js\ntype: application/javascript\nmodule-type: command\n\nCommand to save the current wiki as a wiki folder\n\n--savewikifolder <wikifolderpath> [<filter>]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"savewikifolder\",\n\tsynchronous: true\n};\n\nvar fs,path;\nif($tw.node) {\n\tfs = require(\"fs\");\n\tpath = require(\"path\");\n}\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing wiki folder path\";\n\t}\n\tvar wikifoldermaker = new WikiFolderMaker(this.params[0],this.params[1],this.commander);\n\treturn wikifoldermaker.save();\n};\n\nfunction WikiFolderMaker(wikiFolderPath,wikiFilter,commander) {\n\tthis.wikiFolderPath = wikiFolderPath;\n\tthis.wikiFilter = wikiFilter || \"[all[tiddlers]]\";\n\tthis.commander = commander;\n\tthis.wiki = commander.wiki;\n\tthis.savedPaths = []; // So that we can detect filename clashes\n}\n\nWikiFolderMaker.prototype.log = function(str) {\n\tif(this.commander.verbose) {\n\t\tconsole.log(str);\n\t}\n};\n\nWikiFolderMaker.prototype.tiddlersToIgnore = [\n\t\"$:/boot/boot.css\",\n\t\"$:/boot/boot.js\",\n\t\"$:/boot/bootprefix.js\",\n\t\"$:/core\",\n\t\"$:/library/sjcl.js\",\n\t\"$:/temp/info-plugin\"\n];\n\n/*\nReturns null if successful, or an error string if there was an error\n*/\nWikiFolderMaker.prototype.save = function() {\n\tvar self = this;\n\t// Check that the output directory doesn't exist\n\tif(fs.existsSync(this.wikiFolderPath) && !$tw.utils.isDirectoryEmpty(this.wikiFolderPath)) {\n\t\treturn \"The unpackwiki command requires that the output wiki folder be empty\";\n\t}\n\t// Get the tiddlers from the source wiki\n\tvar tiddlerTitles = this.wiki.filterTiddlers(this.wikiFilter);\n\t// Initialise a new tiddlwiki.info file\n\tvar newWikiInfo = {};\n\t// Process each incoming tiddler in turn\n\t$tw.utils.each(tiddlerTitles,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tif(self.tiddlersToIgnore.indexOf(title) !== -1) {\n\t\t\t\t// Ignore the core plugin and the ephemeral info plugin\n\t\t\t\tself.log(\"Ignoring tiddler: \" + title);\n\t\t\t} else {\n\t\t\t\tvar type = tiddler.fields.type,\n\t\t\t\t\tpluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif(type === \"application/json\" && pluginType) {\n\t\t\t\t\t// Plugin tiddler\n\t\t\t\t\tvar libraryDetails = self.findPluginInLibrary(title);\n\t\t\t\t\tif(libraryDetails) {\n\t\t\t\t\t\t// A plugin from the core library\n\t\t\t\t\t\tself.log(\"Adding built-in plugin: \" + libraryDetails.name);\n\t\t\t\t\t\tnewWikiInfo[libraryDetails.type] = newWikiInfo[libraryDetails.type]  || [];\n\t\t\t\t\t\t$tw.utils.pushTop(newWikiInfo[libraryDetails.type],libraryDetails.name);\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// A custom plugin\n\t\t\t\t\t\tself.log(\"Processing custom plugin: \" + title);\n\t\t\t\t\t\tself.saveCustomPlugin(tiddler);\n\t\t\t\t\t}\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\t// Ordinary tiddler\n\t\t\t\t\tself.saveTiddler(\"tiddlers\",tiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Save the tiddlywiki.info file\n\tthis.saveJSONFile(\"tiddlywiki.info\",newWikiInfo);\n\tself.log(\"Writing tiddlywiki.info: \" + JSON.stringify(newWikiInfo,null,$tw.config.preferences.jsonSpaces));\n\treturn null;\n};\n\n/*\nTest whether the specified tiddler is a plugin in the plugin library\n*/\nWikiFolderMaker.prototype.findPluginInLibrary = function(title) {\n\tvar parts = title.split(\"/\"),\n\t\tpluginPath, type, name;\n\tif(parts[0] === \"$:\") {\n\t\tif(parts[1] === \"languages\" && parts.length === 3) {\n\t\t\tpluginPath = \"languages\" + path.sep + parts[2];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2];\n\t\t} else if(parts[1] === \"plugins\" || parts[1] === \"themes\" && parts.length === 4) {\n\t\t\tpluginPath = parts[1] + path.sep + parts[2] + path.sep + parts[3];\n\t\t\ttype = parts[1];\n\t\t\tname = parts[2] + \"/\" + parts[3];\n\t\t}\n\t}\n\tif(pluginPath && type && name) {\n\t\tpluginPath = path.resolve($tw.boot.bootPath,\"..\",pluginPath);\n\t\tif(fs.existsSync(pluginPath)) {\n\t\t\treturn {\n\t\t\t\tpluginPath: pluginPath,\n\t\t\t\ttype: type,\n\t\t\t\tname: name\n\t\t\t};\n\t\t}\n\t}\n\treturn false;\n};\n\nWikiFolderMaker.prototype.saveCustomPlugin = function(pluginTiddler) {\n\tvar self = this,\n\t\tpluginTitle = pluginTiddler.fields.title,\n\t\ttitleParts = pluginTitle.split(\"/\"),\n\t\tdirectory = $tw.utils.generateTiddlerFilepath(titleParts[titleParts.length - 1],{\n\t\t\tdirectory: path.resolve(this.wikiFolderPath,pluginTiddler.fields[\"plugin-type\"] + \"s\")\n\t\t}),\n\t\tpluginInfo = pluginTiddler.getFieldStrings({exclude: [\"text\",\"type\"]});\n\tthis.saveJSONFile(directory + path.sep + \"plugin.info\",pluginInfo);\n\tself.log(\"Writing \" + directory + path.sep + \"plugin.info: \" + JSON.stringify(pluginInfo,null,$tw.config.preferences.jsonSpaces));\n\tvar pluginTiddlers = JSON.parse(pluginTiddler.fields.text).tiddlers; // A hashmap of tiddlers in the plugin\n\t$tw.utils.each(pluginTiddlers,function(tiddler) {\n\t\tself.saveTiddler(directory,new $tw.Tiddler(tiddler));\n\t});\n};\n\nWikiFolderMaker.prototype.saveTiddler = function(directory,tiddler) {\n\tvar fileInfo = $tw.utils.generateTiddlerFileInfo(tiddler,{\n\t\tdirectory: path.resolve(this.wikiFolderPath,directory),\n\t\twiki: this.wiki\n\t});\n\t$tw.utils.saveTiddlerToFileSync(tiddler,fileInfo);\n};\n\nWikiFolderMaker.prototype.saveJSONFile = function(filename,json) {\n\tthis.saveTextFile(filename,JSON.stringify(json,null,$tw.config.preferences.jsonSpaces));\n};\n\nWikiFolderMaker.prototype.saveTextFile = function(filename,data) {\n\tthis.saveFile(filename,\"utf8\",data);\n};\n\nWikiFolderMaker.prototype.saveFile = function(filename,encoding,data) {\n\tvar filepath = path.resolve(this.wikiFolderPath,filename);\n\t$tw.utils.createFileDirectories(filepath);\n\tfs.writeFileSync(filepath,data,encoding);\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/server.js": {
            "title": "$:/core/modules/commands/server.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/server.js\ntype: application/javascript\nmodule-type: command\n\nDeprecated legacy command for serving tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Server = require(\"$:/core/modules/server/server.js\").Server;\n\nexports.info = {\n\tname: \"server\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tvar self = this;\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(!$tw.boot.wikiTiddlersPath) {\n\t\t$tw.utils.warning(\"Warning: Wiki folder '\" + $tw.boot.wikiPath + \"' does not exist or is missing a tiddlywiki.info file\");\n\t}\n\t// Set up server\n\tthis.server = new Server({\n\t\twiki: this.commander.wiki,\n\t\tvariables: {\n\t\t\tport: this.params[0],\n\t\t\thost: this.params[6],\n\t\t\t\"root-tiddler\": this.params[1],\n\t\t\t\"root-render-type\": this.params[2],\n\t\t\t\"root-serve-type\": this.params[3],\n\t\t\tusername: this.params[4],\n\t\t\tpassword: this.params[5],\n\t\t\t\"path-prefix\": this.params[7],\n\t\t\t\"debug-level\": this.params[8]\n\t\t}\n\t});\n\tvar nodeServer = this.server.listen();\n\t$tw.hooks.invokeHook(\"th-server-command-post-start\",this.server,nodeServer,\"tiddlywiki\");\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/setfield.js": {
            "title": "$:/core/modules/commands/setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/setfield.js\ntype: application/javascript\nmodule-type: command\n\nCommand to modify selected tiddlers to set a field to the text of a template tiddler that has been wikified with the selected tiddler as the current tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.info = {\n\tname: \"setfield\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 4) {\n\t\treturn \"Missing parameters\";\n\t}\n\tvar self = this,\n\t\twiki = this.commander.wiki,\n\t\tfilter = this.params[0],\n\t\tfieldname = this.params[1] || \"text\",\n\t\ttemplatetitle = this.params[2],\n\t\trendertype = this.params[3] || \"text/plain\",\n\t\ttiddlers = wiki.filterTiddlers(filter);\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar parser = wiki.parseTiddler(templatetitle),\n\t\t\tnewFields = {},\n\t\t\ttiddler = wiki.getTiddler(title);\n\t\tif(parser) {\n\t\t\tvar widgetNode = wiki.makeWidget(parser,{variables: {currentTiddler: title}});\n\t\t\tvar container = $tw.fakeDocument.createElement(\"div\");\n\t\t\twidgetNode.render(container,null);\n\t\t\tnewFields[fieldname] = rendertype === \"text/html\" ? container.innerHTML : container.textContent;\n\t\t} else {\n\t\t\tnewFields[fieldname] = undefined;\n\t\t}\n\t\twiki.addTiddler(new $tw.Tiddler(tiddler,newFields));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/unpackplugin.js": {
            "title": "$:/core/modules/commands/unpackplugin.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/unpackplugin.js\ntype: application/javascript\nmodule-type: command\n\nCommand to extract the shadow tiddlers from within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"unpackplugin\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander,callback) {\n\tthis.params = params;\n\tthis.commander = commander;\n\tthis.callback = callback;\n};\n\nCommand.prototype.execute = function() {\n\tif(this.params.length < 1) {\n\t\treturn \"Missing plugin name\";\n\t}\n\tvar self = this,\n\t\ttitle = this.params[0],\n\t\tpluginData = this.commander.wiki.getTiddlerDataCached(title);\n\tif(!pluginData) {\n\t\treturn \"Plugin '\" + title + \"' not found\";\n\t}\n\t$tw.utils.each(pluginData.tiddlers,function(tiddler) {\n\t\tself.commander.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t});\n\treturn null;\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/verbose.js": {
            "title": "$:/core/modules/commands/verbose.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/verbose.js\ntype: application/javascript\nmodule-type: command\n\nVerbose command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"verbose\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.verbose = true;\n\t// Output the boot message log\n\tthis.commander.streams.output.write(\"Boot log:\\n  \" + $tw.boot.logMessages.join(\"\\n  \") + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/commands/version.js": {
            "title": "$:/core/modules/commands/version.js",
            "text": "/*\\\ntitle: $:/core/modules/commands/version.js\ntype: application/javascript\nmodule-type: command\n\nVersion command\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.info = {\n\tname: \"version\",\n\tsynchronous: true\n};\n\nvar Command = function(params,commander) {\n\tthis.params = params;\n\tthis.commander = commander;\n};\n\nCommand.prototype.execute = function() {\n\tthis.commander.streams.output.write($tw.version + \"\\n\");\n\treturn null; // No error\n};\n\nexports.Command = Command;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "command"
        },
        "$:/core/modules/config.js": {
            "title": "$:/core/modules/config.js",
            "text": "/*\\\ntitle: $:/core/modules/config.js\ntype: application/javascript\nmodule-type: config\n\nCore configuration constants\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.preferences = {};\n\nexports.preferences.notificationDuration = 3 * 1000;\nexports.preferences.jsonSpaces = 4;\n\nexports.textPrimitives = {\n\tupperLetter: \"[A-Z\\u00c0-\\u00d6\\u00d8-\\u00de\\u0150\\u0170]\",\n\tlowerLetter: \"[a-z\\u00df-\\u00f6\\u00f8-\\u00ff\\u0151\\u0171]\",\n\tanyLetter:   \"[A-Za-z0-9\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\",\n\tblockPrefixLetters:\t\"[A-Za-z0-9-_\\u00c0-\\u00d6\\u00d8-\\u00de\\u00df-\\u00f6\\u00f8-\\u00ff\\u0150\\u0170\\u0151\\u0171]\"\n};\n\nexports.textPrimitives.unWikiLink = \"~\";\nexports.textPrimitives.wikiLink = exports.textPrimitives.upperLetter + \"+\" +\n\texports.textPrimitives.lowerLetter + \"+\" +\n\texports.textPrimitives.upperLetter +\n\texports.textPrimitives.anyLetter + \"*\";\n\nexports.htmlEntities = {quot:34, amp:38, apos:39, lt:60, gt:62, nbsp:160, iexcl:161, cent:162, pound:163, curren:164, yen:165, brvbar:166, sect:167, uml:168, copy:169, ordf:170, laquo:171, not:172, shy:173, reg:174, macr:175, deg:176, plusmn:177, sup2:178, sup3:179, acute:180, micro:181, para:182, middot:183, cedil:184, sup1:185, ordm:186, raquo:187, frac14:188, frac12:189, frac34:190, iquest:191, Agrave:192, Aacute:193, Acirc:194, Atilde:195, Auml:196, Aring:197, AElig:198, Ccedil:199, Egrave:200, Eacute:201, Ecirc:202, Euml:203, Igrave:204, Iacute:205, Icirc:206, Iuml:207, ETH:208, Ntilde:209, Ograve:210, Oacute:211, Ocirc:212, Otilde:213, Ouml:214, times:215, Oslash:216, Ugrave:217, Uacute:218, Ucirc:219, Uuml:220, Yacute:221, THORN:222, szlig:223, agrave:224, aacute:225, acirc:226, atilde:227, auml:228, aring:229, aelig:230, ccedil:231, egrave:232, eacute:233, ecirc:234, euml:235, igrave:236, iacute:237, icirc:238, iuml:239, eth:240, ntilde:241, ograve:242, oacute:243, ocirc:244, otilde:245, ouml:246, divide:247, oslash:248, ugrave:249, uacute:250, ucirc:251, uuml:252, yacute:253, thorn:254, yuml:255, OElig:338, oelig:339, Scaron:352, scaron:353, Yuml:376, fnof:402, circ:710, tilde:732, Alpha:913, Beta:914, Gamma:915, Delta:916, Epsilon:917, Zeta:918, Eta:919, Theta:920, Iota:921, Kappa:922, Lambda:923, Mu:924, Nu:925, Xi:926, Omicron:927, Pi:928, Rho:929, Sigma:931, Tau:932, Upsilon:933, Phi:934, Chi:935, Psi:936, Omega:937, alpha:945, beta:946, gamma:947, delta:948, epsilon:949, zeta:950, eta:951, theta:952, iota:953, kappa:954, lambda:955, mu:956, nu:957, xi:958, omicron:959, pi:960, rho:961, sigmaf:962, sigma:963, tau:964, upsilon:965, phi:966, chi:967, psi:968, omega:969, thetasym:977, upsih:978, piv:982, ensp:8194, emsp:8195, thinsp:8201, zwnj:8204, zwj:8205, lrm:8206, rlm:8207, ndash:8211, mdash:8212, lsquo:8216, rsquo:8217, sbquo:8218, ldquo:8220, rdquo:8221, bdquo:8222, dagger:8224, Dagger:8225, bull:8226, hellip:8230, permil:8240, prime:8242, Prime:8243, lsaquo:8249, rsaquo:8250, oline:8254, frasl:8260, euro:8364, image:8465, weierp:8472, real:8476, trade:8482, alefsym:8501, larr:8592, uarr:8593, rarr:8594, darr:8595, harr:8596, crarr:8629, lArr:8656, uArr:8657, rArr:8658, dArr:8659, hArr:8660, forall:8704, part:8706, exist:8707, empty:8709, nabla:8711, isin:8712, notin:8713, ni:8715, prod:8719, sum:8721, minus:8722, lowast:8727, radic:8730, prop:8733, infin:8734, ang:8736, and:8743, or:8744, cap:8745, cup:8746, int:8747, there4:8756, sim:8764, cong:8773, asymp:8776, ne:8800, equiv:8801, le:8804, ge:8805, sub:8834, sup:8835, nsub:8836, sube:8838, supe:8839, oplus:8853, otimes:8855, perp:8869, sdot:8901, lceil:8968, rceil:8969, lfloor:8970, rfloor:8971, lang:9001, rang:9002, loz:9674, spades:9824, clubs:9827, hearts:9829, diams:9830 };\n\nexports.htmlVoidElements = \"area,base,br,col,command,embed,hr,img,input,keygen,link,meta,param,source,track,wbr\".split(\",\");\n\nexports.htmlBlockElements = \"address,article,aside,audio,blockquote,canvas,dd,div,dl,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,hr,li,noscript,ol,output,p,pre,section,table,tfoot,ul,video\".split(\",\");\n\nexports.htmlUnsafeElements = \"script\".split(\",\");\n\n})();\n",
            "type": "application/javascript",
            "module-type": "config"
        },
        "$:/core/modules/deserializers.js": {
            "title": "$:/core/modules/deserializers.js",
            "text": "/*\\\ntitle: $:/core/modules/deserializers.js\ntype: application/javascript\nmodule-type: tiddlerdeserializer\n\nFunctions to deserialise tiddlers from a block of text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nUtility function to parse an old-style tiddler DIV in a *.tid file. It looks like this:\n\n<div title=\"Title\" creator=\"JoeBloggs\" modifier=\"JoeBloggs\" created=\"201102111106\" modified=\"201102111310\" tags=\"myTag [[my long tag]]\">\n<pre>The text of the tiddler (without the expected HTML encoding).\n</pre>\n</div>\n\nNote that the field attributes are HTML encoded, but that the body of the <PRE> tag is not encoded.\n\nWhen these tiddler DIVs are encountered within a TiddlyWiki HTML file then the body is encoded in the usual way.\n*/\nvar parseTiddlerDiv = function(text /* [,fields] */) {\n\t// Slot together the default results\n\tvar result = {};\n\tif(arguments.length > 1) {\n\t\tfor(var f=1; f<arguments.length; f++) {\n\t\t\tvar fields = arguments[f];\n\t\t\tfor(var t in fields) {\n\t\t\t\tresult[t] = fields[t];\t\t\n\t\t\t}\n\t\t}\n\t}\n\t// Parse the DIV body\n\tvar startRegExp = /^\\s*<div\\s+([^>]*)>(\\s*<pre>)?/gi,\n\t\tendRegExp,\n\t\tmatch = startRegExp.exec(text);\n\tif(match) {\n\t\t// Old-style DIVs don't have the <pre> tag\n\t\tif(match[2]) {\n\t\t\tendRegExp = /<\\/pre>\\s*<\\/div>\\s*$/gi;\n\t\t} else {\n\t\t\tendRegExp = /<\\/div>\\s*$/gi;\n\t\t}\n\t\tvar endMatch = endRegExp.exec(text);\n\t\tif(endMatch) {\n\t\t\t// Extract the text\n\t\t\tresult.text = text.substring(match.index + match[0].length,endMatch.index);\n\t\t\t// Process the attributes\n\t\t\tvar attrRegExp = /\\s*([^=\\s]+)\\s*=\\s*(?:\"([^\"]*)\"|'([^']*)')/gi,\n\t\t\t\tattrMatch;\n\t\t\tdo {\n\t\t\t\tattrMatch = attrRegExp.exec(match[1]);\n\t\t\t\tif(attrMatch) {\n\t\t\t\t\tvar name = attrMatch[1];\n\t\t\t\t\tvar value = attrMatch[2] !== undefined ? attrMatch[2] : attrMatch[3];\n\t\t\t\t\tresult[name] = value;\n\t\t\t\t}\n\t\t\t} while(attrMatch);\n\t\t\treturn result;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports[\"application/x-tiddler-html-div\"] = function(text,fields) {\n\treturn [parseTiddlerDiv(text,fields)];\n};\n\nexports[\"application/json\"] = function(text,fields) {\n\tvar incoming,\n\t\tresults = [];\n\ttry {\n\t\tincoming = JSON.parse(text);\n\t} catch(e) {\n\t\tincoming = [{\n\t\t\ttitle: \"JSON error: \" + e,\n\t\t\ttext: \"\"\n\t\t}]\n\t}\n\tif(!$tw.utils.isArray(incoming)) {\n\t\tincoming = [incoming];\n\t}\n\tfor(var t=0; t<incoming.length; t++) {\n\t\tvar incomingFields = incoming[t],\n\t\t\tfields = {};\n\t\tfor(var f in incomingFields) {\n\t\t\tif(typeof incomingFields[f] === \"string\") {\n\t\t\t\tfields[f] = incomingFields[f];\n\t\t\t}\n\t\t}\n\t\tresults.push(fields);\n\t}\n\treturn results;\n};\n\n/*\nParse an HTML file into tiddlers. There are three possibilities:\n# A TiddlyWiki classic HTML file containing `text/x-tiddlywiki` tiddlers\n# A TiddlyWiki5 HTML file containing `text/vnd.tiddlywiki` tiddlers\n# An ordinary HTML file\n*/\nexports[\"text/html\"] = function(text,fields) {\n\t// Check if we've got a store area\n\tvar storeAreaMarkerRegExp = /<div id=[\"']?storeArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\tmatch = storeAreaMarkerRegExp.exec(text);\n\tif(match) {\n\t\t// If so, it's either a classic TiddlyWiki file or an unencrypted TW5 file\n\t\t// First read the normal tiddlers\n\t\tvar results = deserializeTiddlyWikiFile(text,storeAreaMarkerRegExp.lastIndex,!!match[1],fields);\n\t\t// Then any system tiddlers\n\t\tvar systemAreaMarkerRegExp = /<div id=[\"']?systemArea['\"]?( style=[\"']?display:none;[\"']?)?>/gi,\n\t\t\tsysMatch = systemAreaMarkerRegExp.exec(text);\n\t\tif(sysMatch) {\n\t\t\tresults.push.apply(results,deserializeTiddlyWikiFile(text,systemAreaMarkerRegExp.lastIndex,!!sysMatch[1],fields));\n\t\t}\n\t\treturn results;\n\t} else {\n\t\t// Check whether we've got an encrypted file\n\t\tvar encryptedStoreArea = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedStoreArea) {\n\t\t\t// If so, attempt to decrypt it using the current password\n\t\t\treturn $tw.utils.decryptStoreArea(encryptedStoreArea);\n\t\t} else {\n\t\t\t// It's not a TiddlyWiki so we'll return the entire HTML file as a tiddler\n\t\t\treturn deserializeHtmlFile(text,fields);\n\t\t}\n\t}\n};\n\nfunction deserializeHtmlFile(text,fields) {\n\tvar result = {};\n\t$tw.utils.each(fields,function(value,name) {\n\t\tresult[name] = value;\n\t});\n\tresult.text = text;\n\tresult.type = \"text/html\";\n\treturn [result];\n}\n\nfunction deserializeTiddlyWikiFile(text,storeAreaEnd,isTiddlyWiki5,fields) {\n\tvar results = [],\n\t\tendOfDivRegExp = /(<\\/div>\\s*)/gi,\n\t\tstartPos = storeAreaEnd,\n\t\tdefaultType = isTiddlyWiki5 ? undefined : \"text/x-tiddlywiki\";\n\tendOfDivRegExp.lastIndex = startPos;\n\tvar match = endOfDivRegExp.exec(text);\n\twhile(match) {\n\t\tvar endPos = endOfDivRegExp.lastIndex,\n\t\t\ttiddlerFields = parseTiddlerDiv(text.substring(startPos,endPos),fields,{type: defaultType});\n\t\tif(!tiddlerFields) {\n\t\t\tbreak;\n\t\t}\n\t\t$tw.utils.each(tiddlerFields,function(value,name) {\n\t\t\tif(typeof value === \"string\") {\n\t\t\t\ttiddlerFields[name] = $tw.utils.htmlDecode(value);\n\t\t\t}\n\t\t});\n\t\tif(tiddlerFields.text !== null) {\n\t\t\tresults.push(tiddlerFields);\n\t\t}\n\t\tstartPos = endPos;\n\t\tmatch = endOfDivRegExp.exec(text);\n\t}\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlerdeserializer"
        },
        "$:/core/modules/editor/engines/framed.js": {
            "title": "$:/core/modules/editor/engines/framed.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/framed.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea within an iframe. This is done so that the selection is preserved even when clicking away from the textarea\n\n\\*/\n(function(){\n\n/*jslint node: true,browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction FramedEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Create our hidden dummy text area for reading styles\n\tthis.dummyTextArea = this.widget.document.createElement(\"textarea\");\n\tif(this.widget.editClass) {\n\t\tthis.dummyTextArea.className = this.widget.editClass;\n\t}\n\tthis.dummyTextArea.setAttribute(\"hidden\",\"true\");\n\tthis.parentNode.insertBefore(this.dummyTextArea,this.nextSibling);\n\tthis.widget.domNodes.push(this.dummyTextArea);\n\t// Create the iframe\n\tthis.iframeNode = this.widget.document.createElement(\"iframe\");\n\tthis.parentNode.insertBefore(this.iframeNode,this.nextSibling);\n\tthis.iframeDoc = this.iframeNode.contentWindow.document;\n\t// (Firefox requires us to put some empty content in the iframe)\n\tthis.iframeDoc.open();\n\tthis.iframeDoc.write(\"\");\n\tthis.iframeDoc.close();\n\t// Style the iframe\n\tthis.iframeNode.className = this.dummyTextArea.className;\n\tthis.iframeNode.style.border = \"none\";\n\tthis.iframeNode.style.padding = \"0\";\n\tthis.iframeNode.style.resize = \"none\";\n\tthis.iframeDoc.body.style.margin = \"0\";\n\tthis.iframeDoc.body.style.padding = \"0\";\n\tthis.widget.domNodes.push(this.iframeNode);\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.iframeDoc.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.iframeDoc.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.iframeNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\n\t}\t\n\t// Copy the styles from the dummy textarea\n\tthis.copyStyles();\n\t// Add event listeners\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"click\",handlerObject: this,handlerMethod: \"handleClickEvent\"},\n\t\t{name: \"input\",handlerObject: this,handlerMethod: \"handleInputEvent\"},\n\t\t{name: \"keydown\",handlerObject: this.widget,handlerMethod: \"handleKeydownEvent\"},\n\t\t{name: \"focus\",handlerObject: this,handlerMethod: \"handleFocusEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.iframeDoc.body.appendChild(this.domNode);\n}\n\n/*\nCopy styles from the dummy text area to the textarea in the iframe\n*/\nFramedEngine.prototype.copyStyles = function() {\n\t// Copy all styles\n\t$tw.utils.copyStyles(this.dummyTextArea,this.domNode);\n\t// Override the ones that should not be set the same as the dummy textarea\n\tthis.domNode.style.display = \"block\";\n\tthis.domNode.style.width = \"100%\";\n\tthis.domNode.style.margin = \"0\";\n\t// In Chrome setting -webkit-text-fill-color overrides the placeholder text colour\n\tthis.domNode.style[\"-webkit-text-fill-color\"] = \"currentcolor\";\n};\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nFramedEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode) {\n\t\t\tthis.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nFramedEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\n};\n\n/*\nGet the text of the engine\n*/\nFramedEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nFramedEngine.prototype.fixHeight = function() {\n\t// Make sure styles are updated\n\tthis.copyStyles();\n\t// Adjust height\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\tvar newHeight = $tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t\tthis.iframeNode.style.height = (newHeight + 14) + \"px\"; // +14 for the border on the textarea\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t\tthis.iframeNode.style.height = (fixedHeight + 14) + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nFramedEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a focus event\n*/\nFramedEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\t\n\t}\n};\n\n/*\nHandle a click\n*/\nFramedEngine.prototype.handleClickEvent = function(event) {\n\tthis.fixHeight();\n\treturn true;\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nFramedEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nFramedEngine.prototype.createTextOperation = function() {\n\tvar operation = {\n\t\ttext: this.domNode.value,\n\t\tselStart: this.domNode.selectionStart,\n\t\tselEnd: this.domNode.selectionEnd,\n\t\tcutStart: null,\n\t\tcutEnd: null,\n\t\treplacement: null,\n\t\tnewSelStart: null,\n\t\tnewSelEnd: null\n\t};\n\toperation.selection = operation.text.substring(operation.selStart,operation.selEnd);\n\treturn operation;\n};\n\n/*\nExecute a text operation\n*/\nFramedEngine.prototype.executeTextOperation = function(operation) {\n\t// Perform the required changes to the text area and the underlying tiddler\n\tvar newText = operation.text;\n\tif(operation.replacement !== null) {\n\t\tnewText = operation.text.substring(0,operation.cutStart) + operation.replacement + operation.text.substring(operation.cutEnd);\n\t\t// Attempt to use a execCommand to modify the value of the control\n\t\tif(this.iframeDoc.queryCommandSupported(\"insertText\") && this.iframeDoc.queryCommandSupported(\"delete\") && !$tw.browser.isFirefox) {\n\t\t\tthis.domNode.focus();\n\t\t\tthis.domNode.setSelectionRange(operation.cutStart,operation.cutEnd);\n\t\t\tif(operation.replacement === \"\") {\n\t\t\t\tthis.iframeDoc.execCommand(\"delete\",false,\"\");\n\t\t\t} else {\n\t\t\t\tthis.iframeDoc.execCommand(\"insertText\",false,operation.replacement);\n\t\t\t}\n\t\t} else {\n\t\t\tthis.domNode.value = newText;\n\t\t}\n\t\tthis.domNode.focus();\n\t\tthis.domNode.setSelectionRange(operation.newSelStart,operation.newSelEnd);\n\t}\n\tthis.domNode.focus();\n\treturn newText;\n};\n\nexports.FramedEngine = FramedEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/engines/simple.js": {
            "title": "$:/core/modules/editor/engines/simple.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/engines/simple.js\ntype: application/javascript\nmodule-type: library\n\nText editor engine based on a simple input or textarea tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HEIGHT_VALUE_TITLE = \"$:/config/TextEditor/EditorHeight/Height\";\n\nfunction SimpleEngine(options) {\n\t// Save our options\n\toptions = options || {};\n\tthis.widget = options.widget;\n\tthis.value = options.value;\n\tthis.parentNode = options.parentNode;\n\tthis.nextSibling = options.nextSibling;\n\t// Construct the textarea or input node\n\tvar tag = this.widget.editTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"input\";\n\t}\n\tthis.domNode = this.widget.document.createElement(tag);\n\t// Set the text\n\tif(this.widget.editTag === \"textarea\") {\n\t\tthis.domNode.appendChild(this.widget.document.createTextNode(this.value));\n\t} else {\n\t\tthis.domNode.value = this.value;\n\t}\n\t// Set the attributes\n\tif(this.widget.editType) {\n\t\tthis.domNode.setAttribute(\"type\",this.widget.editType);\n\t}\n\tif(this.widget.editPlaceholder) {\n\t\tthis.domNode.setAttribute(\"placeholder\",this.widget.editPlaceholder);\n\t}\n\tif(this.widget.editSize) {\n\t\tthis.domNode.setAttribute(\"size\",this.widget.editSize);\n\t}\n\tif(this.widget.editRows) {\n\t\tthis.domNode.setAttribute(\"rows\",this.widget.editRows);\n\t}\n\tif(this.widget.editClass) {\n\t\tthis.domNode.className = this.widget.editClass;\n\t}\n\tif(this.widget.editTabIndex) {\n\t\tthis.domNode.setAttribute(\"tabindex\",this.widget.editTabIndex);\n\t}\n\tif(this.widget.editAutoComplete) {\n\t\tthis.domNode.setAttribute(\"autocomplete\",this.widget.editAutoComplete);\n\t}\n\tif(this.widget.isDisabled === \"yes\") {\n\t\tthis.domNode.setAttribute(\"disabled\",true);\n\t}\n\t// Add an input event handler\n\t$tw.utils.addEventListeners(this.domNode,[\n\t\t{name: \"focus\", handlerObject: this, handlerMethod: \"handleFocusEvent\"},\n\t\t{name: \"input\", handlerObject: this, handlerMethod: \"handleInputEvent\"}\n\t]);\n\t// Insert the element into the DOM\n\tthis.parentNode.insertBefore(this.domNode,this.nextSibling);\n\tthis.widget.domNodes.push(this.domNode);\n}\n\n/*\nSet the text of the engine if it doesn't currently have focus\n*/\nSimpleEngine.prototype.setText = function(text,type) {\n\tif(!this.domNode.isTiddlyWikiFakeDom) {\n\t\tif(this.domNode.ownerDocument.activeElement !== this.domNode || text === \"\") {\n\t\t\tthis.updateDomNodeText(text);\n\t\t}\n\t\t// Fix the height if needed\n\t\tthis.fixHeight();\n\t}\n};\n\n/*\nUpdate the DomNode with the new text\n*/\nSimpleEngine.prototype.updateDomNodeText = function(text) {\n\tthis.domNode.value = text;\n};\n\n/*\nGet the text of the engine\n*/\nSimpleEngine.prototype.getText = function() {\n\treturn this.domNode.value;\n};\n\n/*\nFix the height of textarea to fit content\n*/\nSimpleEngine.prototype.fixHeight = function() {\n\tif(this.widget.editTag === \"textarea\") {\n\t\tif(this.widget.editAutoHeight) {\n\t\t\tif(this.domNode && !this.domNode.isTiddlyWikiFakeDom) {\n\t\t\t\t$tw.utils.resizeTextAreaToFit(this.domNode,this.widget.editMinHeight);\n\t\t\t}\n\t\t} else {\n\t\t\tvar fixedHeight = parseInt(this.widget.wiki.getTiddlerText(HEIGHT_VALUE_TITLE,\"400px\"),10);\n\t\t\tfixedHeight = Math.max(fixedHeight,20);\n\t\t\tthis.domNode.style.height = fixedHeight + \"px\";\n\t\t}\n\t}\n};\n\n/*\nFocus the engine node\n*/\nSimpleEngine.prototype.focus  = function() {\n\tif(this.domNode.focus && this.domNode.select) {\n\t\tthis.domNode.focus();\n\t\tthis.domNode.select();\n\t}\n};\n\n/*\nHandle a dom \"input\" event which occurs when the text has changed\n*/\nSimpleEngine.prototype.handleInputEvent = function(event) {\n\tthis.widget.saveChanges(this.getText());\n\tthis.fixHeight();\n\tif(this.widget.editInputActions) {\n\t\tthis.widget.invokeActionString(this.widget.editInputActions);\n\t}\n\treturn true;\n};\n\n/*\nHandle a dom \"focus\" event\n*/\nSimpleEngine.prototype.handleFocusEvent = function(event) {\n\tif(this.widget.editCancelPopups) {\n\t\t$tw.popup.cancel(0);\n\t}\n\tif(this.widget.editFocusPopup) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNode,\n\t\t\ttitle: this.widget.editFocusPopup,\n\t\t\twiki: this.widget.wiki,\n\t\t\tforce: true\n\t\t});\n\t}\n\treturn true;\n};\n\n/*\nCreate a blank structure representing a text operation\n*/\nSimpleEngine.prototype.createTextOperation = function() {\n\treturn null;\n};\n\n/*\nExecute a text operation\n*/\nSimpleEngine.prototype.executeTextOperation = function(operation) {\n};\n\nexports.SimpleEngine = SimpleEngine;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/factory.js": {
            "title": "$:/core/modules/editor/factory.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/factory.js\ntype: application/javascript\nmodule-type: library\n\nFactory for constructing text editor widgets with specified engines for the toolbar and non-toolbar cases\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_MIN_TEXT_AREA_HEIGHT = \"100px\"; // Minimum height of textareas in pixels\n\n// Configuration tiddlers\nvar HEIGHT_MODE_TITLE = \"$:/config/TextEditor/EditorHeight/Mode\";\nvar ENABLE_TOOLBAR_TITLE = \"$:/config/TextEditor/EnableToolbar\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nfunction editTextWidgetFactory(toolbarEngine,nonToolbarEngine) {\n\n\tvar EditTextWidget = function(parseTreeNode,options) {\n\t\t// Initialise the editor operations if they've not been done already\n\t\tif(!this.editorOperations) {\n\t\t\tEditTextWidget.prototype.editorOperations = {};\n\t\t\t$tw.modules.applyMethods(\"texteditoroperation\",this.editorOperations);\n\t\t}\n\t\tthis.initialise(parseTreeNode,options);\n\t};\n\n\t/*\n\tInherit from the base widget class\n\t*/\n\tEditTextWidget.prototype = new Widget();\n\n\t/*\n\tRender this widget into the DOM\n\t*/\n\tEditTextWidget.prototype.render = function(parent,nextSibling) {\n\t\t// Save the parent dom node\n\t\tthis.parentDomNode = parent;\n\t\t// Compute our attributes\n\t\tthis.computeAttributes();\n\t\t// Execute our logic\n\t\tthis.execute();\n\t\t// Create the wrapper for the toolbar and render its content\n\t\tif(this.editShowToolbar) {\n\t\t\tthis.toolbarNode = this.document.createElement(\"div\");\n\t\t\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\t\t\tparent.insertBefore(this.toolbarNode,nextSibling);\n\t\t\tthis.renderChildren(this.toolbarNode,null);\n\t\t\tthis.domNodes.push(this.toolbarNode);\n\t\t}\n\t\t// Create our element\n\t\tvar editInfo = this.getEditInfo(),\n\t\t\tEngine = this.editShowToolbar ? toolbarEngine : nonToolbarEngine;\n\t\tthis.engine = new Engine({\n\t\t\t\twidget: this,\n\t\t\t\tvalue: editInfo.value,\n\t\t\t\ttype: editInfo.type,\n\t\t\t\tparentNode: parent,\n\t\t\t\tnextSibling: nextSibling\n\t\t\t});\n\t\t// Call the postRender hook\n\t\tif(this.postRender) {\n\t\t\tthis.postRender();\n\t\t}\n\t\t// Fix height\n\t\tthis.engine.fixHeight();\n\t\t// Focus if required\n\t\tif(this.editFocus === \"true\" || this.editFocus === \"yes\") {\n\t\t\tthis.engine.focus();\n\t\t}\n\t\t// Add widget message listeners\n\t\tthis.addEventListeners([\n\t\t\t{type: \"tm-edit-text-operation\", handler: \"handleEditTextOperationMessage\"}\n\t\t]);\n\t};\n\n\t/*\n\tGet the tiddler being edited and current value\n\t*/\n\tEditTextWidget.prototype.getEditInfo = function() {\n\t\t// Get the edit value\n\t\tvar self = this,\n\t\t\tvalue,\n\t\t\ttype = \"text/plain\",\n\t\t\tupdate;\n\t\tif(this.editIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.editTitle,this.editIndex,this.editDefault);\n\t\t\tupdate = function(value) {\n\t\t\t\tvar data = self.wiki.getTiddlerData(self.editTitle,{});\n\t\t\t\tif(data[self.editIndex] !== value) {\n\t\t\t\t\tdata[self.editIndex] = value;\n\t\t\t\t\tself.wiki.setTiddlerData(self.editTitle,data);\n\t\t\t\t}\n\t\t\t};\n\t\t} else {\n\t\t\t// Get the current tiddler and the field name\n\t\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\t\tif(tiddler) {\n\t\t\t\t// If we've got a tiddler, the value to display is the field string value\n\t\t\t\tvalue = tiddler.getFieldString(this.editField);\n\t\t\t\tif(this.editField === \"text\") {\n\t\t\t\t\ttype = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise, we need to construct a default value for the editor\n\t\t\t\tswitch(this.editField) {\n\t\t\t\t\tcase \"text\":\n\t\t\t\t\t\tvalue = \"Type the text for the tiddler '\" + this.editTitle + \"'\";\n\t\t\t\t\t\ttype = \"text/vnd.tiddlywiki\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"title\":\n\t\t\t\t\t\tvalue = this.editTitle;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tvalue = \"\";\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tif(this.editDefault !== undefined) {\n\t\t\t\t\tvalue = this.editDefault;\n\t\t\t\t}\n\t\t\t}\n\t\t\tupdate = function(value) {\n\t\t\t\tvar tiddler = self.wiki.getTiddler(self.editTitle),\n\t\t\t\t\tupdateFields = {\n\t\t\t\t\t\ttitle: self.editTitle\n\t\t\t\t\t};\n\t\t\t\tupdateFields[self.editField] = value;\n\t\t\t\tself.wiki.addTiddler(new $tw.Tiddler(self.wiki.getCreationFields(),tiddler,updateFields,self.wiki.getModificationFields()));\n\t\t\t};\n\t\t}\n\t\tif(this.editType) {\n\t\t\ttype = this.editType;\n\t\t}\n\t\treturn {value: value || \"\", type: type, update: update};\n\t};\n\n\t/*\n\tHandle an edit text operation message from the toolbar\n\t*/\n\tEditTextWidget.prototype.handleEditTextOperationMessage = function(event) {\n\t\t// Prepare information about the operation\n\t\tvar operation = this.engine.createTextOperation();\n\t\t// Invoke the handler for the selected operation\n\t\tvar handler = this.editorOperations[event.param];\n\t\tif(handler) {\n\t\t\thandler.call(this,event,operation);\n\t\t}\n\t\t// Execute the operation via the engine\n\t\tvar newText = this.engine.executeTextOperation(operation);\n\t\t// Fix the tiddler height and save changes\n\t\tthis.engine.fixHeight();\n\t\tthis.saveChanges(newText);\n\t};\n\n\t/*\n\tCompute the internal state of the widget\n\t*/\n\tEditTextWidget.prototype.execute = function() {\n\t\t// Get our parameters\n\t\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t\tthis.editField = this.getAttribute(\"field\",\"text\");\n\t\tthis.editIndex = this.getAttribute(\"index\");\n\t\tthis.editDefault = this.getAttribute(\"default\");\n\t\tthis.editClass = this.getAttribute(\"class\");\n\t\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\t\tthis.editSize = this.getAttribute(\"size\");\n\t\tthis.editRows = this.getAttribute(\"rows\");\n\t\tthis.editAutoHeight = this.wiki.getTiddlerText(HEIGHT_MODE_TITLE,\"auto\");\n\t\tthis.editAutoHeight = this.getAttribute(\"autoHeight\",this.editAutoHeight === \"auto\" ? \"yes\" : \"no\") === \"yes\";\n\t\tthis.editMinHeight = this.getAttribute(\"minHeight\",DEFAULT_MIN_TEXT_AREA_HEIGHT);\n\t\tthis.editFocusPopup = this.getAttribute(\"focusPopup\");\n\t\tthis.editFocus = this.getAttribute(\"focus\");\n\t\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\t\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\") === \"yes\";\n\t\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\t\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\t\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\n\t\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t\t// Get the default editor element tag and type\n\t\tvar tag,type;\n\t\tif(this.editField === \"text\") {\n\t\t\ttag = \"textarea\";\n\t\t} else {\n\t\t\ttag = \"input\";\n\t\t\tvar fieldModule = $tw.Tiddler.fieldModules[this.editField];\n\t\t\tif(fieldModule && fieldModule.editTag) {\n\t\t\t\ttag = fieldModule.editTag;\n\t\t\t}\n\t\t\tif(fieldModule && fieldModule.editType) {\n\t\t\t\ttype = fieldModule.editType;\n\t\t\t}\n\t\t\ttype = type || \"text\";\n\t\t}\n\t\t// Get the rest of our parameters\n\t\tthis.editTag = this.getAttribute(\"tag\",tag) || \"input\";\n\t\tthis.editType = this.getAttribute(\"type\",type);\n\t\t// Make the child widgets\n\t\tthis.makeChildWidgets();\n\t\t// Determine whether to show the toolbar\n\t\tthis.editShowToolbar = this.wiki.getTiddlerText(ENABLE_TOOLBAR_TITLE,\"yes\");\n\t\tthis.editShowToolbar = (this.editShowToolbar === \"yes\") && !!(this.children && this.children.length > 0) && (!this.document.isTiddlyWikiFakeDom);\n\t};\n\n\t/*\n\tSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n\t*/\n\tEditTextWidget.prototype.refresh = function(changedTiddlers) {\n\t\tvar changedAttributes = this.computeAttributes();\n\t\t// Completely rerender if any of our attributes have changed\n\t\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.placeholder || changedAttributes.size || changedAttributes.autoHeight || changedAttributes.minHeight || changedAttributes.focusPopup ||  changedAttributes.rows || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || changedTiddlers[HEIGHT_MODE_TITLE] || changedTiddlers[ENABLE_TOOLBAR_TITLE] || changedAttributes.disabled) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t\t} else if (changedTiddlers[this.editRefreshTitle]) {\n\t\t\tthis.engine.updateDomNodeText(this.getEditInfo().value);\n\t\t} else if(changedTiddlers[this.editTitle]) {\n\t\t\tvar editInfo = this.getEditInfo();\n\t\t\tthis.updateEditor(editInfo.value,editInfo.type);\n\t\t}\n\t\tthis.engine.fixHeight();\n\t\tif(this.editShowToolbar) {\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\treturn false;\n\t\t}\n\t};\n\n\t/*\n\tUpdate the editor with new text. This method is separate from updateEditorDomNode()\n\tso that subclasses can override updateEditor() and still use updateEditorDomNode()\n\t*/\n\tEditTextWidget.prototype.updateEditor = function(text,type) {\n\t\tthis.updateEditorDomNode(text,type);\n\t};\n\n\t/*\n\tUpdate the editor dom node with new text\n\t*/\n\tEditTextWidget.prototype.updateEditorDomNode = function(text,type) {\n\t\tthis.engine.setText(text,type);\n\t};\n\n\t/*\n\tSave changes back to the tiddler store\n\t*/\n\tEditTextWidget.prototype.saveChanges = function(text) {\n\t\tvar editInfo = this.getEditInfo();\n\t\tif(text !== editInfo.value) {\n\t\t\teditInfo.update(text);\n\t\t}\n\t};\n\n\t/*\n\tHandle a dom \"keydown\" event, which we'll bubble up to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.handleKeydownEvent = function(event) {\n\t\t// Check for a keyboard shortcut\n\t\tif(this.toolbarNode) {\n\t\t\tvar shortcutElements = this.toolbarNode.querySelectorAll(\"[data-tw-keyboard-shortcut]\");\n\t\t\tfor(var index=0; index<shortcutElements.length; index++) {\n\t\t\t\tvar el = shortcutElements[index],\n\t\t\t\t\tshortcutData = el.getAttribute(\"data-tw-keyboard-shortcut\"),\n\t\t\t\t\tkeyInfoArray = $tw.keyboardManager.parseKeyDescriptors(shortcutData,{\n\t\t\t\t\t\twiki: this.wiki\n\t\t\t\t\t});\n\t\t\t\tif($tw.keyboardManager.checkKeyDescriptors(event,keyInfoArray)) {\n\t\t\t\t\tvar clickEvent = this.document.createEvent(\"Events\");\n\t\t\t\t    clickEvent.initEvent(\"click\",true,false);\n\t\t\t\t    el.dispatchEvent(clickEvent);\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t// Propogate the event to the container\n\t\tif(this.propogateKeydownEvent(event)) {\n\t\t\t// Ignore the keydown if it was already handled\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t\treturn true;\n\t\t}\n\t\t// Otherwise, process the keydown normally\n\t\treturn false;\n\t};\n\n\t/*\n\tPropogate keydown events to our container for the keyboard widgets benefit\n\t*/\n\tEditTextWidget.prototype.propogateKeydownEvent = function(event) {\n\t\tvar newEvent = this.document.createEventObject ? this.document.createEventObject() : this.document.createEvent(\"Events\");\n\t\tif(newEvent.initEvent) {\n\t\t\tnewEvent.initEvent(\"keydown\", true, true);\n\t\t}\n\t\tnewEvent.keyCode = event.keyCode;\n\t\tnewEvent.which = event.which;\n\t\tnewEvent.metaKey = event.metaKey;\n\t\tnewEvent.ctrlKey = event.ctrlKey;\n\t\tnewEvent.altKey = event.altKey;\n\t\tnewEvent.shiftKey = event.shiftKey;\n\t\treturn !this.parentDomNode.dispatchEvent(newEvent);\n\t};\n\n\treturn EditTextWidget;\n\n}\n\nexports.editTextWidgetFactory = editTextWidgetFactory;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/editor/operations/bitmap/clear.js": {
            "title": "$:/core/modules/editor/operations/bitmap/clear.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/clear.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to clear the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"clear\"] = function(event) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.globalAlpha = 1;\n\tctx.fillStyle = event.paramObject.colour || \"white\";\n\tctx.fillRect(0,0,this.canvasDomNode.width,this.canvasDomNode.height);\n\t// Save changes\n\tthis.strokeEnd();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/resize.js": {
            "title": "$:/core/modules/editor/operations/bitmap/resize.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/resize.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to resize the image\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"resize\"] = function(event) {\n\t// Get the new width\n\tvar newWidth = parseInt(event.paramObject.width || this.canvasDomNode.width,10),\n\t\tnewHeight = parseInt(event.paramObject.height || this.canvasDomNode.height,10);\n\t// Update if necessary\n\tif(newWidth > 0 && newHeight > 0 && !(newWidth === this.currCanvas.width && newHeight === this.currCanvas.height)) {\n\t\tthis.changeCanvasSize(newWidth,newHeight);\n\t}\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/bitmap/rotate-left.js": {
            "title": "$:/core/modules/editor/operations/bitmap/rotate-left.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/bitmap/rotate-left.js\ntype: application/javascript\nmodule-type: bitmapeditoroperation\n\nBitmap editor operation to rotate the image left by 90 degrees\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"rotate-left\"] = function(event) {\n\t// Rotate the canvas left by 90 degrees\n\tthis.rotateCanvasLeft();\n\t// Update the input controls\n\tthis.refreshToolbar();\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "bitmapeditoroperation"
        },
        "$:/core/modules/editor/operations/text/excise.js": {
            "title": "$:/core/modules/editor/operations/text/excise.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/excise.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to excise the selection to a new tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"excise\"] = function(event,operation) {\n\tvar editTiddler = this.wiki.getTiddler(this.editTitle),\n\t\teditTiddlerTitle = this.editTitle;\n\tif(editTiddler && editTiddler.fields[\"draft.of\"]) {\n\t\teditTiddlerTitle = editTiddler.fields[\"draft.of\"];\n\t}\n\tvar excisionTitle = event.paramObject.title || this.wiki.generateNewTitle(\"New Excision\");\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\tthis.wiki.getModificationFields(),\n\t\t{\n\t\t\ttitle: excisionTitle,\n\t\t\ttext: operation.selection,\n\t\t\ttags: event.paramObject.tagnew === \"yes\" ?  [editTiddlerTitle] : []\n\t\t}\n\t));\n\toperation.replacement = excisionTitle;\n\tswitch(event.paramObject.type || \"transclude\") {\n\t\tcase \"transclude\":\n\t\t\toperation.replacement = \"{{\" + operation.replacement+ \"}}\";\n\t\t\tbreak;\n\t\tcase \"link\":\n\t\t\toperation.replacement = \"[[\" + operation.replacement+ \"]]\";\n\t\t\tbreak;\n\t\tcase \"macro\":\n\t\t\toperation.replacement = \"<<\" + (event.paramObject.macro || \"translink\") + \" \\\"\\\"\\\"\" + operation.replacement + \"\\\"\\\"\\\">>\";\n\t\t\tbreak;\n\t}\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/make-link.js": {
            "title": "$:/core/modules/editor/operations/text/make-link.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/make-link.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to make a link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"make-link\"] = function(event,operation) {\n\tif(operation.selection) {\n\t\toperation.replacement = \"[[\" + operation.selection + \"|\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t} else {\n\t\toperation.replacement = \"[[\" + event.paramObject.text + \"]]\";\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t}\n\toperation.newSelStart = operation.selStart + operation.replacement.length;\n\toperation.newSelEnd = operation.newSelStart;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/prefix-lines.js": {
            "title": "$:/core/modules/editor/operations/text/prefix-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/prefix-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to add a prefix to the selected lines\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"prefix-lines\"] = function(event,operation) {\n\tvar targetCount = parseInt(event.paramObject.count + \"\",10);\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Compose the required prefix\n\tvar prefix = $tw.utils.repeat(event.paramObject.character,targetCount);\n\t// Process each line\n\tvar lines = operation.text.substring(operation.cutStart,operation.cutEnd).split(/\\r?\\n/mg);\n\t$tw.utils.each(lines,function(line,index) {\n\t\t// Remove and count any existing prefix characters\n\t\tvar count = 0;\n\t\twhile(line.charAt(0) === event.paramObject.character) {\n\t\t\tline = line.substring(1);\n\t\t\tcount++;\n\t\t}\n\t\t// Remove any whitespace\n\t\twhile(line.charAt(0) === \" \") {\n\t\t\tline = line.substring(1);\n\t\t}\n\t\t// We're done if we removed the exact required prefix, otherwise add it\n\t\tif(count !== targetCount) {\n\t\t\t// Apply the prefix\n\t\t\tline =  prefix + \" \" + line;\n\t\t}\n\t\t// Save the modified line\n\t\tlines[index] = line;\n\t});\n\t// Stitch the replacement text together and set the selection\n\toperation.replacement = lines.join(\"\\n\");\n\tif(lines.length === 1) {\n\t\toperation.newSelStart = operation.cutStart + operation.replacement.length;\n\t\toperation.newSelEnd = operation.newSelStart;\n\t} else {\n\t\toperation.newSelStart = operation.cutStart;\n\t\toperation.newSelEnd = operation.newSelStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-all.js": {
            "title": "$:/core/modules/editor/operations/text/replace-all.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-all.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the entire text\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-all\"] = function(event,operation) {\n\toperation.cutStart = 0;\n\toperation.cutEnd = operation.text.length;\n\toperation.replacement = event.paramObject.text;\n\toperation.newSelStart = 0;\n\toperation.newSelEnd = operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/replace-selection.js": {
            "title": "$:/core/modules/editor/operations/text/replace-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/replace-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to replace the selection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"replace-selection\"] = function(event,operation) {\n\toperation.replacement = event.paramObject.text;\n\toperation.cutStart = operation.selStart;\n\toperation.cutEnd = operation.selEnd;\n\toperation.newSelStart = operation.selStart;\n\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/save-selection.js": {
            "title": "$:/core/modules/editor/operations/text/save-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/save-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to save the current selection in a specified tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"save-selection\"] = function(event,operation) {\n\tvar tiddler = event.paramObject.tiddler,\n\t\tfield = event.paramObject.field || \"text\";\n\tif(tiddler && field) {\n\t\tthis.wiki.setText(tiddler,field,null,operation.text.substring(operation.selStart,operation.selEnd));\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-lines.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-lines.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-lines.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selected lines with a prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-lines\"] = function(event,operation) {\n\t// Cut just past the preceding line break, or the start of the text\n\toperation.cutStart = $tw.utils.findPrecedingLineBreak(operation.text,operation.selStart);\n\t// Cut to just past the following line break, or to the end of the text\n\toperation.cutEnd = $tw.utils.findFollowingLineBreak(operation.text,operation.selEnd);\n\t// Add the prefix and suffix\n\toperation.replacement = event.paramObject.prefix + \"\\n\" +\n\t\t\t\toperation.text.substring(operation.cutStart,operation.cutEnd) + \"\\n\" +\n\t\t\t\tevent.paramObject.suffix + \"\\n\";\n\toperation.newSelStart = operation.cutStart + event.paramObject.prefix.length + 1;\n\toperation.newSelEnd = operation.newSelStart + (operation.cutEnd - operation.cutStart);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/editor/operations/text/wrap-selection.js": {
            "title": "$:/core/modules/editor/operations/text/wrap-selection.js",
            "text": "/*\\\ntitle: $:/core/modules/editor/operations/text/wrap-selection.js\ntype: application/javascript\nmodule-type: texteditoroperation\n\nText editor operation to wrap the selection with the specified prefix and suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports[\"wrap-selection\"] = function(event,operation) {\n\tif(operation.selStart === operation.selEnd) {\n\t\t// No selection; check if we're within the prefix/suffix\n\t\tif(operation.text.substring(operation.selStart - event.paramObject.prefix.length,operation.selStart + event.paramObject.suffix.length) === event.paramObject.prefix + event.paramObject.suffix) {\n\t\t\t// Remove the prefix and suffix\n\t\t\toperation.cutStart = operation.selStart - event.paramObject.prefix.length;\n\t\t\toperation.cutEnd = operation.selEnd + event.paramObject.suffix.length;\n\t\t\toperation.replacement = \"\";\n\t\t\toperation.newSelStart = operation.cutStart;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t} else {\n\t\t\t// Wrap the cursor instead\n\t\t\toperation.cutStart = operation.selStart;\n\t\t\toperation.cutEnd = operation.selEnd;\n\t\t\toperation.replacement = event.paramObject.prefix + event.paramObject.suffix;\n\t\t\toperation.newSelStart = operation.selStart + event.paramObject.prefix.length;\n\t\t\toperation.newSelEnd = operation.newSelStart;\n\t\t}\n\t} else if(operation.text.substring(operation.selStart,operation.selStart + event.paramObject.prefix.length) === event.paramObject.prefix && operation.text.substring(operation.selEnd - event.paramObject.suffix.length,operation.selEnd) === event.paramObject.suffix) {\n\t\t// Prefix and suffix are already present, so remove them\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = operation.selection.substring(event.paramObject.prefix.length,operation.selection.length - event.paramObject.suffix.length);\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t} else {\n\t\t// Add the prefix and suffix\n\t\toperation.cutStart = operation.selStart;\n\t\toperation.cutEnd = operation.selEnd;\n\t\toperation.replacement = event.paramObject.prefix + operation.selection + event.paramObject.suffix;\n\t\toperation.newSelStart = operation.selStart;\n\t\toperation.newSelEnd = operation.selStart + operation.replacement.length;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "texteditoroperation"
        },
        "$:/core/modules/filterrunprefixes/all.js": {
            "title": "$:/core/modules/filterrunprefixes/all.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/all.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nUnion of sets without de-duplication.\nEquivalent to = filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.all = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.push.apply(results, operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/and.js": {
            "title": "$:/core/modules/filterrunprefixes/and.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/and.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nIntersection of sets.\nEquivalent to + filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.and = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\t// This replaces all the elements of the array, but keeps the actual array so that references to it are preserved\n\t\tsource = options.wiki.makeTiddlerIterator(results.toArray());\n\t\tresults.clear();\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/else.js": {
            "title": "$:/core/modules/filterrunprefixes/else.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/else.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to ~ filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.else = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length === 0) {\n\t\t\t// Main result so far is empty\n\t\t\tresults.pushTop(operationSubFunction(source,widget));\n\t\t}\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/except.js": {
            "title": "$:/core/modules/filterrunprefixes/except.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/except.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nDifference of sets.\nEquivalent to - filter run prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.except = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.remove(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/filter.js": {
            "title": "$:/core/modules/filterrunprefixes/filter.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/filter.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.filter = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar resultsToRemove = [];\n\t\t\tresults.each(function(result) {\n\t\t\t\tvar filtered = operationSubFunction(options.wiki.makeTiddlerIterator([result]),widget);\n\t\t\t\tif(filtered.length === 0) {\n\t\t\t\t\tresultsToRemove.push(result);\n\t\t\t\t}\n\t\t\t});\n\t\t\tresults.remove(resultsToRemove);\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/intersection.js": {
            "title": "$:/core/modules/filterrunprefixes/intersection.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/intersection.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.intersection = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tif(results.length !== 0) {\n\t\t\tvar secondRunResults = operationSubFunction(source,widget);\n\t\t\tvar firstRunResults = results.toArray();\n\t\t\tresults.clear();\n\t\t\t$tw.utils.each(firstRunResults,function(title) {\n\t\t\t\tif(secondRunResults.indexOf(title) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/or.js": {
            "title": "$:/core/modules/filterrunprefixes/or.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/or.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\nEquivalent to a filter run with no prefix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.or = function(operationSubFunction) {\n\treturn function(results,source,widget) {\n\t\tresults.pushTop(operationSubFunction(source,widget));\n\t};\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filterrunprefixes/reduce.js": {
            "title": "$:/core/modules/filterrunprefixes/reduce.js",
            "text": "/*\\\ntitle: $:/core/modules/filterrunprefixes/reduce.js\ntype: application/javascript\nmodule-type: filterrunprefix\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter prefix function\n*/\nexports.reduce = function(operationSubFunction,options) {\n\treturn function(results,source,widget) {\n\t\tif(results.length > 0) {\n\t\t\tvar accumulator = \"\";\n\t\t\tvar index = 0;\n\t\t\tresults.each(function(title) {\n\t\t\t\tvar list = operationSubFunction(options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\t\t\treturn \"\" +  (results.length - 1 - index);\n\t\t\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn widget.getVariable(name);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\tif(list.length > 0) {\n\t\t\t\t\taccumulator = \"\" + list[0];\n\t\t\t\t}\n\t\t\t\t++index;\n\t\t\t});\n\t\t\tresults.clear();\n\t\t\tresults.push(accumulator);\t\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filterrunprefix"
        },
        "$:/core/modules/filters/addprefix.js": {
            "title": "$:/core/modules/filters/addprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a prefix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand + title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/addsuffix.js": {
            "title": "$:/core/modules/filters/addsuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/addsuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for adding a suffix to each title in the list. This is\nespecially useful in contexts where only a filter expression is allowed\nand macro substitution isn't available.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.addsuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title + operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/after.js": {
            "title": "$:/core/modules/filters/after.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/after.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is after the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.after = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index === -1 || index > (results.length - 2)) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index + 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/all/current.js": {
            "title": "$:/core/modules/filters/all/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/current.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar currTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(currTiddlerTitle) {\n\t\treturn [currTiddlerTitle];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/missing.js": {
            "title": "$:/core/modules/filters/all/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/missing.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\treturn options.wiki.getMissingTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/orphans.js": {
            "title": "$:/core/modules/filters/all/orphans.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/orphans.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[orphans]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphans = function(source,prefix,options) {\n\treturn options.wiki.getOrphanTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/shadows.js": {
            "title": "$:/core/modules/filters/all/shadows.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/shadows.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[shadows]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadows = function(source,prefix,options) {\n\treturn options.wiki.allShadowTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tags.js": {
            "title": "$:/core/modules/filters/all/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tags.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tags]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,prefix,options) {\n\treturn Object.keys(options.wiki.getTagMap());\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all/tiddlers.js": {
            "title": "$:/core/modules/filters/all/tiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all/tiddlers.js\ntype: application/javascript\nmodule-type: allfilteroperator\n\nFilter function for [all[tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddlers = function(source,prefix,options) {\n\treturn options.wiki.allTitles();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "allfilteroperator"
        },
        "$:/core/modules/filters/all.js": {
            "title": "$:/core/modules/filters/all.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/all.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for selecting tiddlers\n\n[all[shadows+tiddlers]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar allFilterOperators;\n\nfunction getAllFilterOperators() {\n\tif(!allFilterOperators) {\n\t\tallFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"allfilteroperator\",allFilterOperators);\n\t}\n\treturn allFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.all = function(source,operator,options) {\n\t// Get our suboperators\n\tvar allFilterOperators = getAllFilterOperators();\n\t// Cycle through the suboperators accumulating their results\n\tvar results = [],\n\t\tsubops = operator.operand.split(\"+\");\n\t// Check for common optimisations\n\tif(subops.length === 1 && subops[0] === \"\") {\n\t\treturn source;\n\t} else if(subops.length === 1 && subops[0] === \"tiddlers\") {\n\t\treturn options.wiki.each;\n\t} else if(subops.length === 1 && subops[0] === \"shadows\") {\n\t\treturn options.wiki.eachShadow;\n\t} else if(subops.length === 2 && subops[0] === \"tiddlers\" && subops[1] === \"shadows\") {\n\t\treturn options.wiki.eachTiddlerPlusShadows;\n\t} else if(subops.length === 2 && subops[0] === \"shadows\" && subops[1] === \"tiddlers\") {\n\t\treturn options.wiki.eachShadowPlusTiddlers;\n\t}\n\t// Do it the hard way\n\tfor(var t=0; t<subops.length; t++) {\n\t\tvar subop = allFilterOperators[subops[t]];\n\t\tif(subop) {\n\t\t\t$tw.utils.pushTop(results,subop(source,operator.prefix,options));\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/backlinks.js": {
            "title": "$:/core/modules/filters/backlinks.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/backlinks.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the backlinks from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.backlinks = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerBacklinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/before.js": {
            "title": "$:/core/modules/filters/before.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/before.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler from the current list that is before the tiddler named in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.before = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar index = results.indexOf(operator.operand);\n\tif(index <= 0) {\n\t\treturn [];\n\t} else {\n\t\treturn [results[index - 1]];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/commands.js": {
            "title": "$:/core/modules/filters/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/commands.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the commands available in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.commands = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.commands,function(commandInfo,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/compare.js": {
            "title": "$:/core/modules/filters/compare.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/compare.js\ntype: application/javascript\nmodule-type: filteroperator\n\nGeneral purpose comparison operator\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.compare = function(source,operator,options) {\n\tvar suffixes = operator.suffixes || [],\n\t\ttype = (suffixes[0] || [])[0],\n\t\tmode = (suffixes[1] || [])[0],\n\t\ttypeFn = $tw.utils.makeCompareFunction(type,{defaultType: \"number\"}),\n\t\tmodeFn = modes[mode] || modes.eq,\n\t\tinvert = operator.prefix === \"!\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tif(modeFn(typeFn(title,operator.operand)) !== invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nvar modes = {\n\t\"eq\": function(value) {return value === 0;},\n\t\"ne\": function(value) {return value !== 0;},\n\t\"gteq\": function(value) {return value >= 0;},\n\t\"gt\": function(value) {return value > 0;},\n\t\"lteq\": function(value) {return value <= 0;},\n\t\"lt\": function(value) {return value < 0;}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/contains.js": {
            "title": "$:/core/modules/filters/contains.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/contains.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for finding values in array fields\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.contains = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"list\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\tvar list = tiddler.getFieldList(fieldname);\n\t\t\t\tif(list.indexOf(operator.operand) !== -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/count.js": {
            "title": "$:/core/modules/filters/count.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/count.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the number of entries in the current list.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.count = function(source,operator,options) {\n\tvar count = 0;\n\tsource(function(tiddler,title) {\n\t\tcount++;\n\t});\n\treturn [count + \"\"];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/days.js": {
            "title": "$:/core/modules/filters/days.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/days.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a specified date field within a specified date interval.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.days = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\tdayInterval = (parseInt(operator.operand,10)||0),\n\t\tdayIntervalSign = $tw.utils.sign(dayInterval),\n\t\ttargetTimeStamp = (new Date()).setHours(0,0,0,0) + 1000*60*60*24*dayInterval,\n\t\tisWithinDays = function(dateField) {\n\t\t\tvar sign = $tw.utils.sign(targetTimeStamp - (new Date(dateField)).setHours(0,0,0,0));\n\t\t\treturn sign === 0 || sign === dayIntervalSign;\n\t\t};\n\n\tif(operator.prefix === \"!\") {\n\t\ttargetTimeStamp = targetTimeStamp - 1000*60*60*24*dayIntervalSign;\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(!isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\t\tif(isWithinDays($tw.utils.parseDate(tiddler.fields[fieldName]))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/duplicateslugs.js": {
            "title": "$:/core/modules/filters/duplicateslugs.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/duplicateslugs.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter function for [duplicateslugs[]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.duplicateslugs = function(source,operator,options) {\n\tvar slugs = Object.create(null), // Hashmap by slug of title, replaced with \"true\" if the duplicate title has already been output\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tvar slug = options.wiki.slugify(title);\n\t\tif(slug in slugs) {\n\t\t\tif(slugs[slug] !== true) {\n\t\t\t\tresults.push(slugs[slug]);\n\t\t\t\tslugs[slug] = true;\n\t\t\t}\n\t\t\tresults.push(title);\n\t\t} else {\n\t\t\tslugs[slug] = title;\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/each.js": {
            "title": "$:/core/modules/filters/each.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/each.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique value of the specified field.\nWith suffix \"list\", selects all tiddlers that are values in a specified list field.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.each = function(source,operator,options) {\n\tvar results =[] ,\n\tvalue,values = {},\n\tfield = operator.operand || \"title\";\n\tif(operator.suffix === \"value\" && field === \"title\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(values,title)) {\n\t\t\t\tvalues[title] = true;\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else if(operator.suffix !== \"list-item\") {\n\t\tif(field === \"title\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && !$tw.utils.hop(values,title)) {\n\t\t\t\t\tvalues[title] = true;\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvalue = tiddler.getFieldString(field);\n\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\t$tw.utils.each(\n\t\t\t\t\toptions.wiki.getTiddlerList(title,field),\n\t\t\t\t\tfunction(value) {\n\t\t\t\t\t\tif(!$tw.utils.hop(values,value)) {\n\t\t\t\t\t\t\tvalues[value] = true;\n\t\t\t\t\t\t\tresults.push(value);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/eachday.js": {
            "title": "$:/core/modules/filters/eachday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/eachday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects one tiddler for each unique day covered by the specified date field\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.eachday = function(source,operator,options) {\n\tvar results = [],\n\t\tvalues = [],\n\t\tfieldName = operator.operand || \"modified\";\n\t// Function to convert a date/time to a date integer\n\tvar toDate = function(value) {\n\t\tvalue = (new Date(value)).setHours(0,0,0,0);\n\t\treturn value+0;\n\t};\n\tsource(function(tiddler,title) {\n\t\tif(tiddler && tiddler.fields[fieldName]) {\n\t\t\tvar value = toDate($tw.utils.parseDate(tiddler.fields[fieldName]));\n\t\t\tif(values.indexOf(value) === -1) {\n\t\t\t\tvalues.push(value);\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editiondescription.js": {
            "title": "$:/core/modules/filters/editiondescription.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editiondescription.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the descriptions of the specified edition names\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editiondescription = function(source,operator,options) {\n\tvar results = [];\n\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif($tw.utils.hop(editionInfo,title)) {\n\t\t\t\t\tresults.push(editionInfo[title].description || \"\");\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/editions.js": {
            "title": "$:/core/modules/filters/editions.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/editions.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the available editions in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.editions = function(source,operator,options) {\n\tvar results = [];\n\tif($tw.node) {\n\t\tvar editionInfo = $tw.utils.getEditionInfo();\n\t\tif(editionInfo) {\n\t\t\t$tw.utils.each(editionInfo,function(info,name) {\n\t\t\t\tresults.push(name);\n\t\t\t});\n\t\t}\n\t\tresults.sort();\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/else.js": {
            "title": "$:/core/modules/filters/else.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/else.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing an empty input list with a constant, passing a non-empty input list straight through\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.else = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tif(results.length === 0) {\n\t\treturn [operator.operand];\n\t} else {\n\t\treturn results;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/decodeuricomponent.js": {
            "title": "$:/core/modules/filters/decodeuricomponent.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/decodeuricomponent.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for applying decodeURIComponent() to each item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter functions\n*/\n\nexports.decodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURIComponent(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuricomponent = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURIComponent(title));\n\t});\n\treturn results;\n};\n\nexports.decodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar value = title;\n\t\ttry {\n\t\t\tvalue = decodeURI(title);\n\t\t} catch(e) {\n\t\t}\n\t\tresults.push(value);\n\t});\n\treturn results;\n};\n\nexports.encodeuri = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(encodeURI(title));\n\t});\n\treturn results;\n};\n\nexports.decodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlDecode(title));\n\t});\n\treturn results;\n};\n\nexports.encodehtml = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.htmlEncode(title));\n\t});\n\treturn results;\n};\n\nexports.stringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.stringify(title,(operator.suffix === \"rawunicode\")));\n\t});\n\treturn results;\n};\n\nexports.jsonstringify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.jsonStringify(title,(operator.suffix === \"rawunicode\")));\n\t});\n\treturn results;\n};\n\nexports.escaperegexp = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push($tw.utils.escapeRegExp(title));\n\t});\n\treturn results;\n};\n\nexports.escapecss = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t// escape any character with a special meaning in CSS using CSS.escape()\n\t\tresults.push(CSS.escape(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/enlist.js": {
            "title": "$:/core/modules/filters/enlist.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/enlist.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand parsed as a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.enlist = function(source,operator,options) {\n\tvar allowDuplicates = false;\n\tswitch(operator.suffix) {\n\t\tcase \"raw\":\n\t\t\tallowDuplicates = true;\n\t\t\tbreak;\n\t\tcase \"dedupe\":\n\t\t\tallowDuplicates = false;\n\t\t\tbreak;\n\t}\n\tvar list = $tw.utils.parseStringArray(operator.operand,allowDuplicates);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/field.js": {
            "title": "$:/core/modules/filters/field.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/field.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.field = function(source,operator,options) {\n\tvar results = [],indexedResults,\n\t\tfieldname = (operator.suffix || operator.operator || \"title\").toLowerCase();\n\tif(operator.prefix === \"!\") {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text !== operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.regexp) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && !!operator.regexp.exec(text)) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tif(source.byField && operator.operand) {\n\t\t\t\tindexedResults = source.byField(fieldname,operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults\n\t\t\t\t}\n\t\t\t}\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler) {\n\t\t\t\t\tvar text = tiddler.getFieldString(fieldname);\n\t\t\t\t\tif(text !== null && text === operator.operand) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/fields.js": {
            "title": "$:/core/modules/filters/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/fields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.fields = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName,\n\t\tsuffixes = (operator.suffixes || [])[0] || [],\n\t\toperand = $tw.utils.parseStringArray(operator.operand);\n\t\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(suffixes.indexOf(\"include\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? $tw.utils.pushTop(results,fieldName) : \"\";\n\t\t\t\t}\n\t\t\t} else if (suffixes.indexOf(\"exclude\") !== -1) {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t(operand.indexOf(fieldName) !== -1) ? \"\" : $tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else if\n\t\t\telse {\n\t\t\t\tfor(fieldName in tiddler.fields) {\n\t\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t\t}\n\t\t\t} // else\n\t\t} // if (tiddler)\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/filter.js": {
            "title": "$:/core/modules/filters/filter.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/filter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning those input titles that pass a subfilter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.filter = function(source,operator,options) {\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\tresults = [],\n\t\ttarget = operator.prefix !== \"!\";\n\tsource(function(tiddler,title) {\n\t\tvar list = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]));\n\t\tif((list.length > 0) === target) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/format/date.js": {
            "title": "$:/core/modules/filters/format/date.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format/date.js\ntype: application/javascript\nmodule-type: formatfilteroperator\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.date = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.formatDateString(value,operand || \"YYYY MM DD 0hh:0mm\"));\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "formatfilteroperator"
        },
        "$:/core/modules/filters/format/relativedate.js": {
            "title": "$:/core/modules/filters/format/relativedate.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format/relativedate.js\ntype: application/javascript\nmodule-type: formatfilteroperator\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.relativedate = function(source,operand,options) {\n\tvar results = [];\t\n\tsource(function(tiddler,title) {\n\t\tvar value = $tw.utils.parseDate(title);\n\t\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\t\tresults.push($tw.utils.getRelativeDate((new Date()) - (new Date(value))).description);\n\t\t}\n\t});\t\n\treturn results;\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "formatfilteroperator"
        },
        "$:/core/modules/filters/format.js": {
            "title": "$:/core/modules/filters/format.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/format.js\ntype: application/javascript\nmodule-type: filteroperator\nFilter operator for formatting strings\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar formatFilterOperators;\n\nfunction getFormatFilterOperators() {\n\tif(!formatFilterOperators) {\n\t\tformatFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"formatfilteroperator\",formatFilterOperators);\n\t}\n\treturn formatFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.format = function(source,operator,options) {\n\t// Dispatch to the correct formatfilteroperator\n\tvar formatFilterOperators = getFormatFilterOperators();\n\tif(operator.suffix) {\n\t\tvar formatFilterOperator = formatFilterOperators[operator.suffix];\n\t\tif(formatFilterOperator) {\n\t\t\treturn formatFilterOperator(source,operator.operand,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/FormatFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all unchanged if the suffix is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/get.js": {
            "title": "$:/core/modules/filters/get.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/get.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing tiddler titles by the value of the field specified in the operand.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.get = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tvar value = tiddler.getFieldString(operator.operand);\n\t\t\tif(value) {\n\t\t\t\tresults.push(value);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/getindex.js": {
            "title": "$:/core/modules/filters/getindex.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/getindex.js\ntype: application/javascript\nmodule-type: filteroperator\n\nreturns the value at a given index of datatiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getindex = function(source,operator,options) {\n\tvar data,title,results = [];\n\tif(operator.operand){\n\t\tsource(function(tiddler,title) {\n\t\t\ttitle = tiddler ? tiddler.fields.title : title;\n\t\t\tdata = options.wiki.extractTiddlerDataItem(tiddler,operator.operand);\n\t\t\tif(data) {\n\t\t\t\tresults.push(data);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/getvariable.js": {
            "title": "$:/core/modules/filters/getvariable.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/getvariable.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing input values by the value of the variable with the same name, or blank if the variable is missing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.getvariable = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.widget.getVariable(title) || \"\");\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/has.js": {
            "title": "$:/core/modules/filters/has.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/has.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a tiddler has the specified field or index\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.has = function(source,operator,options) {\n\tvar results = [],\n\t\tinvert = operator.prefix === \"!\";\n\n\tif(operator.suffix === \"field\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(tiddler.fields,operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse if(operator.suffix === \"index\") {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || (tiddler && (!$tw.utils.hop(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)))) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(options.wiki.getTiddlerDataCached(tiddler,Object.create(null)),operator.operand)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\telse {\n\t\tif(invert) {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,operator.operand) || (tiddler.fields[operator.operand].length === 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,operator.operand) && (tiddler.fields[operator.operand].length !== 0)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\t\t\t\t\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/haschanged.js": {
            "title": "$:/core/modules/filters/haschanged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/haschanged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returns tiddlers from the list that have a non-zero changecount.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.haschanged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) === 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.getChangeCount(title) > 0) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/indexes.js": {
            "title": "$:/core/modules/filters/indexes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/indexes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the indexes of a data tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.indexes = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar data = options.wiki.getTiddlerDataCached(title);\n\t\tif(data) {\n\t\t\t$tw.utils.pushTop(results,Object.keys(data));\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/insertbefore.js": {
            "title": "$:/core/modules/filters/insertbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/insertbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nInsert an item before another item in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.insertbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\tvar target = options.widget && options.widget.getVariable(operator.suffix || \"currentTiddler\");\n\tif(target !== operator.operand) {\n\t\t// Remove the entry from the list if it is present\n\t\tvar pos = results.indexOf(operator.operand);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,1);\n\t\t}\n\t\t// Insert the entry before the target marker\n\t\tpos = results.indexOf(target);\n\t\tif(pos !== -1) {\n\t\t\tresults.splice(pos,0,operator.operand);\n\t\t} else {\n\t\t\tresults.push(operator.operand);\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/is/binary.js": {
            "title": "$:/core/modules/filters/is/binary.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/binary.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[binary]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.binary = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isBinaryTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/blank.js": {
            "title": "$:/core/modules/filters/is/blank.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/blank.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[blank]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.blank = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!title) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/current.js": {
            "title": "$:/core/modules/filters/is/current.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/current.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[current]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.current = function(source,prefix,options) {\n\tvar results = [],\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\");\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title !== currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title === currTiddlerTitle) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/draft.js": {
            "title": "$:/core/modules/filters/is/draft.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/draft.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[draft]] analagous to [has[draft.of]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.draft = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !$tw.utils.hop(tiddler.fields,\"draft.of\")) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.hop(tiddler.fields,\"draft.of\") && (tiddler.fields[\"draft.of\"].length !== 0)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\t\t\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/image.js": {
            "title": "$:/core/modules/filters/is/image.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/image.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[image]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.image = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isImageTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/missing.js": {
            "title": "$:/core/modules/filters/is/missing.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/missing.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[missing]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.missing = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/orphan.js": {
            "title": "$:/core/modules/filters/is/orphan.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/orphan.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[orphan]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.orphan = function(source,prefix,options) {\n\tvar results = [],\n\t\torphanTitles = options.wiki.getOrphanTitles();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(orphanTitles.indexOf(title) !== -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/shadow.js": {
            "title": "$:/core/modules/filters/is/shadow.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/shadow.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[shadow]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadow = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isShadowTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/system.js": {
            "title": "$:/core/modules/filters/is/system.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/system.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[system]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.system = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.isSystemTiddler(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tag.js": {
            "title": "$:/core/modules/filters/is/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tag.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tag]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,prefix,options) {\n\tvar results = [],\n\t\ttagMap = options.wiki.getTagMap();\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!$tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif($tw.utils.hop(tagMap,title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/tiddler.js": {
            "title": "$:/core/modules/filters/is/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/tiddler.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[tiddler]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tiddler = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(options.wiki.tiddlerExists(title)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is/variable.js": {
            "title": "$:/core/modules/filters/is/variable.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is/variable.js\ntype: application/javascript\nmodule-type: isfilteroperator\n\nFilter function for [is[variable]]\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variable = function(source,prefix,options) {\n\tvar results = [];\n\tif(prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!(title in options.widget.variables)) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title in options.widget.variables) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "isfilteroperator"
        },
        "$:/core/modules/filters/is.js": {
            "title": "$:/core/modules/filters/is.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/is.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking tiddler properties\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar isFilterOperators;\n\nfunction getIsFilterOperators() {\n\tif(!isFilterOperators) {\n\t\tisFilterOperators = {};\n\t\t$tw.modules.applyMethods(\"isfilteroperator\",isFilterOperators);\n\t}\n\treturn isFilterOperators;\n}\n\n/*\nExport our filter function\n*/\nexports.is = function(source,operator,options) {\n\t// Dispatch to the correct isfilteroperator\n\tvar isFilterOperators = getIsFilterOperators();\n\tif(operator.operand) {\n\t\tvar isFilterOperator = isFilterOperators[operator.operand];\n\t\tif(isFilterOperator) {\n\t\t\treturn isFilterOperator(source,operator.prefix,options);\n\t\t} else {\n\t\t\treturn [$tw.language.getString(\"Error/IsFilterOperator\")];\n\t\t}\n\t} else {\n\t\t// Return all tiddlers if the operand is missing\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/limit.js": {
            "title": "$:/core/modules/filters/limit.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/limit.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for chopping the results to a specified maximum number of entries\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.limit = function(source,operator,options) {\n\tvar results = [];\n\t// Convert to an array\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Slice the array if necessary\n\tvar limit = Math.min(results.length,parseInt(operator.operand,10));\n\tif(operator.prefix === \"!\") {\n\t\tresults = results.slice(-limit);\n\t} else {\n\t\tresults = results.slice(0,limit);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/links.js": {
            "title": "$:/core/modules/filters/links.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/links.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning all the links from a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.links = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlerLinks(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/list.js": {
            "title": "$:/core/modules/filters/list.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/list.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddlers whose title is listed in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.list = function(source,operator,options) {\n\tvar results = [],\n\t\ttr = $tw.utils.parseTextReference(operator.operand),\n\t\tcurrTiddlerTitle = options.widget && options.widget.getVariable(\"currentTiddler\"),\n\t\tlist = options.wiki.getTiddlerList(tr.title || currTiddlerTitle,tr.field,tr.index);\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults = list;\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listed.js": {
            "title": "$:/core/modules/filters/listed.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listed.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that have the selected tiddlers in a list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.listed = function(source,operator,options) {\n\tvar field = operator.operand || \"list\",\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.findListingsOfTiddler(title,field));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/listops.js": {
            "title": "$:/core/modules/filters/listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for manipulating the current selection list\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOrder a list\n*/\nexports.order = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.operand.toLowerCase() === \"reverse\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.unshift(title);\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nReverse list\n*/\nexports.reverse = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.unshift(title);\n\t});\n\treturn results;\n};\n\n/*\nFirst entry/entries in list\n*/\nexports.first = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,count);\n};\n\n/*\nLast entry/entries in list\n*/\nexports.last = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(-count);\n};\n\n/*\nAll but the first entry/entries of the list\n*/\nexports.rest = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count);\n};\nexports.butfirst = exports.rest;\nexports.bf = exports.rest;\n\n/*\nAll but the last entry/entries of the list\n*/\nexports.butlast = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(0,-count);\n};\nexports.bl = exports.butlast;\n\n/*\nThe nth member of the list\n*/\nexports.nth = function(source,operator,options) {\n\tvar count = $tw.utils.getInt(operator.operand,1),\n\t\tresults = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results.slice(count - 1,count);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/lookup.js": {
            "title": "$:/core/modules/filters/lookup.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/lookup.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that looks up values via a title prefix\n\n[lookup:<field>[<prefix>]]\n\nPrepends the prefix to the selected items and returns the specified field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.lookup = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.getTiddlerText(operator.operand + title) || operator.suffix);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/match.js": {
            "title": "$:/core/modules/filters/match.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/match.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title matches a string\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.match = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = (operator.suffixes || [])[0] || [];\n\tif(suffixes.indexOf(\"caseinsensitive\") !== -1) {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() !== (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title.toLowerCase() === (operator.operand || \"\").toLowerCase()) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t} else {\n\t\tif(operator.prefix === \"!\") {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title !== operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(title === operator.operand) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/math.js": {
            "title": "$:/core/modules/filters/math.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/math.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for math. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\nNote that strings are converted to numbers automatically. Trailing non-digits are ignored.\n\n* \"\" converts to 0\n* \"12kk\" converts to 12\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.negate = makeNumericBinaryOperator(\n\tfunction(a) {return -a}\n);\n\nexports.abs = makeNumericBinaryOperator(\n\tfunction(a) {return Math.abs(a)}\n);\n\nexports.ceil = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(a)}\n);\n\nexports.floor = makeNumericBinaryOperator(\n\tfunction(a) {return Math.floor(a)}\n);\n\nexports.round = makeNumericBinaryOperator(\n\tfunction(a) {return Math.round(a)}\n);\n\nexports.trunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.trunc(a)}\n);\n\nexports.untrunc = makeNumericBinaryOperator(\n\tfunction(a) {return Math.ceil(Math.abs(a)) * Math.sign(a)}\n);\n\nexports.sign = makeNumericBinaryOperator(\n\tfunction(a) {return Math.sign(a)}\n);\n\nexports.add = makeNumericBinaryOperator(\n\tfunction(a,b) {return a + b;}\n);\n\nexports.subtract = makeNumericBinaryOperator(\n\tfunction(a,b) {return a - b;}\n);\n\nexports.multiply = makeNumericBinaryOperator(\n\tfunction(a,b) {return a * b;}\n);\n\nexports.divide = makeNumericBinaryOperator(\n\tfunction(a,b) {return a / b;}\n);\n\nexports.remainder = makeNumericBinaryOperator(\n\tfunction(a,b) {return a % b;}\n);\n\nexports.max = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.max(a,b);}\n);\n\nexports.min = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.min(a,b);}\n);\n\nexports.fixed = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toFixed.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.precision = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toPrecision.call(a,Math.min(Math.max(b,1),100));}\n);\n\nexports.exponential = makeNumericBinaryOperator(\n\tfunction(a,b) {return Number.prototype.toExponential.call(a,Math.min(Math.max(b,0),100));}\n);\n\nexports.power = makeNumericBinaryOperator(\n\tfunction(a,b) {return Math.pow(a,b);}\n);\n\nexports.log = makeNumericBinaryOperator(\n\tfunction(a,b) {\n\t\tif(b) {\n\t\t\treturn Math.log(a)/Math.log(b);\n\t\t} else {\n\t\t\treturn Math.log(a);\n\t\t}\n\t}\n);\n\nexports.sum = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator + value},\n\t0 // Initial value\n);\n\nexports.product = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return accumulator * value},\n\t1 // Initial value\n);\n\nexports.maxall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.max(accumulator,value)},\n\t-Infinity // Initial value\n);\n\nexports.minall = makeNumericReducingOperator(\n\tfunction(accumulator,value) {return Math.min(accumulator,value)},\n\tInfinity // Initial value\n);\n\nfunction makeNumericBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [],\n\t\t\tnumOperand = $tw.utils.parseNumber(operator.operand);\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push($tw.utils.stringifyNumber(fnCalc($tw.utils.parseNumber(title),numOperand)));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeNumericReducingOperator(fnCalc,initialValue) {\n\tinitialValue = initialValue || 0;\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\treturn [$tw.utils.stringifyNumber(result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,$tw.utils.parseNumber(currentValue));\n\t\t},initialValue))];\n\t};\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/minlength.js": {
            "title": "$:/core/modules/filters/minlength.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/minlength.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for filtering out titles that don't meet the minimum length in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.minlength = function(source,operator,options) {\n\tvar results = [],\n\t\tminLength = parseInt(operator.operand || \"\",10) || 0;\n\tsource(function(tiddler,title) {\n\t\tif(title.length >= minLength) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/modules.js": {
            "title": "$:/core/modules/filters/modules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/modules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the modules of a given type in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.modules = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.each($tw.modules.types[title],function(moduleInfo,moduleName) {\n\t\t\tresults.push(moduleName);\n\t\t});\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/moduletypes.js": {
            "title": "$:/core/modules/filters/moduletypes.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/moduletypes.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the module types in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.moduletypes = function(source,operator,options) {\n\tvar results = [];\n\t$tw.utils.each($tw.modules.types,function(moduleInfo,type) {\n\t\tresults.push(type);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/next.js": {
            "title": "$:/core/modules/filters/next.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/next.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs next in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.next = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch++;\n\t\tif(match > 0 && match < list.length) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/plugintiddlers.js": {
            "title": "$:/core/modules/filters/plugintiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/plugintiddlers.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the titles of the shadow tiddlers within a plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.plugintiddlers = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar pluginInfo = options.wiki.getPluginInfo(title) || options.wiki.getTiddlerDataCached(title,{tiddlers:[]});\n\t\tif(pluginInfo && pluginInfo.tiddlers) {\n\t\t\t$tw.utils.each(pluginInfo.tiddlers,function(fields,title) {\n\t\t\t\tresults.push(title);\n\t\t\t});\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/prefix.js": {
            "title": "$:/core/modules/filters/prefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/prefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title starts with a prefix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.prefix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/previous.js": {
            "title": "$:/core/modules/filters/previous.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/previous.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning the tiddler whose title occurs immediately prior in the list supplied in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.previous = function(source,operator,options) {\n\tvar results = [],\n\t\tlist = options.wiki.getTiddlerList(operator.operand);\n\tsource(function(tiddler,title) {\n\t\tvar match = list.indexOf(title);\n\t\t// increment match and then test if result is in range\n\t\tmatch--;\n\t\tif(match >= 0) {\n\t\t\tresults.push(list[match]);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/range.js": {
            "title": "$:/core/modules/filters/range.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/range.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for generating a numeric range.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.range = function(source,operator,options) {\n\tvar results = [];\n\t// Split the operand into numbers delimited by these symbols\n\tvar parts = operator.operand.split(/[,:;]/g),\n\t\tbeg, end, inc, i, fixed = 0;\n\tfor (i=0; i<parts.length; i++) {\n\t\t// Validate real number\n\t\tif(!/^\\s*[+-]?((\\d+(\\.\\d*)?)|(\\.\\d+))\\s*$/.test(parts[i])) {\n\t\t\treturn [\"range: bad number \\\"\" + parts[i] + \"\\\"\"];\n\t\t}\n\t\t// Count digits; the most precise number determines decimal places in output.\n\t\tvar frac = /\\.\\d+/.exec(parts[i]);\n\t\tif(frac) {\n\t\t\tfixed = Math.max(fixed,frac[0].length-1);\n\t\t}\n\t\tparts[i] = parseFloat(parts[i]);\n\t}\n\tswitch(parts.length) {\n\t\tcase 1:\n\t\t\tend = parts[0];\n\t\t\tif (end >= 1) {\n\t\t\t\tbeg = 1;\n\t\t\t}\n\t\t\telse if (end <= -1) {\n\t\t\t\tbeg = -1;\n\t\t\t}\n\t\t\telse {\n\t\t\t\treturn [];\n\t\t\t}\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 2:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = 1;\n\t\t\tbreak;\n\t\tcase 3:\n\t\t\tbeg = parts[0];\n\t\t\tend = parts[1];\n\t\t\tinc = Math.abs(parts[2]);\n\t\t\tbreak;\n\t}\n\tif(inc === 0) {\n\t\treturn [\"range: increment 0 causes infinite loop\"];\n\t}\n\t// May need to count backwards\n\tvar direction = ((end < beg) ? -1 : 1);\n\tinc *= direction;\n\t// Estimate number of resulting elements\n\tif((end - beg) / inc > 10000) {\n\t\treturn [\"range: too many steps (over 10K)\"];\n\t}\n\t// Avoid rounding error on last step\n\tend += direction * 0.5 * Math.pow(0.1,fixed);\n\tvar safety = 10010;\n\t// Enumerate the range\n\tif (end<beg) {\n\t\tfor(i=beg; i>end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tfor(i=beg; i<end; i+=inc) {\n\t\t\tresults.push(i.toFixed(fixed));\n\t\t\tif(--safety<0) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\tif(safety<0) {\n\t\treturn [\"range: unexpectedly large output\"];\n\t}\n\t// Reverse?\n\tif(operator.prefix === \"!\") {\n\t\tresults.reverse();\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/reduce.js": {
            "title": "$:/core/modules/filters/reduce.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/reduce.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator evaluates a subfilter for each item, making the running total available in the variable `accumulator`, and the current index available in the variable `index`\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.reduce = function(source,operator,options) {\n\t// Accumulate the list\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\t// Run the filter over each item\n\tvar filterFn = options.wiki.compileFilter(operator.operand),\n\t\taccumulator = operator.operands[1] || \"\";\n\tfor(var index=0; index<results.length; index++) {\n\t\tvar title = results[index],\n\t\t\tlist = filterFn.call(options.wiki,options.wiki.makeTiddlerIterator([title]),{\n\t\t\t\tgetVariable: function(name) {\n\t\t\t\t\tswitch(name) {\n\t\t\t\t\t\tcase \"currentTiddler\":\n\t\t\t\t\t\t\treturn \"\" + title;\n\t\t\t\t\t\tcase \"accumulator\":\n\t\t\t\t\t\t\treturn \"\" + accumulator;\n\t\t\t\t\t\tcase \"index\":\n\t\t\t\t\t\t\treturn \"\" + index;\n\t\t\t\t\t\tcase \"revIndex\":\n\t\t\t\t\t\t\treturn \"\" + (results.length - 1 - index);\n\t\t\t\t\t\tcase \"length\":\n\t\t\t\t\t\t\treturn \"\" + results.length;\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\tif(list.length > 0) {\n\t\t\taccumulator = \"\" +  list[0];\n\t\t}\n\t}\n\tif(results.length > 0) {\n\t\treturn [accumulator];\n\t} else {\n\t\treturn [];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/regexp.js": {
            "title": "$:/core/modules/filters/regexp.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/regexp.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for regexp matching\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.regexp = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldname = (operator.suffix || \"title\").toLowerCase(),\n\t\tregexpString, regexp, flags = \"\", match,\n\t\tgetFieldString = function(tiddler,title) {\n\t\t\tif(tiddler) {\n\t\t\t\treturn tiddler.getFieldString(fieldname);\n\t\t\t} else if(fieldname === \"title\") {\n\t\t\t\treturn title;\n\t\t\t} else {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t};\n\t// Process flags and construct regexp\n\tregexpString = operator.operand;\n\tmatch = /^\\(\\?([gim]+)\\)/.exec(regexpString);\n\tif(match) {\n\t\tflags = match[1];\n\t\tregexpString = regexpString.substr(match[0].length);\n\t} else {\n\t\tmatch = /\\(\\?([gim]+)\\)$/.exec(regexpString);\n\t\tif(match) {\n\t\t\tflags = match[1];\n\t\t\tregexpString = regexpString.substr(0,regexpString.length - match[0].length);\n\t\t}\n\t}\n\ttry {\n\t\tregexp = new RegExp(regexpString,flags);\n\t} catch(e) {\n\t\treturn [\"\" + e];\n\t}\n\t// Process the incoming tiddlers\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tvar text = getFieldString(tiddler,title);\n\t\t\tif(text !== null) {\n\t\t\t\tif(!!regexp.exec(text)) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removeprefix.js": {
            "title": "$:/core/modules/filters/removeprefix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removeprefix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a prefix from each title in the list. Titles that do not start with the prefix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removeprefix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title.substr(0,operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/removesuffix.js": {
            "title": "$:/core/modules/filters/removesuffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/removesuffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for removing a suffix from each title in the list. Titles that do not end with the suffix are removed.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.removesuffix = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tif(title && title.substr(-operator.operand.length) === operator.operand) {\n\t\t\tresults.push(title.substr(0,title.length - operator.operand.length));\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sameday.js": {
            "title": "$:/core/modules/filters/sameday.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sameday.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that selects tiddlers with a modified date field on the same day as the provided value.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sameday = function(source,operator,options) {\n\tvar results = [],\n\t\tfieldName = operator.suffix || \"modified\",\n\t\ttargetDate = (new Date($tw.utils.parseDate(operator.operand))).setHours(0,0,0,0);\n\t// Function to convert a date/time to a date integer\n\tsource(function(tiddler,title) {\n\t\tif(tiddler) {\n\t\t\tif(tiddler.getFieldDay(fieldName) === targetDate) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/search.js": {
            "title": "$:/core/modules/filters/search.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/search.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for searching for the text in the operand tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.search = function(source,operator,options) {\n\tvar invert = operator.prefix === \"!\";\n\tif(operator.suffixes) {\n\t\tvar hasFlag = function(flag) {\n\t\t\t\treturn (operator.suffixes[1] || []).indexOf(flag) !== -1;\n\t\t\t},\n\t\t\texcludeFields = false,\n\t\t\tfieldList = operator.suffixes[0] || [],\n\t\t\tfirstField = fieldList[0] || \"\", \n\t\t\tfirstChar = firstField.charAt(0),\n\t\t\tfields;\n\t\tif(firstChar === \"-\") {\n\t\t\tfields = [firstField.slice(1)].concat(fieldList.slice(1));\n\t\t\texcludeFields = true;\n\t\t} else if(fieldList[0] === \"*\"){\n\t\t\tfields = [];\n\t\t\texcludeFields = true;\n\t\t} else {\n\t\t\tfields = fieldList.slice(0);\n\t\t}\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert,\n\t\t\tfield: fields,\n\t\t\texcludeField: excludeFields,\n\t\t\tcaseSensitive: hasFlag(\"casesensitive\"),\n\t\t\tliteral: hasFlag(\"literal\"),\n\t\t\twhitespace: hasFlag(\"whitespace\"),\n\t\t\tanchored: hasFlag(\"anchored\"),\n\t\t\tregexp: hasFlag(\"regexp\"),\n\t\t\twords: hasFlag(\"words\")\n\t\t});\n\t} else {\n\t\treturn options.wiki.search(operator.operand,{\n\t\t\tsource: source,\n\t\t\tinvert: invert\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/shadowsource.js": {
            "title": "$:/core/modules/filters/shadowsource.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/shadowsource.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the source plugins for shadow tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.shadowsource = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar source = options.wiki.getShadowSource(title);\n\t\tif(source) {\n\t\t\t$tw.utils.pushTop(results,source);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/slugify.js": {
            "title": "$:/core/modules/filters/slugify.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/slugify.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for slugifying a tiddler title\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.slugify = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(options.wiki.slugify(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sort.js": {
            "title": "$:/core/modules/filters/sort.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sort.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,false);\n\treturn results;\n};\n\nexports.nsort = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",false,true);\n\treturn results;\n};\n\nexports.sortan = function(source, operator, options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results, operator.operand || \"title\", operator.prefix === \"!\",false,false,true);\n\treturn results;\n};\n\nexports.sortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,false);\n\treturn results;\n};\n\nexports.nsortcs = function(source,operator,options) {\n\tvar results = prepare_results(source);\n\toptions.wiki.sortTiddlers(results,operator.operand || \"title\",operator.prefix === \"!\",true,true);\n\treturn results;\n};\n\nvar prepare_results = function (source) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(title);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/sortsub.js": {
            "title": "$:/core/modules/filters/sortsub.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/sortsub.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for sorting by a subfilter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.sortsub = function(source,operator,options) {\n\t// Compile the subfilter\n\tvar filterFn = options.wiki.compileFilter(operator.operand);\n\t// Collect the input titles and the corresponding sort keys\n\tvar inputTitles = [],\n\t\tsortKeys = [];\n\tsource(function(tiddler,title) {\n\t\tinputTitles.push(title);\n\t\tvar r = filterFn.call(options.wiki,function(iterator) {\n\t\t\titerator(options.wiki.getTiddler(title),title);\n\t\t},{\n\t\t\tgetVariable: function(name) {\n\t\t\t\tif(name === \"currentTiddler\") {\n\t\t\t\t\treturn title;\n\t\t\t\t} else {\n\t\t\t\t\treturn options.widget.getVariable(name);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\tsortKeys.push(r[0] || \"\");\n\t});\n\t// Rather than sorting the titles array, we'll sort the indexes so that we can consult both arrays\n\tvar indexes = new Array(inputTitles.length);\n\tfor(var t=0; t<inputTitles.length; t++) {\n\t\tindexes[t] = t;\n\t}\n\t// Sort the indexes\n\tvar compareFn = $tw.utils.makeCompareFunction(operator.suffix,{defaultType: \"string\",invert: operator.prefix === \"!\"});\n\tindexes = indexes.sort(function(a,b) {\n\t\treturn compareFn(sortKeys[a],sortKeys[b]);\n\t});\n\t// Make the results array in order\n\tvar results = [];\n\t$tw.utils.each(indexes,function(index) {\n\t\tresults.push(inputTitles[index]);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/splitbefore.js": {
            "title": "$:/core/modules/filters/splitbefore.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/splitbefore.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator that splits each result on the first occurance of the specified separator and returns the unique values.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.splitbefore = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar parts = title.split(operator.operand);\n\t\tif(parts.length === 1) {\n\t\t\t$tw.utils.pushTop(results,parts[0]);\n\t\t} else {\n\t\t\t$tw.utils.pushTop(results,parts[0] + operator.operand);\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/storyviews.js": {
            "title": "$:/core/modules/filters/storyviews.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/storyviews.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the story views in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.storyviews = function(source,operator,options) {\n\tvar results = [],\n\t\tstoryviews = {};\n\t$tw.modules.applyMethods(\"storyview\",storyviews);\n\t$tw.utils.each(storyviews,function(info,name) {\n\t\tresults.push(name);\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/strings.js": {
            "title": "$:/core/modules/filters/strings.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/strings.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operators for strings. Unary/binary operators work on each item in turn, and return a new item list.\n\nSum/product/maxall/minall operate on the entire list, returning a single item.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.length = makeStringBinaryOperator(\n\tfunction(a) {return [\"\" + (\"\" + a).length];}\n);\n\nexports.uppercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toUpperCase()];}\n);\n\nexports.lowercase = makeStringBinaryOperator(\n\tfunction(a) {return [(\"\" + a).toLowerCase()];}\n);\n\nexports.sentencecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toSentenceCase(a)];}\n);\n\nexports.titlecase = makeStringBinaryOperator(\n\tfunction(a) {return [$tw.utils.toTitleCase(a)];}\n);\n\nexports.trim = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\toperand = (operator.operand || \"\"),\n\t\tfnCalc;\n\tif(suffix === \"prefix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimPrefix(a,b)];}\n\t} else if(suffix === \"suffix\") {\n\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix(a,b)];}\n\t} else {\n\t\tif(operand === \"\") {\n\t\t\tfnCalc = function(a) {return [$tw.utils.trim(a)];}\n\t\t} else {\n\t\t\tfnCalc = function(a,b) {return [$tw.utils.trimSuffix($tw.utils.trimPrefix(a,b),b)];}\n\t\t}\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,fnCalc(title,operand));\n\t});\n\treturn result;\n};\n\nexports.split = makeStringBinaryOperator(\n\tfunction(a,b) {return (\"\" + a).split(b);}\n);\n\nexports[\"enlist-input\"] = makeStringBinaryOperator(\n\tfunction(a,o,s) {return $tw.utils.parseStringArray(\"\" + a,(s === \"raw\"));}\n);\n\nexports.join = makeStringReducingOperator(\n\tfunction(accumulator,value,operand) {\n\t\tif(accumulator === null) {\n\t\t\treturn value;\n\t\t} else {\n\t\t\treturn accumulator + operand + value;\n\t\t}\n\t},null\n);\n\nfunction makeStringBinaryOperator(fnCalc) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tArray.prototype.push.apply(result,fnCalc(title,operator.operand || \"\",operator.suffix || \"\"));\n\t\t});\n\t\treturn result;\n\t};\n}\n\nfunction makeStringReducingOperator(fnCalc,initialValue) {\n\treturn function(source,operator,options) {\n\t\tvar result = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tresult.push(title);\n\t\t});\n\t\tif(result.length === 0) {\n\t\t\treturn [];\n\t\t}\n\t\treturn [result.reduce(function(accumulator,currentValue) {\n\t\t\treturn fnCalc(accumulator,currentValue,operator.operand || \"\");\n\t\t},initialValue) || \"\"];\n\t};\n}\n\nexports.splitregexp = function(source,operator,options) {\n\tvar result = [],\n\t\tsuffix = operator.suffix || \"\",\n\t\tflags = (suffix.indexOf(\"m\") !== -1 ? \"m\" : \"\") + (suffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tregExp;\n\ttry {\n\t\tregExp = new RegExp(operator.operand || \"\",flags);\t\t\n\t} catch(ex) {\n\t\treturn [\"RegExp error: \" + ex];\n\t}\n\tsource(function(tiddler,title) {\n\t\tArray.prototype.push.apply(result,title.split(regExp));\n\t});\t\t\n\treturn result;\n};\n\nexports[\"search-replace\"] = function(source,operator,options) {\n\tvar results = [],\n\t\tsuffixes = operator.suffixes || [],\n\t\tflagSuffix = (suffixes[0] ? (suffixes[0][0] || \"\") : \"\"),\n\t\tflags = (flagSuffix.indexOf(\"g\") !== -1 ? \"g\" : \"\") + (flagSuffix.indexOf(\"i\") !== -1 ? \"i\" : \"\"),\n\t\tisRegExp = (suffixes[1] && suffixes[1][0] === \"regexp\") ? true : false,\n\t\tsearchTerm,\n\t\tregExp;\n\t\n\tsource(function(tiddler,title) {\n\t\tif(title && (operator.operands.length > 1)) {\n\t\t\t//Escape regexp characters if the operand is not a regular expression\n\t\t\tsearchTerm = isRegExp ? operator.operand : $tw.utils.escapeRegExp(operator.operand);\n\t\t\ttry {\n\t\t\t\tregExp = new RegExp(searchTerm,flags);\n\t\t\t} catch(ex) {\n\t\t\t\treturn [\"RegExp error: \" + ex];\n\t\t\t}\n\t\t\tresults.push(\n\t\t\t\ttitle.replace(regExp,operator.operands[1])\n\t\t\t);\n\t\t} else {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\treturn results;\n};\n\nexports.pad = function(source,operator,options) {\n\tvar results = [],\n\t\ttargetLength = operator.operand ? parseInt(operator.operand) : 0,\n\t\tfill = operator.operands[1] || \"0\";\n\n\tsource(function(tiddler,title) {\n\t\tif(title && title.length) {\n\t\t\tif(title.length >= targetLength) {\n\t\t\t\tresults.push(title);\n\t\t\t} else {\n\t\t\t\tvar padString = \"\",\n\t\t\t\t\tpadStringLength = targetLength - title.length;\n\t\t\t\twhile (padStringLength > padString.length) {\n\t\t\t\t\tpadString += fill;\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t//make sure we do not exceed the specified length\n\t\t\t\tpadString = padString.slice(0,padStringLength);\n\t\t\t\tif(operator.suffix && (operator.suffix === \"suffix\")) {\n\t\t\t\t\ttitle = title + padString;\n\t\t\t\t} else {\n\t\t\t\t\ttitle = padString + title;\n\t\t\t\t}\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/subfilter.js": {
            "title": "$:/core/modules/filters/subfilter.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/subfilter.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning its operand evaluated as a filter\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subfilter = function(source,operator,options) {\n\tvar list = options.wiki.filterTiddlers(operator.operand,options.widget,source);\n\tif(operator.prefix === \"!\") {\n\t\tvar results = [];\n\t\tsource(function(tiddler,title) {\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t\treturn results;\n\t} else {\n\t\treturn list;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/subtiddlerfields.js": {
            "title": "$:/core/modules/filters/subtiddlerfields.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/subtiddlerfields.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the fields on the selected subtiddlers of the plugin named in the operand\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.subtiddlerfields = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tvar subtiddler = options.wiki.getSubTiddler(operator.operand,title);\n\t\tif(subtiddler) {\n\t\t\tfor(var fieldName in subtiddler.fields) {\n\t\t\t\t$tw.utils.pushTop(results,fieldName);\n\t\t\t}\n\t\t}\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/suffix.js": {
            "title": "$:/core/modules/filters/suffix.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/suffix.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking if a title ends with a suffix\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.suffix = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(title.substr(-operator.operand.length) === operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tag.js": {
            "title": "$:/core/modules/filters/tag.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tag.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for checking for the presence of a tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tag = function(source,operator,options) {\n\tvar results = [],indexedResults;\n\tif((operator.suffix || \"\").toLowerCase() === \"strict\" && !operator.operand) {\n\t\t// New semantics:\n\t\t// Always return copy of input if operator.operand is missing\n\t\tsource(function(tiddler,title) {\n\t\t\tresults.push(title);\n\t\t});\n\t} else {\n\t\t// Old semantics:\n\t\tvar tiddlers;\n\t\tif(operator.prefix === \"!\") {\n\t\t\t// Returns a copy of the input if operator.operand is missing\n\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\tsource(function(tiddler,title) {\n\t\t\t\tif(tiddlers.indexOf(title) === -1) {\n\t\t\t\t\tresults.push(title);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// Returns empty results if operator.operand is missing\n\t\t\tif(source.byTag) {\n\t\t\t\tindexedResults = source.byTag(operator.operand);\n\t\t\t\tif(indexedResults) {\n\t\t\t\t\treturn indexedResults;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\ttiddlers = options.wiki.getTiddlersWithTag(operator.operand);\n\t\t\t\tsource(function(tiddler,title) {\n\t\t\t\t\tif(tiddlers.indexOf(title) !== -1) {\n\t\t\t\t\t\tresults.push(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tresults = options.wiki.sortByList(results,operator.operand);\n\t\t\t}\n\t\t}\t\t\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tagging.js": {
            "title": "$:/core/modules/filters/tagging.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tagging.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all tiddlers that are tagged with the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tagging = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\t$tw.utils.pushTop(results,options.wiki.getTiddlersWithTag(title));\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/tags.js": {
            "title": "$:/core/modules/filters/tags.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/tags.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the tags of the selected tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.tags = function(source,operator,options) {\n\tvar tags = {};\n\tsource(function(tiddler,title) {\n\t\tvar t, length;\n\t\tif(tiddler && tiddler.fields.tags) {\n\t\t\tfor(t=0, length=tiddler.fields.tags.length; t<length; t++) {\n\t\t\t\ttags[tiddler.fields.tags[t]] = true;\n\t\t\t}\n\t\t}\n\t});\n\treturn Object.keys(tags);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/then.js": {
            "title": "$:/core/modules/filters/then.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/then.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for replacing any titles with a constant\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.then = function(source,operator,options) {\n\tvar results = [];\n\tsource(function(tiddler,title) {\n\t\tresults.push(operator.operand);\n\t});\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/title.js": {
            "title": "$:/core/modules/filters/title.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/title.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for comparing title fields for equality\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.title = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && tiddler.fields.title !== operator.operand) {\n\t\t\t\tresults.push(title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tresults.push(operator.operand);\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/untagged.js": {
            "title": "$:/core/modules/filters/untagged.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/untagged.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator returning all the selected tiddlers that are untagged\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.untagged = function(source,operator,options) {\n\tvar results = [];\n\tif(operator.prefix === \"!\") {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(tiddler && $tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length > 0) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tsource(function(tiddler,title) {\n\t\t\tif(!tiddler || !tiddler.hasField(\"tags\") || ($tw.utils.isArray(tiddler.fields.tags) && tiddler.fields.tags.length === 0)) {\n\t\t\t\t$tw.utils.pushTop(results,title);\n\t\t\t}\n\t\t});\n\t}\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/variables.js": {
            "title": "$:/core/modules/filters/variables.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/variables.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the active variables\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.variables = function(source,operator,options) {\n\tvar names = [];\n\tfor(var variable in options.widget.variables) {\n\t\tnames.push(variable);\n\t}\n\treturn names.sort();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/wikiparserrules.js": {
            "title": "$:/core/modules/filters/wikiparserrules.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/wikiparserrules.js\ntype: application/javascript\nmodule-type: filteroperator\n\nFilter operator for returning the names of the wiki parser rules in this wiki\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nExport our filter function\n*/\nexports.wikiparserrules = function(source,operator,options) {\n\tvar results = [],\n\t\toperand = operator.operand;\n\t$tw.utils.each($tw.modules.types.wikirule,function(mod) {\n\t\tvar exp = mod.exports;\n\t\tif(!operand || exp.types[operand]) {\n\t\t\tresults.push(exp.name);\n\t\t}\n\t});\n\tresults.sort();\n\treturn results;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters/x-listops.js": {
            "title": "$:/core/modules/filters/x-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/filters/x-listops.js\ntype: application/javascript\nmodule-type: filteroperator\n\nExtended filter operators to manipulate the current list.\n\n\\*/\n(function () {\n\n\t/*jslint node: true, browser: true */\n\t/*global $tw: false */\n\t\"use strict\";\n\n\t/*\n\tFetch titles from the current list\n\t*/\n\tvar prepare_results = function (source) {\n\tvar results = [];\n\t\tsource(function (tiddler, title) {\n\t\t\tresults.push(title);\n\t\t});\n\t\treturn results;\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list before the item named in the operand\n\t*/\n\texports.putbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list after the item named in the operand\n\t*/\n\texports.putafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -1) :\n\t\t\tresults.slice(0, index + 1).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tReplaces the item named in the operand with a number of items from the tail of the current list\n\t*/\n\texports.replace = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn (index === -1) ?\n\t\t\tresults.slice(0, -count) :\n\t\t\tresults.slice(0, index).concat(results.slice(-count)).concat(results.slice(index + 1, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the tail of the current list to the head of the list\n\t*/\n\texports.putfirst = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(-count).concat(results.slice(0, -count));\n\t};\n\n\t/*\n\tMoves a number of items from the head of the current list to the tail of the list\n\t*/\n\texports.putlast = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1);\n\t\treturn results.slice(count).concat(results.slice(0, count));\n\t};\n\n\t/*\n\tMoves the item named in the operand a number of places forward or backward in the list\n\t*/\n\texports.move = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,1),\n\t\t\tmarker = results.splice(index, 1),\n\t\t\toffset =  (index + count) > 0 ? index + count : 0;\n\t\treturn results.slice(0, offset).concat(marker).concat(results.slice(offset));\n\t};\n\n\t/*\n\tReturns the items from the current list that are after the item named in the operand\n\t*/\n\texports.allafter = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(index) :\n\t\t\tresults.slice(index + 1);\n\t};\n\n\t/*\n\tReturns the items from the current list that are before the item named in the operand\n\t*/\n\texports.allbefore = function (source, operator) {\n\t\tvar results = prepare_results(source),\n\t\t\tindex = results.indexOf(operator.operand);\n\t\treturn (index === -1) ? [] :\n\t\t\t(operator.suffix) ? results.slice(0, index + 1) :\n\t\t\tresults.slice(0, index);\n\t};\n\n\t/*\n\tAppends the items listed in the operand array to the tail of the current list\n\t*/\n\texports.append = function (source, operator) {\n\t\tvar append = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || append.length;\n\t\treturn (append.length === 0) ? results :\n\t\t\t(operator.prefix) ? results.concat(append.slice(-count)) :\n\t\t\tresults.concat(append.slice(0, count));\n\t};\n\n\t/*\n\tPrepends the items listed in the operand array to the head of the current list\n\t*/\n\texports.prepend = function (source, operator) {\n\t\tvar prepend = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = $tw.utils.getInt(operator.suffix,prepend.length);\n\t\treturn (prepend.length === 0) ? results :\n\t\t\t(operator.prefix) ? prepend.slice(-count).concat(results) :\n\t\t\tprepend.slice(0, count).concat(results);\n\t};\n\n\t/*\n\tReturns all items from the current list except the items listed in the operand array\n\t*/\n\texports.remove = function (source, operator) {\n\t\tvar array = $tw.utils.parseStringArray(operator.operand, \"true\"),\n\t\t\tresults = prepare_results(source),\n\t\t\tcount = parseInt(operator.suffix) || array.length,\n\t\t\tp,\n\t\t\tlen,\n\t\t\tindex;\n\t\tlen = array.length - 1;\n\t\tfor (p = 0; p < count; ++p) {\n\t\t\tif (operator.prefix) {\n\t\t\t\tindex = results.indexOf(array[len - p]);\n\t\t\t} else {\n\t\t\t\tindex = results.indexOf(array[p]);\n\t\t\t}\n\t\t\tif (index !== -1) {\n\t\t\t\tresults.splice(index, 1);\n\t\t\t}\n\t\t}\n\t\treturn results;\n\t};\n\n\t/*\n\tReturns all items from the current list sorted in the order of the items in the operand array\n\t*/\n\texports.sortby = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tif (!results || results.length < 2) {\n\t\t\treturn results;\n\t\t}\n\t\tvar lookup = $tw.utils.parseStringArray(operator.operand, \"true\");\n\t\tresults.sort(function (a, b) {\n\t\t\treturn lookup.indexOf(a) - lookup.indexOf(b);\n\t\t});\n\t\treturn results;\n\t};\n\n\t/*\n\tRemoves all duplicate items from the current list\n\t*/\n\texports.unique = function (source, operator) {\n\t\tvar results = prepare_results(source);\n\t\tvar set = results.reduce(function (a, b) {\n\t\t\tif (a.indexOf(b) < 0) {\n\t\t\t\ta.push(b);\n\t\t\t}\n\t\t\treturn a;\n\t\t}, []);\n\t\treturn set;\n\t};\n\n\tvar cycleValueInArray = function(results,operands,stepSize) {\n\t\tvar resultsIndex,\n\t\t\tstep = stepSize || 1,\n\t\t\ti = 0,\n\t\t\topLength = operands.length,\n\t\t\tnextOperandIndex;\t\t\n\t\tfor(i; i < opLength; i++) {\n\t\t\tresultsIndex = results.indexOf(operands[i]);\n\t\t\tif(resultsIndex !== -1) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\tif(resultsIndex !== -1) {\n\t\t\ti = i + step;\n\t\t\tnextOperandIndex = (i < opLength ? i : i - opLength);\n\t\t\tif(operands.length > 1) {\n\t\t\t\tresults.splice(resultsIndex,1,operands[nextOperandIndex]);\n\t\t\t} else {\n\t\t\t\tresults.splice(resultsIndex,1);\n\t\t\t}\n\t\t} else {\n\t\t\tresults.push(operands[0]);\n\t\t}\n\t\treturn results;\t\t\n\t}\n\n\t/*\n\tToggles an item in the current list.\n\t*/\t\n\texports.toggle = function(source,operator) {\n\t\treturn cycleValueInArray(prepare_results(source),operator.operands);\n\t}\n\n\texports.cycle = function(source,operator) {\n\t\tvar results = prepare_results(source),\n\t\t\toperands = (operator.operand.length ? $tw.utils.parseStringArray(operator.operand, \"true\") : [\"\"]),\n\t\t\tstep = $tw.utils.getInt(operator.operands[1]||\"\",1);\n\t\tif(step < 0) {\n\t\t\toperands.reverse();\n\t\t\tstep = Math.abs(step);\n\t\t}\t\n\t\treturn cycleValueInArray(results,operands,step);\n\t}\n\t\n})();\n",
            "type": "application/javascript",
            "module-type": "filteroperator"
        },
        "$:/core/modules/filters.js": {
            "title": "$:/core/modules/filters.js",
            "text": "/*\\\ntitle: $:/core/modules/filters.js\ntype: application/javascript\nmodule-type: wikimethod\n\nAdds tiddler filtering methods to the $tw.Wiki object.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParses an operation (i.e. a run) within a filter string\n\toperators: Array of array of operator nodes into which results should be inserted\n\tfilterString: filter string\n\tp: start position within the string\nReturns the new start position, after the parsed operation\n*/\nfunction parseFilterOperation(operators,filterString,p) {\n\tvar nextBracketPos, operator;\n\t// Skip the starting square bracket\n\tif(filterString.charAt(p++) !== \"[\") {\n\t\tthrow \"Missing [ in filter expression\";\n\t}\n\t// Process each operator in turn\n\tdo {\n\t\toperator = {};\n\t\t// Check for an operator prefix\n\t\tif(filterString.charAt(p) === \"!\") {\n\t\t\toperator.prefix = filterString.charAt(p++);\n\t\t}\n\t\t// Get the operator name\n\t\tnextBracketPos = filterString.substring(p).search(/[\\[\\{<\\/]/);\n\t\tif(nextBracketPos === -1) {\n\t\t\tthrow \"Missing [ in filter expression\";\n\t\t}\n\t\tnextBracketPos += p;\n\t\tvar bracket = filterString.charAt(nextBracketPos);\n\t\toperator.operator = filterString.substring(p,nextBracketPos);\n\t\t// Any suffix?\n\t\tvar colon = operator.operator.indexOf(':');\n\t\tif(colon > -1) {\n\t\t\t// The raw suffix for older filters\n\t\t\toperator.suffix = operator.operator.substring(colon + 1);\n\t\t\toperator.operator = operator.operator.substring(0,colon) || \"field\";\n\t\t\t// The processed suffix for newer filters\n\t\t\toperator.suffixes = [];\n\t\t\t$tw.utils.each(operator.suffix.split(\":\"),function(subsuffix) {\n\t\t\t\toperator.suffixes.push([]);\n\t\t\t\t$tw.utils.each(subsuffix.split(\",\"),function(entry) {\n\t\t\t\t\tentry = $tw.utils.trim(entry);\n\t\t\t\t\tif(entry) {\n\t\t\t\t\t\toperator.suffixes[operator.suffixes.length - 1].push(entry); \n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t}\n\t\t// Empty operator means: title\n\t\telse if(operator.operator === \"\") {\n\t\t\toperator.operator = \"title\";\n\t\t}\n\t\toperator.operands = [];\n\t\tfunction parseOperand(bracketType) {\n\t\t\tvar operand = {};\n\t\t\tswitch (bracketType) {\n\t\t\t\tcase \"{\": // Curly brackets\n\t\t\t\t\toperand.indirect = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"}\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"[\": // Square brackets\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\"]\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"<\": // Angle brackets\n\t\t\t\t\toperand.variable = true;\n\t\t\t\t\tnextBracketPos = filterString.indexOf(\">\",p);\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"/\": // regexp brackets\n\t\t\t\t\tvar rex = /^((?:[^\\\\\\/]*|\\\\.)*)\\/(?:\\(([mygi]+)\\))?/g,\n\t\t\t\t\t\trexMatch = rex.exec(filterString.substring(p));\n\t\t\t\t\tif(rexMatch) {\n\t\t\t\t\t\toperator.regexp = new RegExp(rexMatch[1], rexMatch[2]);\n\t// DEPRECATION WARNING\n\tconsole.log(\"WARNING: Filter\",operator.operator,\"has a deprecated regexp operand\",operator.regexp);\n\t\t\t\t\t\tnextBracketPos = p + rex.lastIndex - 1;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthrow \"Unterminated regular expression in filter expression\";\n\t\t\t\t\t}\n\t\t\t\t\tbreak;\n\t\t\t}\n\n\t\t\tif(nextBracketPos === -1) {\n\t\t\t\tthrow \"Missing closing bracket in filter expression\";\n\t\t\t}\n\t\t\tif(!operator.regexp) {\n\t\t\t\toperand.text = filterString.substring(p,nextBracketPos);\n\t\t\t\toperator.operands.push(operand);\n\t\t\t}\n\t\t\tp = nextBracketPos + 1;\n\t\t}\n\t\t\n\t\tp = nextBracketPos + 1;\n\t\tparseOperand(bracket);\n\t\t\n\t\t// Check for multiple operands\n\t\twhile(filterString.charAt(p) === \",\") {\n\t\t\tp++;\n\t\t\tif(/^[\\[\\{<\\/]/.test(filterString.substring(p))) {\n\t\t\t\tnextBracketPos = p;\n\t\t\t\tp++;\n\t\t\t\tparseOperand(filterString.charAt(nextBracketPos));\n\t\t\t} else {\n\t\t\t\tthrow \"Missing [ in filter expression\";\n\t\t\t}\n\t\t}\n\t\t\n\t\t// Push this operator\n\t\toperators.push(operator);\n\t} while(filterString.charAt(p) !== \"]\");\n\t// Skip the ending square bracket\n\tif(filterString.charAt(p++) !== \"]\") {\n\t\tthrow \"Missing ] in filter expression\";\n\t}\n\t// Return the parsing position\n\treturn p;\n}\n\n/*\nParse a filter string\n*/\nexports.parseFilter = function(filterString) {\n\tfilterString = filterString || \"\";\n\tvar results = [], // Array of arrays of operator nodes {operator:,operand:}\n\t\tp = 0, // Current position in the filter string\n\t\tmatch;\n\tvar whitespaceRegExp = /(\\s+)/mg,\n\t\toperandRegExp = /((?:\\+|\\-|~|=|\\:(\\w+))?)(?:(\\[)|(?:\"([^\"]*)\")|(?:'([^']*)')|([^\\s\\[\\]]+))/mg;\n\twhile(p < filterString.length) {\n\t\t// Skip any whitespace\n\t\twhitespaceRegExp.lastIndex = p;\n\t\tmatch = whitespaceRegExp.exec(filterString);\n\t\tif(match && match.index === p) {\n\t\t\tp = p + match[0].length;\n\t\t}\n\t\t// Match the start of the operation\n\t\tif(p < filterString.length) {\n\t\t\toperandRegExp.lastIndex = p;\n\t\t\tmatch = operandRegExp.exec(filterString);\n\t\t\tif(!match || match.index !== p) {\n\t\t\t\tthrow $tw.language.getString(\"Error/FilterSyntax\");\n\t\t\t}\n\t\t\tvar operation = {\n\t\t\t\tprefix: \"\",\n\t\t\t\toperators: []\n\t\t\t};\n\t\t\tif(match[1]) {\n\t\t\t\toperation.prefix = match[1];\n\t\t\t\tp = p + operation.prefix.length;\n\t\t\t\tif(match[2]) {\n\t\t\t\t\toperation.namedPrefix = match[2];\n\t\t\t\t}\n\t\t\t}\n\t\t\tif(match[3]) { // Opening square bracket\n\t\t\t\tp = parseFilterOperation(operation.operators,filterString,p);\n\t\t\t} else {\n\t\t\t\tp = match.index + match[0].length;\n\t\t\t}\n\t\t\tif(match[4] || match[5] || match[6]) { // Double quoted string, single quoted string or unquoted title\n\t\t\t\toperation.operators.push(\n\t\t\t\t\t{operator: \"title\", operands: [{text: match[4] || match[5] || match[6]}]}\n\t\t\t\t);\n\t\t\t}\n\t\t\tresults.push(operation);\n\t\t}\n\t}\n\treturn results;\n};\n\nexports.getFilterOperators = function() {\n\tif(!this.filterOperators) {\n\t\t$tw.Wiki.prototype.filterOperators = {};\n\t\t$tw.modules.applyMethods(\"filteroperator\",this.filterOperators);\n\t}\n\treturn this.filterOperators;\n};\n\nexports.getFilterRunPrefixes = function() {\n\tif(!this.filterRunPrefixes) {\n\t\t$tw.Wiki.prototype.filterRunPrefixes = {};\n\t\t$tw.modules.applyMethods(\"filterrunprefix\",this.filterRunPrefixes);\n\t}\n\treturn this.filterRunPrefixes;\n}\n\nexports.filterTiddlers = function(filterString,widget,source) {\n\tvar fn = this.compileFilter(filterString);\n\treturn fn.call(this,source,widget);\n};\n\n/*\nCompile a filter into a function with the signature fn(source,widget) where:\nsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\nwidget: an optional widget node for retrieving the current tiddler etc.\n*/\nexports.compileFilter = function(filterString) {\n\tvar filterParseTree;\n\ttry {\n\t\tfilterParseTree = this.parseFilter(filterString);\n\t} catch(e) {\n\t\treturn function(source,widget) {\n\t\t\treturn [$tw.language.getString(\"Error/Filter\") + \": \" + e];\n\t\t};\n\t}\n\t// Get the hashmap of filter operator functions\n\tvar filterOperators = this.getFilterOperators();\n\t// Assemble array of functions, one for each operation\n\tvar operationFunctions = [];\n\t// Step through the operations\n\tvar self = this;\n\t$tw.utils.each(filterParseTree,function(operation) {\n\t\t// Create a function for the chain of operators in the operation\n\t\tvar operationSubFunction = function(source,widget) {\n\t\t\tvar accumulator = source,\n\t\t\t\tresults = [],\n\t\t\t\tcurrTiddlerTitle = widget && widget.getVariable(\"currentTiddler\");\n\t\t\t$tw.utils.each(operation.operators,function(operator) {\n\t\t\t\tvar operands = [],\n\t\t\t\t\toperatorFunction;\n\t\t\t\tif(!operator.operator) {\n\t\t\t\t\toperatorFunction = filterOperators.title;\n\t\t\t\t} else if(!filterOperators[operator.operator]) {\n\t\t\t\t\toperatorFunction = filterOperators.field;\n\t\t\t\t} else {\n\t\t\t\t\toperatorFunction = filterOperators[operator.operator];\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\t$tw.utils.each(operator.operands,function(operand) {\n\t\t\t\t\tif(operand.indirect) {\n\t\t\t\t\t\toperand.value = self.getTextReference(operand.text,\"\",currTiddlerTitle);\n\t\t\t\t\t} else if(operand.variable) {\n\t\t\t\t\t\toperand.value = widget.getVariable(operand.text,{defaultValue: \"\"});\n\t\t\t\t\t} else {\n\t\t\t\t\t\toperand.value = operand.text;\n\t\t\t\t\t}\n\t\t\t\t\toperands.push(operand.value);\n\t\t\t\t});\n\n\t\t\t\t// Invoke the appropriate filteroperator module\n\t\t\t\tresults = operatorFunction(accumulator,{\n\t\t\t\t\t\t\toperator: operator.operator,\n\t\t\t\t\t\t\toperand: operands.length > 0 ? operands[0] : undefined,\n\t\t\t\t\t\t\toperands: operands,\n\t\t\t\t\t\t\tprefix: operator.prefix,\n\t\t\t\t\t\t\tsuffix: operator.suffix,\n\t\t\t\t\t\t\tsuffixes: operator.suffixes,\n\t\t\t\t\t\t\tregexp: operator.regexp\n\t\t\t\t\t\t},{\n\t\t\t\t\t\t\twiki: self,\n\t\t\t\t\t\t\twidget: widget\n\t\t\t\t\t\t});\n\t\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\t\taccumulator = self.makeTiddlerIterator(results);\n\t\t\t\t} else {\n\t\t\t\t\taccumulator = results;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif($tw.utils.isArray(results)) {\n\t\t\t\treturn results;\n\t\t\t} else {\n\t\t\t\tvar resultArray = [];\n\t\t\t\tresults(function(tiddler,title) {\n\t\t\t\t\tresultArray.push(title);\n\t\t\t\t});\n\t\t\t\treturn resultArray;\n\t\t\t}\n\t\t};\n\t\tvar filterRunPrefixes = self.getFilterRunPrefixes();\n\t\t// Wrap the operator functions in a wrapper function that depends on the prefix\n\t\toperationFunctions.push((function() {\n\t\t\tvar options = {wiki: self};\n\t\t\tswitch(operation.prefix || \"\") {\n\t\t\t\tcase \"\": // No prefix means that the operation is unioned into the result\n\t\t\t\t\treturn filterRunPrefixes[\"or\"](operationSubFunction, options);\n\t\t\t\tcase \"=\": // The results of the operation are pushed into the result without deduplication\n\t\t\t\t\treturn filterRunPrefixes[\"all\"](operationSubFunction, options);\n\t\t\t\tcase \"-\": // The results of this operation are removed from the main result\n\t\t\t\t\treturn filterRunPrefixes[\"except\"](operationSubFunction, options);\n\t\t\t\tcase \"+\": // This operation is applied to the main results so far\n\t\t\t\t\treturn filterRunPrefixes[\"and\"](operationSubFunction, options);\n\t\t\t\tcase \"~\": // This operation is unioned into the result only if the main result so far is empty\n\t\t\t\t\treturn filterRunPrefixes[\"else\"](operationSubFunction, options);\n\t\t\t\tdefault: \n\t\t\t\t\tif(operation.namedPrefix && filterRunPrefixes[operation.namedPrefix]) {\n\t\t\t\t\t\treturn filterRunPrefixes[operation.namedPrefix](operationSubFunction, options);\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn function(results,source,widget) {\n\t\t\t\t\t\t\tresults.clear();\n\t\t\t\t\t\t\tresults.push($tw.language.getString(\"Error/FilterRunPrefix\"));\n\t\t\t\t\t\t};\n\t\t\t\t\t}\n\t\t\t}\n\t\t})());\n\t});\n\t// Return a function that applies the operations to a source iterator of tiddler titles\n\treturn $tw.perf.measure(\"filter: \" + filterString,function filterFunction(source,widget) {\n\t\tif(!source) {\n\t\t\tsource = self.each;\n\t\t} else if(typeof source === \"object\") { // Array or hashmap\n\t\t\tsource = self.makeTiddlerIterator(source);\n\t\t}\n\t\tvar results = new $tw.utils.LinkedList();\n\t\t$tw.utils.each(operationFunctions,function(operationFunction) {\n\t\t\toperationFunction(results,source,widget);\n\t\t});\n\t\treturn results.toArray();\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/indexers/backlinks-indexer.js": {
            "title": "$:/core/modules/indexers/backlinks-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/backlinks-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers' backlinks\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\n\nfunction BacklinksIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nBacklinksIndexer.prototype.init = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype.rebuild = function() {\n\tthis.index = null;\n}\n\nBacklinksIndexer.prototype._getLinks = function(tiddler) {\n\tvar parser =  this.wiki.parseText(tiddler.fields.type, tiddler.fields.text, {});\n\tif(parser) {\n\t\treturn this.wiki.extractLinks(parser.tree);\n\t}\n\treturn [];\n}\n\nBacklinksIndexer.prototype.update = function(updateDescriptor) {\n\tif(!this.index) {\n\t\treturn;\n\t}\n\tvar newLinks = [],\n\t    oldLinks = [],\n\t    self = this;\n\tif(updateDescriptor.old.exists) {\n\t\toldLinks = this._getLinks(updateDescriptor.old.tiddler);\n\t}\n\tif(updateDescriptor.new.exists) {\n\t\tnewLinks = this._getLinks(updateDescriptor.new.tiddler);\n\t}\n\n\t$tw.utils.each(oldLinks,function(link) {\n\t\tif(self.index[link]) {\n\t\t\tdelete self.index[link][updateDescriptor.old.tiddler.fields.title];\n\t\t}\n\t});\n\t$tw.utils.each(newLinks,function(link) {\n\t\tif(!self.index[link]) {\n\t\t\tself.index[link] = Object.create(null);\n\t\t}\n\t\tself.index[link][updateDescriptor.new.tiddler.fields.title] = true;\n\t});\n}\n\nBacklinksIndexer.prototype.lookup = function(title) {\n\tif(!this.index) {\n\t\tthis.index = Object.create(null);\n\t\tvar self = this;\n\t\tthis.wiki.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self._getLinks(tiddler);\n\t\t\t$tw.utils.each(links, function(link) {\n\t\t\t\tif(!self.index[link]) {\n\t\t\t\t\tself.index[link] = Object.create(null);\n\t\t\t\t}\n\t\t\t\tself.index[link][title] = true;\n\t\t\t});\n\t\t});\n\t}\n\tif(this.index[title]) {\n\t\treturn Object.keys(this.index[title]);\n\t} else {\n\t\treturn [];\n\t}\n}\n\nexports.BacklinksIndexer = BacklinksIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/indexers/field-indexer.js": {
            "title": "$:/core/modules/indexers/field-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/field-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each field value\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nvar DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH = 128;\n\nfunction FieldIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nFieldIndexer.prototype.init = function() {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = DEFAULT_MAXIMUM_INDEXED_VALUE_LENGTH;\n\tthis.addIndexMethods();\n}\n\n// Provided for testing\nFieldIndexer.prototype.setMaxIndexedValueLength = function(length) {\n\tthis.index = null;\n\tthis.maxIndexedValueLength = length;\n};\n\nFieldIndexer.prototype.addIndexMethods = function() {\n\tvar self = this;\n\tthis.wiki.each.byField = function(name,value) {\n\t\tvar titles = self.wiki.allTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachShadow.byField = function(name,value) {\n\t\tvar titles = self.wiki.allShadowTitles(),\n\t\t\tlookup = self.lookup(name,value);\n\t\treturn lookup && lookup.filter(function(title) {\n\t\t\treturn titles.indexOf(title) !== -1;\n\t\t});\n\t};\n\tthis.wiki.eachTiddlerPlusShadows.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n\tthis.wiki.eachShadowPlusTiddlers.byField = function(name,value) {\n\t\tvar lookup = self.lookup(name,value);\n\t\treturn lookup ? lookup.slice(0) : null;\n\t};\n};\n\n/*\nTear down and then rebuild the index as if all tiddlers have changed\n*/\nFieldIndexer.prototype.rebuild = function() {\n\t// Invalidate the index so that it will be rebuilt when it is next used\n\tthis.index = null;\n};\n\n/*\nBuild the index for a particular field\n*/\nFieldIndexer.prototype.buildIndexForField = function(name) {\n\tvar self = this;\n\t// Hashmap by field name of hashmap by field value of array of tiddler titles\n\tthis.index = this.index || Object.create(null);\n\tthis.index[name] = Object.create(null);\n\tvar baseIndex = this.index[name];\n\t// Update the index for each tiddler\n\tthis.wiki.eachTiddlerPlusShadows(function(tiddler,title) {\n\t\tif(name in tiddler.fields) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\t// Skip any values above the maximum length\n\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\tbaseIndex[value] = baseIndex[value] || [];\n\t\t\t\tbaseIndex[value].push(title);\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nUpdate the index in the light of a tiddler value changing; note that the title must be identical. (Renames are handled as a separate delete and create)\nupdateDescriptor: {old: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>},new: {tiddler: <tiddler>, shadow: <boolean>, exists: <boolean>}}\n*/\nFieldIndexer.prototype.update = function(updateDescriptor) {\n\tvar self = this;\n\t// Don't do anything if the index hasn't been built yet\n\tif(this.index === null) {\n\t\treturn;\n\t}\n\t// Remove the old tiddler from the index\n\tif(updateDescriptor.old.tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor.old.tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor.old.tiddler.getFieldString(name),\n\t\t\t\t\ttiddlerList = indexEntry[value];\n\t\t\t\tif(tiddlerList) {\n\t\t\t\t\tvar index = tiddlerList.indexOf(updateDescriptor.old.tiddler.fields.title);\n\t\t\t\t\tif(index !== -1) {\n\t\t\t\t\t\ttiddlerList.splice(index,1);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t// Add the new tiddler to the index\n\tif(updateDescriptor[\"new\"].tiddler) {\n\t\t$tw.utils.each(this.index,function(indexEntry,name) {\n\t\t\tif(name in updateDescriptor[\"new\"].tiddler.fields) {\n\t\t\t\tvar value = updateDescriptor[\"new\"].tiddler.getFieldString(name);\n\t\t\t\tif(value.length < self.maxIndexedValueLength) {\n\t\t\t\t\tindexEntry[value] = indexEntry[value] || [];\n\t\t\t\t\tindexEntry[value].push(updateDescriptor[\"new\"].tiddler.fields.title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n// Lookup the given field returning a list of tiddler titles\nFieldIndexer.prototype.lookup = function(name,value) {\n\t// Fail the lookup if the value is too long\n\tif(value.length >= this.maxIndexedValueLength) {\n\t\treturn null;\n\t}\n\t// Update the index if it has yet to be built\n\tif(this.index === null || !this.index[name]) {\n\t\tthis.buildIndexForField(name);\n\t}\n\treturn this.index[name][value] || [];\n};\n\nexports.FieldIndexer = FieldIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/indexers/tag-indexer.js": {
            "title": "$:/core/modules/indexers/tag-indexer.js",
            "text": "/*\\\ntitle: $:/core/modules/indexers/tag-indexer.js\ntype: application/javascript\nmodule-type: indexer\n\nIndexes the tiddlers with each tag\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global modules: false */\n\"use strict\";\n\nfunction TagIndexer(wiki) {\n\tthis.wiki = wiki;\n}\n\nTagIndexer.prototype.init = function() {\n\tthis.subIndexers = [\n\t\tnew TagSubIndexer(this,\"each\"),\n\t\tnew TagSubIndexer(this,\"eachShadow\"),\n\t\tnew TagSubIndexer(this,\"eachTiddlerPlusShadows\"),\n\t\tnew TagSubIndexer(this,\"eachShadowPlusTiddlers\")\n\t];\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.addIndexMethod();\n\t});\n};\n\nTagIndexer.prototype.rebuild = function() {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.rebuild();\n\t});\n};\n\nTagIndexer.prototype.update = function(updateDescriptor) {\n\t$tw.utils.each(this.subIndexers,function(subIndexer) {\n\t\tsubIndexer.update(updateDescriptor);\n\t});\n};\n\nfunction TagSubIndexer(indexer,iteratorMethod) {\n\tthis.indexer = indexer;\n\tthis.iteratorMethod = iteratorMethod;\n\tthis.index = null; // Hashmap of tag title to {isSorted: bool, titles: [array]} or null if not yet initialised\n}\n\nTagSubIndexer.prototype.addIndexMethod = function() {\n\tvar self = this;\n\tthis.indexer.wiki[this.iteratorMethod].byTag = function(tag) {\n\t\treturn self.lookup(tag).slice(0);\n\t};\n};\n\nTagSubIndexer.prototype.rebuild = function() {\n\tvar self = this;\n\t// Hashmap by tag of array of {isSorted:, titles:[]}\n\tthis.index = Object.create(null);\n\t// Add all the tags\n\tthis.indexer.wiki[this.iteratorMethod](function(tiddler,title) {\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\tif(!self.index[tag]) {\n\t\t\t\tself.index[tag] = {isSorted: false, titles: [title]};\n\t\t\t} else {\n\t\t\t\tself.index[tag].titles.push(title);\n\t\t\t}\n\t\t});\t\t\n\t});\n};\n\nTagSubIndexer.prototype.update = function(updateDescriptor) {\n\tthis.index = null;\n};\n\nTagSubIndexer.prototype.lookup = function(tag) {\n\t// Update the index if it has yet to be built\n\tif(this.index === null) {\n\t\tthis.rebuild();\n\t}\n\tvar indexRecord = this.index[tag];\n\tif(indexRecord) {\n\t\tif(!indexRecord.isSorted) {\n\t\t\tif(this.indexer.wiki.sortByList) {\n\t\t\t\tindexRecord.titles = this.indexer.wiki.sortByList(indexRecord.titles,tag);\n\t\t\t}\t\t\t\n\t\t\tindexRecord.isSorted = true;\n\t\t}\n\t\treturn indexRecord.titles;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n\nexports.TagIndexer = TagIndexer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "indexer"
        },
        "$:/core/modules/info/platform.js": {
            "title": "$:/core/modules/info/platform.js",
            "text": "/*\\\ntitle: $:/core/modules/info/platform.js\ntype: application/javascript\nmodule-type: info\n\nInitialise basic platform $:/info/ tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.getInfoTiddlerFields = function(updateInfoTiddlersCallback) {\n\tvar mapBoolean = function(value) {return value ? \"yes\" : \"no\";},\n\t\tinfoTiddlerFields = [];\n\t// Basics\n\tinfoTiddlerFields.push({title: \"$:/info/browser\", text: mapBoolean(!!$tw.browser)});\n\tinfoTiddlerFields.push({title: \"$:/info/node\", text: mapBoolean(!!$tw.node)});\n\tinfoTiddlerFields.push({title: \"$:/info/startup-timestamp\", text: $tw.utils.stringifyDate(new Date())});\n\tif($tw.browser) {\n\t\t// Document location\n\t\tvar setLocationProperty = function(name,value) {\n\t\t\t\tinfoTiddlerFields.push({title: \"$:/info/url/\" + name, text: value});\t\t\t\n\t\t\t},\n\t\t\tlocation = document.location;\n\t\tsetLocationProperty(\"full\", (location.toString()).split(\"#\")[0]);\n\t\tsetLocationProperty(\"host\", location.host);\n\t\tsetLocationProperty(\"hostname\", location.hostname);\n\t\tsetLocationProperty(\"protocol\", location.protocol);\n\t\tsetLocationProperty(\"port\", location.port);\n\t\tsetLocationProperty(\"pathname\", location.pathname);\n\t\tsetLocationProperty(\"search\", location.search);\n\t\tsetLocationProperty(\"origin\", location.origin);\n\t\t// Screen size\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/width\", text: window.screen.width.toString()});\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/screen/height\", text: window.screen.height.toString()});\n \t\t// Dark mode through event listener on MediaQueryList\n \t\tvar mqList = window.matchMedia(\"(prefers-color-scheme: dark)\"),\n \t\t\tgetDarkModeTiddler = function() {return {title: \"$:/info/darkmode\", text: mqList.matches ? \"yes\" : \"no\"};};\n \t\tinfoTiddlerFields.push(getDarkModeTiddler());\n \t\tmqList.addListener(function(event) {\n \t\t\tupdateInfoTiddlersCallback([getDarkModeTiddler()]);\n \t\t});\n\t\t// Language\n\t\tinfoTiddlerFields.push({title: \"$:/info/browser/language\", text: navigator.language || \"\"});\n\t}\n\treturn infoTiddlerFields;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "info"
        },
        "$:/core/modules/keyboard.js": {
            "title": "$:/core/modules/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/keyboard.js\ntype: application/javascript\nmodule-type: global\n\nKeyboard handling utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar namedKeys = {\n\t\"cancel\": 3,\n\t\"help\": 6,\n\t\"backspace\": 8,\n\t\"tab\": 9,\n\t\"clear\": 12,\n\t\"return\": 13,\n\t\"enter\": 13,\n\t\"pause\": 19,\n\t\"escape\": 27,\n\t\"space\": 32,\n\t\"page_up\": 33,\n\t\"page_down\": 34,\n\t\"end\": 35,\n\t\"home\": 36,\n\t\"left\": 37,\n\t\"up\": 38,\n\t\"right\": 39,\n\t\"down\": 40,\n\t\"printscreen\": 44,\n\t\"insert\": 45,\n\t\"delete\": 46,\n\t\"0\": 48,\n\t\"1\": 49,\n\t\"2\": 50,\n\t\"3\": 51,\n\t\"4\": 52,\n\t\"5\": 53,\n\t\"6\": 54,\n\t\"7\": 55,\n\t\"8\": 56,\n\t\"9\": 57,\n\t\"firefoxsemicolon\": 59,\n\t\"firefoxequals\": 61,\n\t\"a\": 65,\n\t\"b\": 66,\n\t\"c\": 67,\n\t\"d\": 68,\n\t\"e\": 69,\n\t\"f\": 70,\n\t\"g\": 71,\n\t\"h\": 72,\n\t\"i\": 73,\n\t\"j\": 74,\n\t\"k\": 75,\n\t\"l\": 76,\n\t\"m\": 77,\n\t\"n\": 78,\n\t\"o\": 79,\n\t\"p\": 80,\n\t\"q\": 81,\n\t\"r\": 82,\n\t\"s\": 83,\n\t\"t\": 84,\n\t\"u\": 85,\n\t\"v\": 86,\n\t\"w\": 87,\n\t\"x\": 88,\n\t\"y\": 89,\n\t\"z\": 90,\n\t\"numpad0\": 96,\n\t\"numpad1\": 97,\n\t\"numpad2\": 98,\n\t\"numpad3\": 99,\n\t\"numpad4\": 100,\n\t\"numpad5\": 101,\n\t\"numpad6\": 102,\n\t\"numpad7\": 103,\n\t\"numpad8\": 104,\n\t\"numpad9\": 105,\n\t\"multiply\": 106,\n\t\"add\": 107,\n\t\"separator\": 108,\n\t\"subtract\": 109,\n\t\"decimal\": 110,\n\t\"divide\": 111,\n\t\"f1\": 112,\n\t\"f2\": 113,\n\t\"f3\": 114,\n\t\"f4\": 115,\n\t\"f5\": 116,\n\t\"f6\": 117,\n\t\"f7\": 118,\n\t\"f8\": 119,\n\t\"f9\": 120,\n\t\"f10\": 121,\n\t\"f11\": 122,\n\t\"f12\": 123,\n\t\"f13\": 124,\n\t\"f14\": 125,\n\t\"f15\": 126,\n\t\"f16\": 127,\n\t\"f17\": 128,\n\t\"f18\": 129,\n\t\"f19\": 130,\n\t\"f20\": 131,\n\t\"f21\": 132,\n\t\"f22\": 133,\n\t\"f23\": 134,\n\t\"f24\": 135,\n\t\"firefoxminus\": 173,\n\t\"semicolon\": 186,\n\t\"equals\": 187,\n\t\"comma\": 188,\n\t\"dash\": 189,\n\t\"period\": 190,\n\t\"slash\": 191,\n\t\"backquote\": 192,\n\t\"openbracket\": 219,\n\t\"backslash\": 220,\n\t\"closebracket\": 221,\n\t\"quote\": 222\n};\n\nfunction KeyboardManager(options) {\n\tvar self = this;\n\toptions = options || \"\";\n\t// Save the named key hashmap\n\tthis.namedKeys = namedKeys;\n\t// Create a reverse mapping of code to keyname\n\tthis.keyNames = [];\n\t$tw.utils.each(namedKeys,function(keyCode,name) {\n\t\tself.keyNames[keyCode] = name.substr(0,1).toUpperCase() + name.substr(1);\n\t});\n\t// Save the platform-specific name of the \"meta\" key\n\tthis.metaKeyName = $tw.platform.isMac ? \"cmd-\" : \"win-\";\n\tthis.shortcutKeysList = [], // Stores the shortcut-key descriptors\n\tthis.shortcutActionList = [], // Stores the corresponding action strings\n\tthis.shortcutParsedList = []; // Stores the parsed key descriptors\n\tthis.lookupNames = [\"shortcuts\"];\n\tthis.lookupNames.push($tw.platform.isMac ? \"shortcuts-mac\" : \"shortcuts-not-mac\")\n\tthis.lookupNames.push($tw.platform.isWindows ? \"shortcuts-windows\" : \"shortcuts-not-windows\");\n\tthis.lookupNames.push($tw.platform.isLinux ? \"shortcuts-linux\" : \"shortcuts-not-linux\");\n\tthis.updateShortcutLists(this.getShortcutTiddlerList());\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tself.handleShortcutChanges(changes);\n\t});\n}\n\n/*\nReturn an array of keycodes for the modifier keys ctrl, shift, alt, meta\n*/\nKeyboardManager.prototype.getModifierKeys = function() {\n\treturn [\n\t\t16, // Shift\n\t\t17, // Ctrl\n\t\t18, // Alt\n\t\t20, // CAPS LOCK\n\t\t91, // Meta (left)\n\t\t93, // Meta (right)\n\t\t224 // Meta (Firefox)\n\t]\n};\n\n/*\nParses a key descriptor into the structure:\n{\n\tkeyCode: numeric keycode\n\tshiftKey: boolean\n\taltKey: boolean\n\tctrlKey: boolean\n\tmetaKey: boolean\n}\nKey descriptors have the following format:\n\tctrl+enter\n\tctrl+shift+alt+A\n*/\nKeyboardManager.prototype.parseKeyDescriptor = function(keyDescriptor) {\n\tvar components = keyDescriptor.split(/\\+|\\-/),\n\t\tinfo = {\n\t\t\tkeyCode: 0,\n\t\t\tshiftKey: false,\n\t\t\taltKey: false,\n\t\t\tctrlKey: false,\n\t\t\tmetaKey: false\n\t\t};\n\tfor(var t=0; t<components.length; t++) {\n\t\tvar s = components[t].toLowerCase(),\n\t\t\tc = s.charCodeAt(0);\n\t\t// Look for modifier keys\n\t\tif(s === \"ctrl\") {\n\t\t\tinfo.ctrlKey = true;\n\t\t} else if(s === \"shift\") {\n\t\t\tinfo.shiftKey = true;\n\t\t} else if(s === \"alt\") {\n\t\t\tinfo.altKey = true;\n\t\t} else if(s === \"meta\" || s === \"cmd\" || s === \"win\") {\n\t\t\tinfo.metaKey = true;\n\t\t}\n\t\t// Replace named keys with their code\n\t\tif(this.namedKeys[s]) {\n\t\t\tinfo.keyCode = this.namedKeys[s];\n\t\t}\n\t}\n\tif(info.keyCode) {\n\t\treturn info;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nParse a list of key descriptors into an array of keyInfo objects. The key descriptors can be passed as an array of strings or a space separated string\n*/\nKeyboardManager.prototype.parseKeyDescriptors = function(keyDescriptors,options) {\n\tvar self = this;\n\toptions = options || {};\n\toptions.stack = options.stack || [];\n\tvar wiki = options.wiki || $tw.wiki;\n\tif(typeof keyDescriptors === \"string\" && keyDescriptors === \"\") {\n\t\treturn [];\n\t}\n\tif(!$tw.utils.isArray(keyDescriptors)) {\n\t\tkeyDescriptors = keyDescriptors.split(\" \");\n\t}\n\tvar result = [];\n\t$tw.utils.each(keyDescriptors,function(keyDescriptor) {\n\t\t// Look for a named shortcut\n\t\tif(keyDescriptor.substr(0,2) === \"((\" && keyDescriptor.substr(-2,2) === \"))\") {\n\t\t\tif(options.stack.indexOf(keyDescriptor) === -1) {\n\t\t\t\toptions.stack.push(keyDescriptor);\n\t\t\t\tvar name = keyDescriptor.substring(2,keyDescriptor.length - 2),\n\t\t\t\t\tlookupName = function(configName) {\n\t\t\t\t\t\tvar keyDescriptors = wiki.getTiddlerText(\"$:/config/\" + configName + \"/\" + name);\n\t\t\t\t\t\tif(keyDescriptors) {\n\t\t\t\t\t\t\tresult.push.apply(result,self.parseKeyDescriptors(keyDescriptors,options));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t$tw.utils.each(self.lookupNames,function(platformDescriptor) {\n\t\t\t\t\tlookupName(platformDescriptor);\n\t\t\t\t});\n\t\t\t}\n\t\t} else {\n\t\t\tresult.push(self.parseKeyDescriptor(keyDescriptor));\n\t\t}\n\t});\n\treturn result;\n};\n\nKeyboardManager.prototype.getPrintableShortcuts = function(keyInfoArray) {\n\tvar self = this,\n\t\tresult = [];\n\t$tw.utils.each(keyInfoArray,function(keyInfo) {\n\t\tif(keyInfo) {\n\t\t\tresult.push((keyInfo.ctrlKey ? \"ctrl-\" : \"\") + \n\t\t\t\t   (keyInfo.shiftKey ? \"shift-\" : \"\") + \n\t\t\t\t   (keyInfo.altKey ? \"alt-\" : \"\") + \n\t\t\t\t   (keyInfo.metaKey ? self.metaKeyName : \"\") + \n\t\t\t\t   (self.keyNames[keyInfo.keyCode]));\n\t\t}\n\t});\n\treturn result;\n}\n\nKeyboardManager.prototype.checkKeyDescriptor = function(event,keyInfo) {\n\treturn keyInfo &&\n\t\t\tevent.keyCode === keyInfo.keyCode && \n\t\t\tevent.shiftKey === keyInfo.shiftKey && \n\t\t\tevent.altKey === keyInfo.altKey && \n\t\t\tevent.ctrlKey === keyInfo.ctrlKey && \n\t\t\tevent.metaKey === keyInfo.metaKey;\n};\n\nKeyboardManager.prototype.checkKeyDescriptors = function(event,keyInfoArray) {\n\tfor(var t=0; t<keyInfoArray.length; t++) {\n\t\tif(this.checkKeyDescriptor(event,keyInfoArray[t])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.getEventModifierKeyDescriptor = function(event) {\n\treturn event.ctrlKey && !event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl\" : \n\t\tevent.shiftKey && !event.ctrlKey && !event.altKey && !event.metaKey ? \"shift\" : \n\t\tevent.ctrlKey && event.shiftKey && !event.altKey && !event.metaKey ? \"ctrl-shift\" : \n\t\tevent.altKey && !event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt\" : \n\t\tevent.altKey && event.shiftKey && !event.ctrlKey && !event.metaKey ? \"alt-shift\" : \n\t\tevent.altKey && event.ctrlKey && !event.shiftKey && !event.metaKey ? \"ctrl-alt\" : \n\t\tevent.altKey && event.shiftKey && event.ctrlKey && !event.metaKey ? \"ctrl-alt-shift\" : \n\t\tevent.metaKey && !event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta\" : \n\t\tevent.metaKey && event.ctrlKey && !event.shiftKey && !event.altKey ? \"meta-ctrl\" :\n\t\tevent.metaKey && event.ctrlKey && event.shiftKey && !event.altKey ? \"meta-ctrl-shift\" :\n\t\tevent.metaKey && event.ctrlKey & event.shiftKey && event.altKey ? \"meta-ctrl-alt-shift\" : \"normal\";\n};\n\nKeyboardManager.prototype.getShortcutTiddlerList = function() {\n\treturn $tw.wiki.getTiddlersWithTag(\"$:/tags/KeyboardShortcut\");\n};\n\nKeyboardManager.prototype.updateShortcutLists = function(tiddlerList) {\n\tthis.shortcutTiddlers = tiddlerList;\n\tfor(var i=0; i<tiddlerList.length; i++) {\n\t\tvar title = tiddlerList[i],\n\t\t\ttiddlerFields = $tw.wiki.getTiddler(title).fields;\n\t\tthis.shortcutKeysList[i] = tiddlerFields.key !== undefined ? tiddlerFields.key : undefined;\n\t\tthis.shortcutActionList[i] = tiddlerFields.text;\n\t\tthis.shortcutParsedList[i] = this.shortcutKeysList[i] !== undefined ? this.parseKeyDescriptors(this.shortcutKeysList[i]) : undefined;\n\t}\n};\n\nKeyboardManager.prototype.handleKeydownEvent = function(event) {\n\tvar key, action;\n\tfor(var i=0; i<this.shortcutTiddlers.length; i++) {\n\t\tif(this.shortcutParsedList[i] !== undefined && this.checkKeyDescriptors(event,this.shortcutParsedList[i])) {\n\t\t\tkey = this.shortcutParsedList[i];\n\t\t\taction = this.shortcutActionList[i];\n\t\t}\n\t}\n\tif(key !== undefined) {\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\t$tw.rootWidget.invokeActionString(action,$tw.rootWidget);\n\t\treturn true;\n\t}\n\treturn false;\n};\n\nKeyboardManager.prototype.detectNewShortcuts = function(changedTiddlers) {\n\tvar shortcutConfigTiddlers = [],\n\t\thandled = false;\n\t$tw.utils.each(this.lookupNames,function(platformDescriptor) {\n\t\tvar descriptorString = \"$:/config/\" + platformDescriptor + \"/\";\n\t\tObject.keys(changedTiddlers).forEach(function(configTiddler) {\n\t\t\tvar configString = configTiddler.substr(0, configTiddler.lastIndexOf(\"/\") + 1);\n\t\t\tif(configString === descriptorString) {\n\t\t\t\tshortcutConfigTiddlers.push(configTiddler);\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t});\n\t});\n\tif(handled) {\n\t\treturn $tw.utils.hopArray(changedTiddlers,shortcutConfigTiddlers);\n\t} else {\n\t\treturn false;\n\t}\n};\n\nKeyboardManager.prototype.handleShortcutChanges = function(changedTiddlers) {\n\tvar newList = this.getShortcutTiddlerList();\n\tvar hasChanged = $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers) ? true :\n\t\t($tw.utils.hopArray(changedTiddlers,newList) ? true :\n\t\t(this.detectNewShortcuts(changedTiddlers))\n\t);\n\t// Re-cache shortcuts if something changed\n\tif(hasChanged) {\n\t\tthis.updateShortcutLists(newList);\n\t}\n};\n\nexports.KeyboardManager = KeyboardManager;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/language.js": {
            "title": "$:/core/modules/language.js",
            "text": "/*\\\ntitle: $:/core/modules/language.js\ntype: application/javascript\nmodule-type: global\n\nThe $tw.Language() manages translateable strings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate an instance of the language manager. Options include:\nwiki: wiki from which to retrieve translation tiddlers\n*/\nfunction Language(options) {\n\toptions = options || \"\";\n\tthis.wiki = options.wiki || $tw.wiki;\n}\n\n/*\nReturn a wikified translateable string. The title is automatically prefixed with \"$:/language/\"\nOptions include:\nvariables: optional hashmap of variables to supply to the language wikification\n*/\nLanguage.prototype.getString = function(title,options) {\n\toptions = options || {};\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.renderTiddler(\"text/plain\",title,{variables: options.variables});\n};\n\n/*\nReturn a raw, unwikified translateable string. The title is automatically prefixed with \"$:/language/\"\n*/\nLanguage.prototype.getRawString = function(title) {\n\ttitle = \"$:/language/\" + title;\n\treturn this.wiki.getTiddlerText(title);\n};\n\nexports.Language = Language;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/macros/changecount.js": {
            "title": "$:/core/modules/macros/changecount.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/changecount.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the changecount for the current tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"changecount\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn this.wiki.getChangeCount(this.getVariable(\"currentTiddler\")) + \"\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/contrastcolour.js": {
            "title": "$:/core/modules/macros/contrastcolour.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/contrastcolour.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to choose which of two colours has the highest contrast with a base colour\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"contrastcolour\";\n\nexports.params = [\n\t{name: \"target\"},\n\t{name: \"fallbackTarget\"},\n\t{name: \"colourA\"},\n\t{name: \"colourB\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(target,fallbackTarget,colourA,colourB) {\n\tvar rgbTarget = $tw.utils.parseCSSColor(target) || $tw.utils.parseCSSColor(fallbackTarget);\n\tif(!rgbTarget) {\n\t\treturn colourA;\n\t}\n\tvar rgbColourA = $tw.utils.parseCSSColor(colourA),\n\t\trgbColourB = $tw.utils.parseCSSColor(colourB);\n\tif(rgbColourA && !rgbColourB) {\n\t\treturn rgbColourA;\n\t}\n\tif(rgbColourB && !rgbColourA) {\n\t\treturn rgbColourB;\n\t}\n\tif(!rgbColourA && !rgbColourB) {\n\t\t// If neither colour is readable, return a crude inverse of the target\n\t\treturn [255 - rgbTarget[0],255 - rgbTarget[1],255 - rgbTarget[2],rgbTarget[3]];\n\t}\n\t// Colour brightness formula derived from http://www.w3.org/WAI/ER/WD-AERT/#color-contrast\n\tvar brightnessTarget = rgbTarget[0] * 0.299 + rgbTarget[1] * 0.587 + rgbTarget[2] * 0.114,\n\t\tbrightnessA = rgbColourA[0] * 0.299 + rgbColourA[1] * 0.587 + rgbColourA[2] * 0.114,\n\t\tbrightnessB = rgbColourB[0] * 0.299 + rgbColourB[1] * 0.587 + rgbColourB[2] * 0.114;\n\treturn Math.abs(brightnessTarget - brightnessA) > Math.abs(brightnessTarget - brightnessB) ? colourA : colourB;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/csvtiddlers.js": {
            "title": "$:/core/modules/macros/csvtiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/csvtiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to CSV\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"csvtiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"format\"},\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,format) {\n\tvar self = this,\n\t\ttiddlers = this.wiki.filterTiddlers(filter),\n\t\ttiddler,\n\t\tfields = [],\n\t\tt,f;\n\t// Collect all the fields\n\tfor(t=0;t<tiddlers.length; t++) {\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\tfor(f in tiddler.fields) {\n\t\t\tif(fields.indexOf(f) === -1) {\n\t\t\t\tfields.push(f);\n\t\t\t}\n\t\t}\n\t}\n\t// Sort the fields and bring the standard ones to the front\n\tfields.sort();\n\t\"title text modified modifier created creator\".split(\" \").reverse().forEach(function(value,index) {\n\t\tvar p = fields.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tfields.splice(p,1);\n\t\t\tfields.unshift(value)\n\t\t}\n\t});\n\t// Output the column headings\n\tvar output = [], row = [];\n\tfields.forEach(function(value) {\n\t\trow.push(quoteAndEscape(value))\n\t});\n\toutput.push(row.join(\",\"));\n\t// Output each tiddler\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\trow = [];\n\t\ttiddler = this.wiki.getTiddler(tiddlers[t]);\n\t\t\tfor(f=0; f<fields.length; f++) {\n\t\t\t\trow.push(quoteAndEscape(tiddler ? tiddler.getFieldString(fields[f]) || \"\" : \"\"));\n\t\t\t}\n\t\toutput.push(row.join(\",\"));\n\t}\n\treturn output.join(\"\\n\");\n};\n\nfunction quoteAndEscape(value) {\n\treturn \"\\\"\" + value.replace(/\"/mg,\"\\\"\\\"\") + \"\\\"\";\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/displayshortcuts.js": {
            "title": "$:/core/modules/macros/displayshortcuts.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/displayshortcuts.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to display a list of keyboard shortcuts in human readable form. Notably, it resolves named shortcuts like `((bold))` to the underlying keystrokes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"displayshortcuts\";\n\nexports.params = [\n\t{name: \"shortcuts\"},\n\t{name: \"prefix\"},\n\t{name: \"separator\"},\n\t{name: \"suffix\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(shortcuts,prefix,separator,suffix) {\n\tvar shortcutArray = $tw.keyboardManager.getPrintableShortcuts($tw.keyboardManager.parseKeyDescriptors(shortcuts,{\n\t\twiki: this.wiki\n\t}));\n\tif(shortcutArray.length > 0) {\n\t\tshortcutArray.sort(function(a,b) {\n\t\t    return a.toLowerCase().localeCompare(b.toLowerCase());\n\t\t})\n\t\treturn prefix + shortcutArray.join(separator) + suffix;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddler.js": {
            "title": "$:/core/modules/macros/jsontiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddler.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output a single tiddler to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddler\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\ttitle = title || this.getVariable(\"currentTiddler\");\n\tvar tiddler = !!title && this.wiki.getTiddler(title),\n\t\tfields = new Object();\n\tif(tiddler) {\n\t\tfor(var field in tiddler.fields) {\n\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t}\n\t}\n\treturn JSON.stringify(fields,null,$tw.config.preferences.jsonSpaces);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/jsontiddlers.js": {
            "title": "$:/core/modules/macros/jsontiddlers.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/jsontiddlers.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to output tiddlers matching a filter to JSON\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"jsontiddlers\";\n\nexports.params = [\n\t{name: \"filter\"},\n\t{name: \"spaces\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(filter,spaces) {\n\treturn this.wiki.getTiddlersAsJson(filter,$tw.utils.parseInt(spaces));\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/makedatauri.js": {
            "title": "$:/core/modules/macros/makedatauri.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/makedatauri.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to convert a string of text to a data URI\n\n<<makedatauri text:\"Text to be converted\" type:\"text/vnd.tiddlywiki\">>\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"makedatauri\";\n\nexports.params = [\n\t{name: \"text\"},\n\t{name: \"type\"},\n\t{name: \"_canonical_uri\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(text,type,_canonical_uri) {\n\treturn $tw.utils.makeDataUri(text,type,_canonical_uri);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/now.js": {
            "title": "$:/core/modules/macros/now.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/now.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return a formatted version of the current time\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"now\";\n\nexports.params = [\n\t{name: \"format\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(format) {\n\treturn $tw.utils.formatDateString(new Date(),format || \"0hh:0mm, DDth MMM YYYY\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/qualify.js": {
            "title": "$:/core/modules/macros/qualify.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/qualify.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to qualify a state tiddler title according\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"qualify\";\n\nexports.params = [\n\t{name: \"title\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(title) {\n\treturn title + \"-\" + this.getStateQualifier();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/resolvepath.js": {
            "title": "$:/core/modules/macros/resolvepath.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/resolvepath.js\ntype: application/javascript\nmodule-type: macro\n\nResolves a relative path for an absolute rootpath.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"resolvepath\";\n\nexports.params = [\n\t{name: \"source\"},\n\t{name: \"root\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(source, root) {\n\treturn $tw.utils.resolvePath(source, root);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/unusedtitle.js": {
            "title": "$:/core/modules/macros/unusedtitle.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/unusedtitle.js\ntype: application/javascript\nmodule-type: macro\nMacro to return a new title that is unused in the wiki. It can be given a name as a base.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"unusedtitle\";\n\nexports.params = [\n\t{name: \"baseName\"},\n\t{name: \"options\"}\n];\n\n/*\nRun the macro\n*/\nexports.run = function(baseName, options) {\n\tif(!baseName) {\n\t\tbaseName = $tw.language.getString(\"DefaultNewTiddlerTitle\");\n\t}\n\treturn this.wiki.generateNewTitle(baseName, options);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/macros/version.js": {
            "title": "$:/core/modules/macros/version.js",
            "text": "/*\\\ntitle: $:/core/modules/macros/version.js\ntype: application/javascript\nmodule-type: macro\n\nMacro to return the TiddlyWiki core version number\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInformation about this macro\n*/\n\nexports.name = \"version\";\n\nexports.params = [];\n\n/*\nRun the macro\n*/\nexports.run = function() {\n\treturn $tw.version;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/core/modules/parsers/audioparser.js": {
            "title": "$:/core/modules/parsers/audioparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/audioparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe audio parser parses an audio tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar AudioParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"audio\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"audio/ogg\"] = AudioParser;\nexports[\"audio/mpeg\"] = AudioParser;\nexports[\"audio/mp3\"] = AudioParser;\nexports[\"audio/mp4\"] = AudioParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/binaryparser.js": {
            "title": "$:/core/modules/parsers/binaryparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/binaryparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe binary parser parses a binary tiddler into a warning message and download link\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar BinaryParser = function(type,text,options) {\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on binary tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!title\"}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to external or internal data URI\n\tif(options._canonical_uri) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: options._canonical_uri\n\t\t};\n\t} else if(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/octet-stream\"] = BinaryParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/csvparser.js": {
            "title": "$:/core/modules/parsers/csvparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/csvparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe CSV text parser processes CSV files into a table wrapped in a scrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar CsvParser = function(type,text,options) {\n\t// Table framework\n\tthis.tree = [{\n\t\t\"type\": \"scrollable\", \"children\": [{\n\t\t\t\"type\": \"element\", \"tag\": \"table\", \"children\": [{\n\t\t\t\t\"type\": \"element\", \"tag\": \"tbody\", \"children\": []\n\t\t\t}], \"attributes\": {\n\t\t\t\t\"class\": {\"type\": \"string\", \"value\": \"tc-csv-table\"}\n\t\t\t}\n\t\t}]\n\t}];\n\t// Split the text into lines\n\tvar lines = text.split(/\\r?\\n/mg),\n\t\ttag = \"th\";\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar lineText = lines[line];\n\t\tif(lineText) {\n\t\t\tvar row = {\n\t\t\t\t\t\"type\": \"element\", \"tag\": \"tr\", \"children\": []\n\t\t\t\t};\n\t\t\tvar columns = lineText.split(\",\");\n\t\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\t\trow.children.push({\n\t\t\t\t\t\t\"type\": \"element\", \"tag\": tag, \"children\": [{\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": columns[column]\n\t\t\t\t\t\t}]\n\t\t\t\t\t});\n\t\t\t}\n\t\t\ttag = \"td\";\n\t\t\tthis.tree[0].children[0].children[0].children.push(row);\n\t\t}\n\t}\n};\n\nexports[\"text/csv\"] = CsvParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/htmlparser.js": {
            "title": "$:/core/modules/parsers/htmlparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/htmlparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe HTML parser displays text as raw HTML\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar HtmlParser = function(type,text,options) {\n\tvar src;\n\tif(options._canonical_uri) {\n\t\tsrc = options._canonical_uri;\n\t} else if(text) {\n\t\tsrc = \"data:text/html;charset=utf-8,\" + encodeURIComponent(text);\n\t}\n\tthis.tree = [{\n\t\ttype: \"element\",\n\t\ttag: \"iframe\",\n\t\tattributes: {\n\t\t\tsrc: {type: \"string\", value: src},\n\t\t\tsandbox: {type: \"string\", value: \"\"}\n\t\t}\n\t}];\n};\n\nexports[\"text/html\"] = HtmlParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/imageparser.js": {
            "title": "$:/core/modules/parsers/imageparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/imageparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe image parser parses an image into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"img\",\n\t\t\tattributes: {}\n\t\t};\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\tif(type === \"image/svg+xml\" || type === \".svg\") {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:image/svg+xml,\" + encodeURIComponent(text)};\n\t\t} else {\n\t\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t\t}\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"image/svg+xml\"] = ImageParser;\nexports[\"image/jpg\"] = ImageParser;\nexports[\"image/jpeg\"] = ImageParser;\nexports[\"image/png\"] = ImageParser;\nexports[\"image/gif\"] = ImageParser;\nexports[\"image/webp\"] = ImageParser;\nexports[\"image/heic\"] = ImageParser;\nexports[\"image/heif\"] = ImageParser;\nexports[\"image/x-icon\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/utils/parseutils.js": {
            "title": "$:/core/modules/utils/parseutils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parseutils.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions concerned with parsing text into tokens.\n\nMost functions have the following pattern:\n\n* The parameters are:\n** `source`: the source string being parsed\n** `pos`: the current parse position within the string\n** Any further parameters are used to identify the token that is being parsed\n* The return value is:\n** null if the token was not found at the specified position\n** an object representing the token with the following standard fields:\n*** `type`: string indicating the type of the token\n*** `start`: start position of the token in the source string\n*** `end`: end position of the token in the source string\n*** Any further fields required to describe the token\n\nThe exception is `skipWhiteSpace`, which just returns the position after the whitespace.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for a whitespace token. Returns null if not found, otherwise returns {type: \"whitespace\", start:, end:,}\n*/\nexports.parseWhiteSpace = function(source,pos) {\n\tvar p = pos,c;\n\twhile(true) {\n\t\tc = source.charAt(p);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tp++;\n\t\t} else {\n\t\t\tbreak;\n\t\t}\n\t}\n\tif(p === pos) {\n\t\treturn null;\n\t} else {\n\t\treturn {\n\t\t\ttype: \"whitespace\",\n\t\t\tstart: pos,\n\t\t\tend: p\n\t\t}\n\t}\n};\n\n/*\nConvenience wrapper for parseWhiteSpace. Returns the position after the whitespace\n*/\nexports.skipWhiteSpace = function(source,pos) {\n\tvar c;\n\twhile(true) {\n\t\tc = source.charAt(pos);\n\t\tif((c === \" \") || (c === \"\\f\") || (c === \"\\n\") || (c === \"\\r\") || (c === \"\\t\") || (c === \"\\v\") || (c === \"\\u00a0\")) { // Ignores some obscure unicode spaces\n\t\t\tpos++;\n\t\t} else {\n\t\t\treturn pos;\n\t\t}\n\t}\n};\n\n/*\nLook for a given string token. Returns null if not found, otherwise returns {type: \"token\", value:, start:, end:,}\n*/\nexports.parseTokenString = function(source,pos,token) {\n\tvar match = source.indexOf(token,pos) === pos;\n\tif(match) {\n\t\treturn {\n\t\t\ttype: \"token\",\n\t\t\tvalue: token,\n\t\t\tstart: pos,\n\t\t\tend: pos + token.length\n\t\t};\n\t}\n\treturn null;\n};\n\n/*\nLook for a token matching a regex. Returns null if not found, otherwise returns {type: \"regexp\", match:, start:, end:,}\n*/\nexports.parseTokenRegExp = function(source,pos,reToken) {\n\tvar node = {\n\t\ttype: \"regexp\",\n\t\tstart: pos\n\t};\n\treToken.lastIndex = pos;\n\tnode.match = reToken.exec(source);\n\tif(node.match && node.match.index === pos) {\n\t\tnode.end = pos + node.match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a string literal. Returns null if not found, otherwise returns {type: \"string\", value:, start:, end:,}\n*/\nexports.parseStringLiteral = function(source,pos) {\n\tvar node = {\n\t\ttype: \"string\",\n\t\tstart: pos\n\t};\n\tvar reString = /(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\")|(?:'([^']*)')/g;\n\treString.lastIndex = pos;\n\tvar match = reString.exec(source);\n\tif(match && match.index === pos) {\n\t\tnode.value = match[1] !== undefined ? match[1] :(\n\t\t\tmatch[2] !== undefined ? match[2] : match[3] \n\t\t\t\t\t);\n\t\tnode.end = pos + match[0].length;\n\t\treturn node;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLook for a macro invocation parameter. Returns null if not found, or {type: \"macro-parameter\", name:, value:, start:, end:}\n*/\nexports.parseMacroParameter = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macro-parameter\",\n\t\tstart: pos\n\t};\n\t// Define our regexp\n\tvar reMacroParameter = /(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\\s>\"'=]+)))/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the parameter\n\tvar token = $tw.utils.parseTokenRegExp(source,pos,reMacroParameter);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the parameter details\n\tnode.value = token.match[2] !== undefined ? token.match[2] : (\n\t\t\t\t\ttoken.match[3] !== undefined ? token.match[3] : (\n\t\t\t\t\t\ttoken.match[4] !== undefined ? token.match[4] : (\n\t\t\t\t\t\t\ttoken.match[5] !== undefined ? token.match[5] : (\n\t\t\t\t\t\t\t\ttoken.match[6] !== undefined ? token.match[6] : (\n\t\t\t\t\t\t\t\t\t\"\"\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t)\n\t\t\t\t\t)\n\t\t\t\t);\n\tif(token.match[1]) {\n\t\tnode.name = token.match[1];\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for a macro invocation. Returns null if not found, or {type: \"macrocall\", name:, parameters:, start:, end:}\n*/\nexports.parseMacroInvocation = function(source,pos) {\n\tvar node = {\n\t\ttype: \"macrocall\",\n\t\tstart: pos,\n\t\tparams: []\n\t};\n\t// Define our regexps\n\tvar reMacroName = /([^\\s>\"'=]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double less than sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"<<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the macro name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reMacroName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Process parameters\n\tvar parameter = $tw.utils.parseMacroParameter(source,pos);\n\twhile(parameter) {\n\t\tnode.params.push(parameter);\n\t\tpos = parameter.end;\n\t\t// Get the next parameter\n\t\tparameter = $tw.utils.parseMacroParameter(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a double greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">>\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n/*\nLook for an HTML attribute definition. Returns null if not found, otherwise returns {type: \"attribute\", name:, valueType: \"string|indirect|macro\", value:, start:, end:,}\n*/\nexports.parseAttribute = function(source,pos) {\n\tvar node = {\n\t\tstart: pos\n\t};\n\t// Define our regexps\n\tvar reAttributeName = /([^\\/\\s>\"'=]+)/g,\n\t\treUnquotedAttribute = /([^\\/\\s<>\"'=]+)/g,\n\t\treFilteredValue = /\\{\\{\\{(.+?)\\}\\}\\}/g,\n\t\treIndirectValue = /\\{\\{([^\\}]+)\\}\\}/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the attribute name\n\tvar name = $tw.utils.parseTokenRegExp(source,pos,reAttributeName);\n\tif(!name) {\n\t\treturn null;\n\t}\n\tnode.name = name.match[1];\n\tpos = name.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for an equals sign\n\tvar token = $tw.utils.parseTokenString(source,pos,\"=\");\n\tif(token) {\n\t\tpos = token.end;\n\t\t// Skip whitespace\n\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t// Look for a string literal\n\t\tvar stringLiteral = $tw.utils.parseStringLiteral(source,pos);\n\t\tif(stringLiteral) {\n\t\t\tpos = stringLiteral.end;\n\t\t\tnode.type = \"string\";\n\t\t\tnode.value = stringLiteral.value;\n\t\t} else {\n\t\t\t// Look for a filtered value\n\t\t\tvar filteredValue = $tw.utils.parseTokenRegExp(source,pos,reFilteredValue);\n\t\t\tif(filteredValue) {\n\t\t\t\tpos = filteredValue.end;\n\t\t\t\tnode.type = \"filtered\";\n\t\t\t\tnode.filter = filteredValue.match[1];\n\t\t\t} else {\n\t\t\t\t// Look for an indirect value\n\t\t\t\tvar indirectValue = $tw.utils.parseTokenRegExp(source,pos,reIndirectValue);\n\t\t\t\tif(indirectValue) {\n\t\t\t\t\tpos = indirectValue.end;\n\t\t\t\t\tnode.type = \"indirect\";\n\t\t\t\t\tnode.textReference = indirectValue.match[1];\n\t\t\t\t} else {\n\t\t\t\t\t// Look for a unquoted value\n\t\t\t\t\tvar unquotedValue = $tw.utils.parseTokenRegExp(source,pos,reUnquotedAttribute);\n\t\t\t\t\tif(unquotedValue) {\n\t\t\t\t\t\tpos = unquotedValue.end;\n\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\tnode.value = unquotedValue.match[1];\n\t\t\t\t\t} else {\n\t\t\t\t\t\t// Look for a macro invocation value\n\t\t\t\t\t\tvar macroInvocation = $tw.utils.parseMacroInvocation(source,pos);\n\t\t\t\t\t\tif(macroInvocation) {\n\t\t\t\t\t\t\tpos = macroInvocation.end;\n\t\t\t\t\t\t\tnode.type = \"macro\";\n\t\t\t\t\t\t\tnode.value = macroInvocation;\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tnode.type = \"string\";\n\t\t\t\t\t\t\tnode.value = \"true\";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t} else {\n\t\tnode.type = \"string\";\n\t\tnode.value = \"true\";\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/parsers/pdfparser.js": {
            "title": "$:/core/modules/parsers/pdfparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/pdfparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe PDF parser embeds a PDF viewer\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ImageParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"embed\",\n\t\t\tattributes: {}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:application/pdf;base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"application/pdf\"] = ImageParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/textparser.js": {
            "title": "$:/core/modules/parsers/textparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/textparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe plain text parser processes blocks of source text into a degenerate parse tree consisting of a single text node\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar TextParser = function(type,text,options) {\n\tthis.tree = [{\n\t\ttype: \"codeblock\",\n\t\tattributes: {\n\t\t\tcode: {type: \"string\", value: text},\n\t\t\tlanguage: {type: \"string\", value: type}\n\t\t}\n\t}];\n};\n\nexports[\"text/plain\"] = TextParser;\nexports[\"text/x-tiddlywiki\"] = TextParser;\nexports[\"application/javascript\"] = TextParser;\nexports[\"application/json\"] = TextParser;\nexports[\"text/css\"] = TextParser;\nexports[\"application/x-tiddler-dictionary\"] = TextParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/videoparser.js": {
            "title": "$:/core/modules/parsers/videoparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/videoparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe video parser parses a video tiddler into an embeddable HTML element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar VideoParser = function(type,text,options) {\n\tvar element = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"video\",\n\t\t\tattributes: {\n\t\t\t\tcontrols: {type: \"string\", value: \"controls\"},\n\t\t\t\tstyle: {type: \"string\", value: \"width: 100%; object-fit: contain\"}\n\t\t\t}\n\t\t},\n\t\tsrc;\n\tif(options._canonical_uri) {\n\t\telement.attributes.src = {type: \"string\", value: options._canonical_uri};\n\t} else if(text) {\n\t\telement.attributes.src = {type: \"string\", value: \"data:\" + type + \";base64,\" + text};\n\t}\n\tthis.tree = [element];\n};\n\nexports[\"video/ogg\"] = VideoParser;\nexports[\"video/webm\"] = VideoParser;\nexports[\"video/mp4\"] = VideoParser;\nexports[\"video/quicktime\"] = VideoParser;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for code blocks. For example:\n\n```\n\t```\n\tThis text will not be //wikified//\n\t```\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match and get language if defined\n\tthis.matchRegExp = /```([\\w-]*)\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\\r?\\n```$)/mg;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Return the $codeblock widget\n\treturn [{\n\t\t\ttype: \"codeblock\",\n\t\t\tattributes: {\n\t\t\t\t\tcode: {type: \"string\", value: text},\n\t\t\t\t\tlanguage: {type: \"string\", value: this.match[1]}\n\t\t\t}\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/codeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/codeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/codeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for code runs. For example:\n\n```\n\tThis is a `code run`.\n\tThis is another ``code run``\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"codeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(``?)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar reEnd = new RegExp(this.match[1], \"mg\");\n\t// Look for the end marker\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the text\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"code\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: text\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/commentinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/commentinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/commentinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML comments. For example:\n\n```\n<!-- This is a comment -->\n```\n\nNote that the syntax for comments is simplified to an opening \"<!--\" sequence and a closing \"-->\" sequence -- HTML itself implements a more complex format (see http://ostermiller.org/findhtmlcomment.html)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"commentinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\tthis.matchRegExp = /<!--/mg;\n\tthis.endMatchRegExp = /-->/mg;\n};\n\nexports.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\tif(this.match) {\n\t\tthis.endMatchRegExp.lastIndex = startPos + this.match[0].length;\n\t\tthis.endMatch = this.endMatchRegExp.exec(this.parser.source);\n\t\tif(this.endMatch) {\n\t\t\treturn this.match.index;\n\t\t}\n\t}\n\treturn undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.endMatchRegExp.lastIndex;\n\t// Don't return any elements\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/dash.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/dash.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/dash.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for dashes. For example:\n\n```\nThis is an en-dash: --\n\nThis is an em-dash: ---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"dash\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{2,3}(?!-)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar dash = this.match[0].length === 2 ? \"&ndash;\" : \"&mdash;\";\n\treturn [{\n\t\ttype: \"entity\",\n\t\tentity: dash\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/bold.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/bold.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - bold. For example:\n\n```\n\tThis is ''bold'' text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except bold \n\\rules only bold \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"bold\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /''/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/''/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strong\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/italic.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/italic.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - italic. For example:\n\n```\n\tThis is //italic// text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except italic\n\\rules only italic\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"italic\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\/\\//mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\/\\//mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"em\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/strikethrough.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - strikethrough. For example:\n\n```\n\tThis is ~~strikethrough~~ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except strikethrough \n\\rules only strikethrough \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"strikethrough\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~~/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/~~/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"strike\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/subscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - subscript. For example:\n\n```\n\tThis is ,,subscript,, text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except subscript \n\\rules only subscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"subscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /,,/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/,,/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sub\",\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/superscript.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - superscript. For example:\n\n```\n\tThis is ^^superscript^^ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except superscript \n\\rules only superscript \n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"superscript\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\^\\^/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/\\^\\^/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"sup\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/emphasis/underscore.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for emphasis - underscore. For example:\n\n```\n\tThis is __underscore__ text\n```\n\nThis wikiparser can be modified using the rules eg:\n\n```\n\\rules except underscore \n\\rules only underscore\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"underscore\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /__/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\n\t// Parse the run including the terminator\n\tvar tree = this.parser.parseInlineRun(/__/mg,{eatTerminator: true});\n\n\t// Return the classed span\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"u\",\n\t\tchildren: tree\n\t}];\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/entity.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/entity.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for HTML entities. For example:\n\n```\n\tThis is a copyright symbol: &copy;\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"entity\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(&#?[a-zA-Z0-9]{2,8};)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar entityString = this.match[1];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Return the entity\n\treturn [{type: \"entity\", entity: this.match[0]}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/extlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/extlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/extlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\nAn external link: https://www.tiddlywiki.com/\n\nA suppressed external link: ~http://www.tiddlyspace.com/\n```\n\nExternal links can be suppressed by preceding them with `~`.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"extlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /~?(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(this.match[0].substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: this.match[0].substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: this.match[0]},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: this.match[0]\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t},\n\t\tisBlock: true\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/filteredtranscludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline filtered transclusion. For example:\n\n```\n{{{ [tag[docs]] }}}\n{{{ [tag[docs]] |tooltip}}}\n{{{ [tag[docs]] ||TemplateTitle}}}\n{{{ [tag[docs]] |tooltip||TemplateTitle}}}\n{{{ [tag[docs]] }}width:40;height:50;}.class.class\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"filteredtranscludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{\\{([^\\|]+?)(?:\\|([^\\|\\{\\}]+))?(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}([^\\}]*)\\}(?:\\.(\\S+))?/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar filter = this.match[1],\n\t\ttooltip = this.match[2],\n\t\ttemplate = $tw.utils.trim(this.match[3]),\n\t\tstyle = this.match[4],\n\t\tclasses = this.match[5];\n\t// Return the list widget\n\tvar node = {\n\t\ttype: \"list\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: filter}\n\t\t}\n\t};\n\tif(tooltip) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: tooltip};\n\t}\n\tif(template) {\n\t\tnode.attributes.template = {type: \"string\", value: template};\n\t}\n\tif(style) {\n\t\tnode.attributes.style = {type: \"string\", value: style};\n\t}\n\tif(classes) {\n\t\tnode.attributes.itemClass = {type: \"string\", value: classes.split(\".\").join(\" \")};\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/hardlinebreaks.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for marking areas with hard line breaks. For example:\n\n```\n\"\"\"\nThis is some text\nThat is set like\nIt is a Poem\nWhen it is\nClearly\nNot\n\"\"\"\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"hardlinebreaks\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\"\"\"(?:\\r?\\n)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /(\"\"\")|(\\r?\\n)/mg,\n\t\ttree = [],\n\t\tmatch;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tdo {\n\t\t// Parse the run up to the terminator\n\t\ttree.push.apply(tree,this.parser.parseInlineRun(reEnd,{eatTerminator: false}));\n\t\t// Redo the terminator match\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tmatch = reEnd.exec(this.parser.source);\n\t\tif(match) {\n\t\t\tthis.parser.pos = reEnd.lastIndex;\n\t\t\t// Add a line break if the terminator was a line break\n\t\t\tif(match[2]) {\n\t\t\t\ttree.push({type: \"element\", tag: \"br\"});\n\t\t\t}\n\t\t}\n\t} while(match && !match[1]);\n\t// Return the nodes\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/heading.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/heading.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/heading.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for headings\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"heading\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(!{1,6})/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar headingLevel = this.match[1].length;\n\t// Move past the !s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse any classes, whitespace and then the heading itself\n\tvar classes = this.parser.parseClasses();\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// Return the heading\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"h\" + headingLevel, \n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: classes.join(\" \")}\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/horizrule.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/horizrule.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/horizrule.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for rules. For example:\n\n```\n---\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"horizrule\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /-{3,}\\r?(?:\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\treturn [{type: \"element\", tag: \"hr\"}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/html.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/html.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/html.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for HTML elements and widgets. For example:\n\n{{{\n<aside>\nThis is an HTML5 aside element\n</aside>\n\n<$slider target=\"MyTiddler\">\nThis is a widget invocation\n</$slider>\n\n}}}\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"html\";\nexports.types = {inline: true, block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextTag = this.findNextTag(this.parser.source,startPos,{\n\t\trequireLineBreak: this.is.block\n\t});\n\treturn this.nextTag ? this.nextTag.start : undefined;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Retrieve the most recent match so that recursive calls don't overwrite it\n\tvar tag = this.nextTag;\n\tthis.nextTag = null;\n\t// Advance the parser position to past the tag\n\tthis.parser.pos = tag.end;\n\t// Check for an immediately following double linebreak\n\tvar hasLineBreak = !tag.isSelfClosing && !!$tw.utils.parseTokenRegExp(this.parser.source,this.parser.pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t// Set whether we're in block mode\n\ttag.isBlock = this.is.block || hasLineBreak;\n\t// Parse the body if we need to\n\tif(!tag.isSelfClosing && $tw.config.htmlVoidElements.indexOf(tag.tag) === -1) {\n\t\t\tvar reEndString = \"</\" + $tw.utils.escapeRegExp(tag.tag) + \">\",\n\t\t\t\treEnd = new RegExp(\"(\" + reEndString + \")\",\"mg\");\n\t\tif(hasLineBreak) {\n\t\t\ttag.children = this.parser.parseBlocks(reEndString);\n\t\t} else {\n\t\t\ttag.children = this.parser.parseInlineRun(reEnd);\n\t\t}\n\t\treEnd.lastIndex = this.parser.pos;\n\t\tvar endMatch = reEnd.exec(this.parser.source);\n\t\tif(endMatch && endMatch.index === this.parser.pos) {\n\t\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t\t}\n\t}\n\t// Return the tag\n\treturn [tag];\n};\n\n/*\nLook for an HTML tag. Returns null if not found, otherwise returns {type: \"element\", name:, attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseTag = function(source,pos,options) {\n\toptions = options || {};\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Define our regexps\n\tvar reTagName = /([a-zA-Z0-9\\-\\$]+)/g;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a less than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\"<\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Get the tag name\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,reTagName);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tnode.tag = token.match[1];\n\tif(node.tag.slice(1).indexOf(\"$\") !== -1) {\n\t\treturn null;\n\t}\n\tif(node.tag.charAt(0) === \"$\") {\n\t\tnode.type = node.tag.substr(1);\n\t}\n\tpos = token.end;\n\t// Check that the tag is terminated by a space, / or >\n\tif(!$tw.utils.parseWhiteSpace(source,pos) && !(source.charAt(pos) === \"/\") && !(source.charAt(pos) === \">\") ) {\n\t\treturn null;\n\t}\n\t// Process attributes\n\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\twhile(attribute) {\n\t\tnode.attributes[attribute.name] = attribute;\n\t\tpos = attribute.end;\n\t\t// Get the next attribute\n\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for a closing slash\n\ttoken = $tw.utils.parseTokenString(source,pos,\"/\");\n\tif(token) {\n\t\tpos = token.end;\n\t\tnode.isSelfClosing = true;\n\t}\n\t// Look for a greater than sign\n\ttoken = $tw.utils.parseTokenString(source,pos,\">\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Check for a required line break\n\tif(options.requireLineBreak) {\n\t\ttoken = $tw.utils.parseTokenRegExp(source,pos,/([^\\S\\n\\r]*\\r?\\n(?:[^\\S\\n\\r]*\\r?\\n|$))/g);\n\t\tif(!token) {\n\t\t\treturn null;\n\t\t}\n\t}\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\nexports.findNextTag = function(source,pos,options) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /<([a-zA-Z\\-\\$]+)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseTag(source,match.index,options);\n\t\t// Return success\n\t\tif(tag && this.isLegalTag(tag)) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\nexports.isLegalTag = function(tag) {\n\t// Widgets are always OK\n\tif(tag.type !== \"element\") {\n\t\treturn true;\n\t// If it's an HTML tag that starts with a dash then it's not legal\n\t} else if(tag.tag.charAt(0) === \"-\") {\n\t\treturn false;\n\t} else {\n\t\t// Otherwise it's OK\n\t\treturn true;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/image.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/image.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/image.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for embedding images. For example:\n\n```\n[img[https://tiddlywiki.com/fractalveg.jpg]]\n[img width=23 height=24 [https://tiddlywiki.com/fractalveg.jpg]]\n[img width={{!!width}} height={{!!height}} [https://tiddlywiki.com/fractalveg.jpg]]\n[img[Description of image|https://tiddlywiki.com/fractalveg.jpg]]\n[img[TiddlerTitle]]\n[img[Description of image|TiddlerTitle]]\n```\n\nGenerates the `<$image>` widget.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"image\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextImage = this.findNextImage(this.parser.source,startPos);\n\treturn this.nextImage ? this.nextImage.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextImage.end;\n\tvar node = {\n\t\ttype: \"image\",\n\t\tattributes: this.nextImage.attributes\n\t};\n\treturn [node];\n};\n\n/*\nFind the next image from the current position\n*/\nexports.findNextImage = function(source,pos) {\n\t// A regexp for finding candidate HTML tags\n\tvar reLookahead = /(\\[img)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a tag\n\t\tvar tag = this.parseImage(source,match.index);\n\t\t// Return success\n\t\tif(tag) {\n\t\t\treturn tag;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an image at the specified position. Returns null if not found, otherwise returns {type: \"image\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseImage = function(source,pos) {\n\tvar token,\n\t\tnode = {\n\t\t\ttype: \"image\",\n\t\t\tstart: pos,\n\t\t\tattributes: {}\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[img`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[img\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Process attributes\n\tif(source.charAt(pos) !== \"[\") {\n\t\tvar attribute = $tw.utils.parseAttribute(source,pos);\n\t\twhile(attribute) {\n\t\t\tnode.attributes[attribute.name] = attribute;\n\t\t\tpos = attribute.end;\n\t\t\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t\t\tif(source.charAt(pos) !== \"[\") {\n\t\t\t\t// Get the next attribute\n\t\t\t\tattribute = $tw.utils.parseAttribute(source,pos);\n\t\t\t} else {\n\t\t\t\tattribute = null;\n\t\t\t}\n\t\t}\n\t}\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[` after the attributes\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Get the source up to the terminating `]]`\n\ttoken = $tw.utils.parseTokenRegExp(source,pos,/(?:([^|\\]]*?)\\|)?([^\\]]+?)\\]\\]/g);\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\tif(token.match[1]) {\n\t\tnode.attributes.tooltip = {type: \"string\", value: token.match[1].trim()};\n\t}\n\tnode.attributes.source = {type: \"string\", value: (token.match[2] || \"\").trim()};\n\t// Update the end position\n\tnode.end = pos;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/import.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/import.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/import.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for importing variable definitions\n\n```\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"import\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\import[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the filter terminated by a line break\n\tvar reMatch = /(.*)(\\r?\\n)|$/mg;\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\tthis.parser.pos = reMatch.lastIndex;\n\t// Parse tree nodes to return\n\treturn [{\n\t\ttype: \"importvariables\",\n\t\tattributes: {\n\t\t\tfilter: {type: \"string\", value: match[1]}\n\t\t},\n\t\tchildren: []\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/list.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/list.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/list.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for lists. For example:\n\n```\n* This is an unordered list\n* It has two items\n\n# This is a numbered list\n## With a subitem\n# And a third item\n\n; This is a term that is being defined\n: This is the definition of that term\n```\n\nNote that lists can be nested arbitrarily:\n\n```\n#** One\n#* Two\n#** Three\n#**** Four\n#**# Five\n#**## Six\n## Seven\n### Eight\n## Nine\n```\n\nA CSS class can be applied to a list item as follows:\n\n```\n* List item one\n*.active List item two has the class `active`\n* List item three\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"list\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /([\\*#;:>]+)/mg;\n};\n\nvar listTypes = {\n\t\"*\": {listTag: \"ul\", itemTag: \"li\"},\n\t\"#\": {listTag: \"ol\", itemTag: \"li\"},\n\t\";\": {listTag: \"dl\", itemTag: \"dt\"},\n\t\":\": {listTag: \"dl\", itemTag: \"dd\"},\n\t\">\": {listTag: \"blockquote\", itemTag: \"div\"}\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Array of parse tree nodes for the previous row of the list\n\tvar listStack = [];\n\t// Cycle through the items in the list\n\twhile(true) {\n\t\t// Match the list marker\n\t\tvar reMatch = /([\\*#;:>]+)/mg;\n\t\treMatch.lastIndex = this.parser.pos;\n\t\tvar match = reMatch.exec(this.parser.source);\n\t\tif(!match || match.index !== this.parser.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check whether the list type of the top level matches\n\t\tvar listInfo = listTypes[match[0].charAt(0)];\n\t\tif(listStack.length > 0 && listStack[0].tag !== listInfo.listTag) {\n\t\t\tbreak;\n\t\t}\n\t\t// Move past the list marker\n\t\tthis.parser.pos = match.index + match[0].length;\n\t\t// Walk through the list markers for the current row\n\t\tfor(var t=0; t<match[0].length; t++) {\n\t\t\tlistInfo = listTypes[match[0].charAt(t)];\n\t\t\t// Remove any stacked up element if we can't re-use it because the list type doesn't match\n\t\t\tif(listStack.length > t && listStack[t].tag !== listInfo.listTag) {\n\t\t\t\tlistStack.splice(t,listStack.length - t);\n\t\t\t}\n\t\t\t// Construct the list element or reuse the previous one at this level\n\t\t\tif(listStack.length <= t) {\n\t\t\t\tvar listElement = {type: \"element\", tag: listInfo.listTag, children: [\n\t\t\t\t\t{type: \"element\", tag: listInfo.itemTag, children: []}\n\t\t\t\t]};\n\t\t\t\t// Link this list element into the last child item of the parent list item\n\t\t\t\tif(t) {\n\t\t\t\t\tvar prevListItem = listStack[t-1].children[listStack[t-1].children.length-1];\n\t\t\t\t\tprevListItem.children.push(listElement);\n\t\t\t\t}\n\t\t\t\t// Save this element in the stack\n\t\t\t\tlistStack[t] = listElement;\n\t\t\t} else if(t === (match[0].length - 1)) {\n\t\t\t\tlistStack[t].children.push({type: \"element\", tag: listInfo.itemTag, children: []});\n\t\t\t}\n\t\t}\n\t\tif(listStack.length > match[0].length) {\n\t\t\tlistStack.splice(match[0].length,listStack.length - match[0].length);\n\t\t}\n\t\t// Process the body of the list item into the last list item\n\t\tvar lastListChildren = listStack[listStack.length-1].children,\n\t\t\tlastListItem = lastListChildren[lastListChildren.length-1],\n\t\t\tclasses = this.parser.parseClasses();\n\t\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\t\tvar tree = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t\tlastListItem.children.push.apply(lastListItem.children,tree);\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(lastListItem,classes.join(\" \"));\n\t\t}\n\t\t// Consume any whitespace following the list item\n\t\tthis.parser.skipWhitespace();\n\t}\n\t// Return the root element of the list\n\treturn [listStack[0]];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for block macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^>\\s]+)(?:\\s*)((?:[^>]|(?:>(?!>)))*?)>>(?:\\r?\\n|$)/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params,\n\t\tisBlock: true\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrocallinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrocallinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki rule for macro calls\n\n```\n<<name value value2>>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrocallinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /<<([^\\s>]+)\\s*([\\s\\S]*?)>>/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get all the details of the match\n\tvar macroName = this.match[1],\n\t\tparamString = this.match[2];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\tvar params = [],\n\t\treParam = /\\s*(?:([A-Za-z0-9\\-_]+)\\s*:)?(?:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))/mg,\n\t\tparamMatch = reParam.exec(paramString);\n\twhile(paramMatch) {\n\t\t// Process this parameter\n\t\tvar paramInfo = {\n\t\t\tvalue: paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5]|| paramMatch[6]\n\t\t};\n\t\tif(paramMatch[1]) {\n\t\t\tparamInfo.name = paramMatch[1];\n\t\t}\n\t\tparams.push(paramInfo);\n\t\t// Find the next match\n\t\tparamMatch = reParam.exec(paramString);\n\t}\n\treturn [{\n\t\ttype: \"macrocall\",\n\t\tname: macroName,\n\t\tparams: params\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/macrodef.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/macrodef.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/macrodef.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for macro definitions\n\n```\n\\define name(param:defaultvalue,param2:defaultvalue)\ndefinition text, including $param$ markers\n\\end\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"macrodef\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\define\\s+([^(\\s]+)\\(\\s*([^)]*)\\)(\\s*\\r?\\n)?/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the macro name and parameters\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the parameters\n\tvar paramString = this.match[2],\n\t\tparams = [];\n\tif(paramString !== \"\") {\n\t\tvar reParam = /\\s*([A-Za-z0-9\\-_]+)(?:\\s*:\\s*(?:\"\"\"([\\s\\S]*?)\"\"\"|\"([^\"]*)\"|'([^']*)'|\\[\\[([^\\]]*)\\]\\]|([^\"'\\s]+)))?/mg,\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\twhile(paramMatch) {\n\t\t\t// Save the parameter details\n\t\t\tvar paramInfo = {name: paramMatch[1]},\n\t\t\t\tdefaultValue = paramMatch[2] || paramMatch[3] || paramMatch[4] || paramMatch[5] || paramMatch[6];\n\t\t\tif(defaultValue) {\n\t\t\t\tparamInfo[\"default\"] = defaultValue;\n\t\t\t}\n\t\t\tparams.push(paramInfo);\n\t\t\t// Look for the next parameter\n\t\t\tparamMatch = reParam.exec(paramString);\n\t\t}\n\t}\n\t// Is this a multiline definition?\n\tvar reEnd;\n\tif(this.match[3]) {\n\t\t// If so, the end of the body is marked with \\end\n\t\treEnd = /(\\r?\\n\\\\end[^\\S\\n\\r]*(?:$|\\r?\\n))/mg;\n\t} else {\n\t\t// Otherwise, the end of the definition is marked by the end of the line\n\t\treEnd = /($|\\r?\\n)/mg;\n\t\t// Move past any whitespace\n\t\tthis.parser.pos = $tw.utils.skipWhiteSpace(this.parser.source,this.parser.pos);\n\t}\n\t// Find the end of the definition\n\treEnd.lastIndex = this.parser.pos;\n\tvar text,\n\t\tendMatch = reEnd.exec(this.parser.source);\n\tif(endMatch) {\n\t\ttext = this.parser.source.substring(this.parser.pos,endMatch.index);\n\t\tthis.parser.pos = endMatch.index + endMatch[0].length;\n\t} else {\n\t\t// We didn't find the end of the definition, so we'll make it blank\n\t\ttext = \"\";\n\t}\n\t// Save the macro definition\n\treturn [{\n\t\ttype: \"set\",\n\t\tattributes: {\n\t\t\tname: {type: \"string\", value: this.match[1]},\n\t\t\tvalue: {type: \"string\", value: text}\n\t\t},\n\t\tchildren: [],\n\t\tparams: params,\n\t\tisMacroDefinition: true\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettyextlink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettyextlink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for external links. For example:\n\n```\n[ext[https://tiddlywiki.com/fractalveg.jpg]]\n[ext[Tooltip|https://tiddlywiki.com/fractalveg.jpg]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettyextlink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n};\n\nexports.findNextMatch = function(startPos) {\n\t// Find the next tag\n\tthis.nextLink = this.findNextLink(this.parser.source,startPos);\n\treturn this.nextLink ? this.nextLink.start : undefined;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.nextLink.end;\n\treturn [this.nextLink];\n};\n\n/*\nFind the next link from the current position\n*/\nexports.findNextLink = function(source,pos) {\n\t// A regexp for finding candidate links\n\tvar reLookahead = /(\\[ext\\[)/g;\n\t// Find the next candidate\n\treLookahead.lastIndex = pos;\n\tvar match = reLookahead.exec(source);\n\twhile(match) {\n\t\t// Try to parse the candidate as a link\n\t\tvar link = this.parseLink(source,match.index);\n\t\t// Return success\n\t\tif(link) {\n\t\t\treturn link;\n\t\t}\n\t\t// Look for the next match\n\t\treLookahead.lastIndex = match.index + 1;\n\t\tmatch = reLookahead.exec(source);\n\t}\n\t// Failed\n\treturn null;\n};\n\n/*\nLook for an link at the specified position. Returns null if not found, otherwise returns {type: \"element\", tag: \"a\", attributes: [], isSelfClosing:, start:, end:,}\n*/\nexports.parseLink = function(source,pos) {\n\tvar token,\n\t\ttextNode = {\n\t\t\ttype: \"text\"\n\t\t},\n\t\tnode = {\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tstart: pos,\n\t\t\tattributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t},\n\t\t\tchildren: [textNode]\n\t\t};\n\t// Skip whitespace\n\tpos = $tw.utils.skipWhiteSpace(source,pos);\n\t// Look for the `[ext[`\n\ttoken = $tw.utils.parseTokenString(source,pos,\"[ext[\");\n\tif(!token) {\n\t\treturn null;\n\t}\n\tpos = token.end;\n\t// Look ahead for the terminating `]]`\n\tvar closePos = source.indexOf(\"]]\",pos);\n\tif(closePos === -1) {\n\t\treturn null;\n\t}\n\t// Look for a `|` separating the tooltip\n\tvar splitPos = source.indexOf(\"|\",pos);\n\tif(splitPos === -1 || splitPos > closePos) {\n\t\tsplitPos = null;\n\t}\n\t// Pull out the tooltip and URL\n\tvar tooltip, URL;\n\tif(splitPos) {\n\t\tURL = source.substring(splitPos + 1,closePos).trim();\n\t\ttextNode.text = source.substring(pos,splitPos).trim();\n\t} else {\n\t\tURL = source.substring(pos,closePos).trim();\n\t\ttextNode.text = URL;\n\t}\n\tnode.attributes.href = {type: \"string\", value: URL};\n\tnode.attributes.target = {type: \"string\", value: \"_blank\"};\n\tnode.attributes.rel = {type: \"string\", value: \"noopener noreferrer\"};\n\t// Update the end position\n\tnode.end = closePos + 2;\n\treturn node;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/prettylink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/prettylink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/prettylink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for pretty links. For example:\n\n```\n[[Introduction]]\n\n[[Link description|TiddlerTitle]]\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"prettylink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\[\\[(.*?)(?:\\|(.*?))?\\]\\]/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Process the link\n\tvar text = this.match[1],\n\t\tlink = this.match[2] || text;\n\tif($tw.utils.isLinkExternal(link)) {\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"a\",\n\t\t\tattributes: {\n\t\t\t\thref: {type: \"string\", value: link},\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-tiddlylink-external\"},\n\t\t\t\ttarget: {type: \"string\", value: \"_blank\"},\n\t\t\t\trel: {type: \"string\", value: \"noopener noreferrer\"}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: link}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\", text: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/quoteblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/quoteblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/quoteblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for quote blocks. For example:\n\n```\n\t<<<.optionalClass(es) optional cited from\n\ta quote\n\t<<<\n\t\n\t<<<.optionalClass(es)\n\ta quote\n\t<<< optional cited from\n```\n\nQuotes can be quoted by putting more <s\n\n```\n\t<<<\n\tQuote Level 1\n\t\n\t<<<<\n\tQuoteLevel 2\n\t<<<<\n\t\n\t<<<\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"quoteblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /(<<<+)/mg;\n};\n\nexports.parse = function() {\n\tvar classes = [\"tc-quote\"];\n\t// Get all the details of the match\n\tvar reEndString = \"^\" + this.match[1] + \"(?!<)\";\n\t// Move past the <s\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\n\t// Parse any classes, whitespace and then the optional cite itself\n\tclasses.push.apply(classes, this.parser.parseClasses());\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tvar cite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// before handling the cite, parse the body of the quote\n\tvar tree= this.parser.parseBlocks(reEndString);\n\t// If we got a cite, put it before the text\n\tif(cite.length > 0) {\n\t\ttree.unshift({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Parse any optional cite\n\tthis.parser.skipWhitespace({treatNewlinesAsNonWhitespace: true});\n\tcite = this.parser.parseInlineRun(/(\\r?\\n)/mg);\n\t// If we got a cite, push it\n\tif(cite.length > 0) {\n\t\ttree.push({\n\t\t\ttype: \"element\",\n\t\t\ttag: \"cite\",\n\t\t\tchildren: cite\n\t\t});\n\t}\n\t// Return the blockquote element\n\treturn [{\n\t\ttype: \"element\",\n\t\ttag: \"blockquote\",\n\t\tattributes: {\n\t\t\tclass: { type: \"string\", value: classes.join(\" \") },\n\t\t},\n\t\tchildren: tree\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/rules.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/rules.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/rules.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for rules specifications\n\n```\n\\rules except ruleone ruletwo rulethree\n\\rules only ruleone ruletwo rulethree\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"rules\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\rules[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\tif(tokens.length > 0) {\n\t\tthis.parser.amendRules(tokens[0],tokens.slice(1));\n\t}\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for assigning styles and classes to paragraphs and other blocks. For example:\n\n```\n@@.myClass\n@@background-color:red;\nThis paragraph will have the CSS class `myClass`.\n\n* The `<ul>` around this list will also have the class `myClass`\n* List item 2\n\n@@\n```\n\nNote that classes and styles can be mixed subject to the rule that styles must precede classes. For example\n\n```\n@@.myFirstClass.mySecondClass\n@@width:100px;.myThirdClass\nThis is a paragraph\n@@\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(?:\\.([^\\r\\n\\s]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEndString = \"^@@(?:\\\\r?\\\\n)?\";\n\tvar classes = [], styles = [];\n\tdo {\n\t\t// Get the class and style\n\t\tif(this.match[1]) {\n\t\t\tstyles.push(this.match[1]);\n\t\t}\n\t\tif(this.match[2]) {\n\t\t\tclasses.push(this.match[2].split(\".\").join(\" \"));\n\t\t}\n\t\t// Move past the match\n\t\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t\t// Look for another line of classes and styles\n\t\tthis.match = this.matchRegExp.exec(this.parser.source);\n\t} while(this.match && this.match.index === this.parser.pos);\n\t// Parse the body\n\tvar tree = this.parser.parseBlocks(reEndString);\n\tfor(var t=0; t<tree.length; t++) {\n\t\tif(classes.length > 0) {\n\t\t\t$tw.utils.addClassToParseTreeNode(tree[t],classes.join(\" \"));\n\t\t}\n\t\tif(styles.length > 0) {\n\t\t\t$tw.utils.addAttributeToParseTreeNode(tree[t],\"style\",styles.join(\"\"));\n\t\t}\n\t}\n\treturn tree;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/styleinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/styleinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/styleinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for assigning styles and classes to inline runs. For example:\n\n```\n@@.myClass This is some text with a class@@\n@@background-color:red;This is some text with a background colour@@\n@@width:100px;.myClass This is some text with a class and a width@@\n```\n\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"styleinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /@@((?:[^\\.\\r\\n\\s:]+:[^\\r\\n;]+;)+)?(\\.(?:[^\\r\\n\\s]+)\\s+)?/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /@@/g;\n\t// Get the styles and class\n\tvar stylesString = this.match[1],\n\t\tclassString = this.match[2] ? this.match[2].split(\".\").join(\" \") : undefined;\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse the run up to the terminator\n\tvar tree = this.parser.parseInlineRun(reEnd,{eatTerminator: true});\n\t// Return the classed span\n\tvar node = {\n\t\ttype: \"element\",\n\t\ttag: \"span\",\n\t\tattributes: {\n\t\t\t\"class\": {type: \"string\", value: \"tc-inline-style\"}\n\t\t},\n\t\tchildren: tree\n\t};\n\tif(classString) {\n\t\t$tw.utils.addClassToParseTreeNode(node,classString);\n\t}\n\tif(stylesString) {\n\t\t$tw.utils.addAttributeToParseTreeNode(node,\"style\",stylesString);\n\t}\n\treturn [node];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/syslink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/syslink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/syslink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for system tiddler links.\nCan be suppressed preceding them with `~`.\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"syslink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp(\n\t\t\"~?\\\\$:\\\\/[\" +\n\t\t$tw.config.textPrimitives.anyLetter.substr(1,$tw.config.textPrimitives.anyLetter.length - 2) +\n\t\t\"\\/._-]+\",\n\t\t\"mg\"\n\t);\n};\n\nexports.parse = function() {\n\tvar match = this.match[0];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Create the link unless it is suppressed\n\tif(match.substr(0,1) === \"~\") {\n\t\treturn [{type: \"text\", text: match.substr(1)}];\n\t} else {\n\t\treturn [{\n\t\t\ttype: \"link\",\n\t\t\tattributes: {\n\t\t\t\tto: {type: \"string\", value: match}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: match\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/table.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/table.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/table.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text block rule for tables.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"table\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\|(?:[^\\n]*)\\|(?:[fhck]?)\\r?(?:\\n|$)/mg;\n};\n\nvar processRow = function(prevColumns) {\n\tvar cellRegExp = /(?:\\|([^\\n\\|]*)\\|)|(\\|[fhck]?\\r?(?:\\n|$))/mg,\n\t\tcellTermRegExp = /((?:\\x20*)\\|)/mg,\n\t\ttree = [],\n\t\tcol = 0,\n\t\tcolSpanCount = 1,\n\t\tprevCell,\n\t\tvAlign;\n\t// Match a single cell\n\tcellRegExp.lastIndex = this.parser.pos;\n\tvar cellMatch = cellRegExp.exec(this.parser.source);\n\twhile(cellMatch && cellMatch.index === this.parser.pos) {\n\t\tif(cellMatch[1] === \"~\") {\n\t\t\t// Rowspan\n\t\t\tvar last = prevColumns[col];\n\t\t\tif(last) {\n\t\t\t\tlast.rowSpanCount++;\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"rowspan\",last.rowSpanCount);\n\t\t\t\tvAlign = $tw.utils.getAttributeValueFromParseTreeNode(last.element,\"valign\",\"center\");\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"valign\",vAlign);\n\t\t\t\tif(colSpanCount > 1) {\n\t\t\t\t\t$tw.utils.addAttributeToParseTreeNode(last.element,\"colspan\",colSpanCount);\n\t\t\t\t\tcolSpanCount = 1;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \">\") {\n\t\t\t// Colspan\n\t\t\tcolSpanCount++;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[1] === \"<\" && prevCell) {\n\t\t\tcolSpanCount = 1 + $tw.utils.getAttributeValueFromParseTreeNode(prevCell,\"colspan\",1);\n\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\tcolSpanCount = 1;\n\t\t\t// Move to just before the `|` terminating the cell\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t} else if(cellMatch[2]) {\n\t\t\t// End of row\n\t\t\tif(prevCell && colSpanCount > 1) {\n\t\t\t\tif(prevCell.attributes && prevCell.attributes && prevCell.attributes.colspan) {\n\t\t\t\t\t\tcolSpanCount += prevCell.attributes.colspan.value;\n\t\t\t\t} else {\n\t\t\t\t\tcolSpanCount -= 1;\n\t\t\t\t}\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(prevCell,\"colspan\",colSpanCount);\n\t\t\t}\n\t\t\tthis.parser.pos = cellRegExp.lastIndex - 1;\n\t\t\tbreak;\n\t\t} else {\n\t\t\t// For ordinary cells, step beyond the opening `|`\n\t\t\tthis.parser.pos++;\n\t\t\t// Look for a space at the start of the cell\n\t\t\tvar spaceLeft = false;\n\t\t\tvAlign = null;\n\t\t\tif(this.parser.source.substr(this.parser.pos).search(/^\\^([^\\^]|\\^\\^)/) === 0) {\n\t\t\t\tvAlign = \"top\";\n\t\t\t} else if(this.parser.source.substr(this.parser.pos).search(/^,([^,]|,,)/) === 0) {\n\t\t\t\tvAlign = \"bottom\";\n\t\t\t}\n\t\t\tif(vAlign) {\n\t\t\t\tthis.parser.pos++;\n\t\t\t}\n\t\t\tvar chr = this.parser.source.substr(this.parser.pos,1);\n\t\t\twhile(chr === \" \") {\n\t\t\t\tspaceLeft = true;\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tchr = this.parser.source.substr(this.parser.pos,1);\n\t\t\t}\n\t\t\t// Check whether this is a heading cell\n\t\t\tvar cell;\n\t\t\tif(chr === \"!\") {\n\t\t\t\tthis.parser.pos++;\n\t\t\t\tcell = {type: \"element\", tag: \"th\", children: []};\n\t\t\t} else {\n\t\t\t\tcell = {type: \"element\", tag: \"td\", children: []};\n\t\t\t}\n\t\t\ttree.push(cell);\n\t\t\t// Record information about this cell\n\t\t\tprevCell = cell;\n\t\t\tprevColumns[col] = {rowSpanCount:1,element:cell};\n\t\t\t// Check for a colspan\n\t\t\tif(colSpanCount > 1) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"colspan\",colSpanCount);\n\t\t\t\tcolSpanCount = 1;\n\t\t\t}\n\t\t\t// Parse the cell\n\t\t\tcell.children = this.parser.parseInlineRun(cellTermRegExp,{eatTerminator: true});\n\t\t\t// Set the alignment for the cell\n\t\t\tif(vAlign) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"valign\",vAlign);\n\t\t\t}\n\t\t\tif(this.parser.source.substr(this.parser.pos - 2,1) === \" \") { // spaceRight\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",spaceLeft ? \"center\" : \"left\");\n\t\t\t} else if(spaceLeft) {\n\t\t\t\t$tw.utils.addAttributeToParseTreeNode(cell,\"align\",\"right\");\n\t\t\t}\n\t\t\t// Move back to the closing `|`\n\t\t\tthis.parser.pos--;\n\t\t}\n\t\tcol++;\n\t\tcellRegExp.lastIndex = this.parser.pos;\n\t\tcellMatch = cellRegExp.exec(this.parser.source);\n\t}\n\treturn tree;\n};\n\nexports.parse = function() {\n\tvar rowContainerTypes = {\"c\":\"caption\", \"h\":\"thead\", \"\":\"tbody\", \"f\":\"tfoot\"},\n\t\ttable = {type: \"element\", tag: \"table\", children: []},\n\t\trowRegExp = /^\\|([^\\n]*)\\|([fhck]?)\\r?(?:\\n|$)/mg,\n\t\trowTermRegExp = /(\\|(?:[fhck]?)\\r?(?:\\n|$))/mg,\n\t\tprevColumns = [],\n\t\tcurrRowType,\n\t\trowContainer,\n\t\trowCount = 0;\n\t// Match the row\n\trowRegExp.lastIndex = this.parser.pos;\n\tvar rowMatch = rowRegExp.exec(this.parser.source);\n\twhile(rowMatch && rowMatch.index === this.parser.pos) {\n\t\tvar rowType = rowMatch[2];\n\t\t// Check if it is a class assignment\n\t\tif(rowType === \"k\") {\n\t\t\t$tw.utils.addClassToParseTreeNode(table,rowMatch[1]);\n\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t} else {\n\t\t\t// Otherwise, create a new row if this one is of a different type\n\t\t\tif(rowType !== currRowType) {\n\t\t\t\trowContainer = {type: \"element\", tag: rowContainerTypes[rowType], children: []};\n\t\t\t\ttable.children.push(rowContainer);\n\t\t\t\tcurrRowType = rowType;\n\t\t\t}\n\t\t\t// Is this a caption row?\n\t\t\tif(currRowType === \"c\") {\n\t\t\t\t// If so, move past the opening `|` of the row\n\t\t\t\tthis.parser.pos++;\n\t\t\t\t// Move the caption to the first row if it isn't already\n\t\t\t\tif(table.children.length !== 1) {\n\t\t\t\t\ttable.children.pop(); // Take rowContainer out of the children array\n\t\t\t\t\ttable.children.splice(0,0,rowContainer); // Insert it at the bottom\t\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\t// Set the alignment - TODO: figure out why TW did this\n//\t\t\t\trowContainer.attributes.align = rowCount === 0 ? \"top\" : \"bottom\";\n\t\t\t\t// Parse the caption\n\t\t\t\trowContainer.children = this.parser.parseInlineRun(rowTermRegExp,{eatTerminator: true});\n\t\t\t} else {\n\t\t\t\t// Create the row\n\t\t\t\tvar theRow = {type: \"element\", tag: \"tr\", children: []};\n\t\t\t\t$tw.utils.addClassToParseTreeNode(theRow,rowCount%2 ? \"oddRow\" : \"evenRow\");\n\t\t\t\trowContainer.children.push(theRow);\n\t\t\t\t// Process the row\n\t\t\t\ttheRow.children = processRow.call(this,prevColumns);\n\t\t\t\tthis.parser.pos = rowMatch.index + rowMatch[0].length;\n\t\t\t\t// Increment the row count\n\t\t\t\trowCount++;\n\t\t\t}\n\t\t}\n\t\trowMatch = rowRegExp.exec(this.parser.source);\n\t}\n\treturn [table];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for block-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}(?:\\r?\\n|$)/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {},\n\t\t\tisBlock: true\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tisBlock: true,\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/transcludeinline.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/transcludeinline.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for inline-level transclusion. For example:\n\n```\n{{MyTiddler}}\n{{MyTiddler||TemplateTitle}}\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"transcludeinline\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\{\\{([^\\{\\}\\|]*)(?:\\|\\|([^\\|\\{\\}]+))?\\}\\}/mg;\n};\n\nexports.parse = function() {\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Get the match details\n\tvar template = $tw.utils.trim(this.match[2]),\n\t\ttextRef = $tw.utils.trim(this.match[1]);\n\t// Prepare the transclude widget\n\tvar transcludeNode = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {}\n\t\t};\n\t// Prepare the tiddler widget\n\tvar tr, targetTitle, targetField, targetIndex, tiddlerNode;\n\tif(textRef) {\n\t\ttr = $tw.utils.parseTextReference(textRef);\n\t\ttargetTitle = tr.title;\n\t\ttargetField = tr.field;\n\t\ttargetIndex = tr.index;\n\t\ttiddlerNode = {\n\t\t\ttype: \"tiddler\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: targetTitle}\n\t\t\t},\n\t\t\tchildren: [transcludeNode]\n\t\t};\n\t}\n\tif(template) {\n\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: template};\n\t\tif(textRef) {\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t} else {\n\t\tif(textRef) {\n\t\t\ttranscludeNode.attributes.tiddler = {type: \"string\", value: targetTitle};\n\t\t\tif(targetField) {\n\t\t\t\ttranscludeNode.attributes.field = {type: \"string\", value: targetField};\n\t\t\t}\n\t\t\tif(targetIndex) {\n\t\t\t\ttranscludeNode.attributes.index = {type: \"string\", value: targetIndex};\n\t\t\t}\n\t\t\treturn [tiddlerNode];\n\t\t} else {\n\t\t\treturn [transcludeNode];\n\t\t}\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/typedblock.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/typedblock.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/typedblock.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text rule for typed blocks. For example:\n\n```\n$$$.js\nThis will be rendered as JavaScript\n$$$\n\n$$$.svg\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"150\" height=\"100\">\n  <circle cx=\"100\" cy=\"50\" r=\"40\" stroke=\"black\" stroke-width=\"2\" fill=\"red\" />\n</svg>\n$$$\n\n$$$text/vnd.tiddlywiki>text/html\nThis will be rendered as an //HTML representation// of WikiText\n$$$\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.name = \"typedblock\";\nexports.types = {block: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /\\$\\$\\$([^ >\\r\\n]*)(?: *> *([^ \\r\\n]+))?\\r?\\n/mg;\n};\n\nexports.parse = function() {\n\tvar reEnd = /\\r?\\n\\$\\$\\$\\r?(?:\\n|$)/mg;\n\t// Save the type\n\tvar parseType = this.match[1],\n\t\trenderType = this.match[2];\n\t// Move past the match\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Look for the end of the block\n\treEnd.lastIndex = this.parser.pos;\n\tvar match = reEnd.exec(this.parser.source),\n\t\ttext;\n\t// Process the block\n\tif(match) {\n\t\ttext = this.parser.source.substring(this.parser.pos,match.index);\n\t\tthis.parser.pos = match.index + match[0].length;\n\t} else {\n\t\ttext = this.parser.source.substr(this.parser.pos);\n\t\tthis.parser.pos = this.parser.sourceLength;\n\t}\n\t// Parse the block according to the specified type\n\tvar parser = this.parser.wiki.parseText(parseType,text,{defaultType: \"text/plain\"});\n\t// If there's no render type, just return the parse tree\n\tif(!renderType) {\n\t\treturn parser.tree;\n\t} else {\n\t\t// Otherwise, render to the rendertype and return in a <PRE> tag\n\t\tvar widgetNode = this.parser.wiki.makeWidget(parser),\n\t\t\tcontainer = $tw.fakeDocument.createElement(\"div\");\n\t\twidgetNode.render(container,null);\n\t\ttext = renderType === \"text/html\" ? container.innerHTML : container.textContent;\n\t\treturn [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"pre\",\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\ttext: text\n\t\t\t}]\n\t\t}];\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/whitespace.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/whitespace.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/whitespace.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki pragma rule for whitespace specifications\n\n```\n\\whitespace trim\n\\whitespace notrim\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"whitespace\";\nexports.types = {pragma: true};\n\n/*\nInstantiate parse rule\n*/\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = /^\\\\whitespace[^\\S\\n]/mg;\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\tvar self = this;\n\t// Move past the pragma invocation\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// Parse whitespace delimited tokens terminated by a line break\n\tvar reMatch = /[^\\S\\n]*(\\S+)|(\\r?\\n)/mg,\n\t\ttokens = [];\n\treMatch.lastIndex = this.parser.pos;\n\tvar match = reMatch.exec(this.parser.source);\n\twhile(match && match.index === this.parser.pos) {\n\t\tthis.parser.pos = reMatch.lastIndex;\n\t\t// Exit if we've got the line break\n\t\tif(match[2]) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the token\n\t\tif(match[1]) {\n\t\t\ttokens.push(match[1]);\n\t\t}\n\t\t// Match the next token\n\t\tmatch = reMatch.exec(this.parser.source);\n\t}\n\t// Process the tokens\n\t$tw.utils.each(tokens,function(token) {\n\t\tswitch(token) {\n\t\t\tcase \"trim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = true;\n\t\t\t\tbreak;\n\t\t\tcase \"notrim\":\n\t\t\t\tself.parser.configTrimWhiteSpace = false;\n\t\t\t\tbreak;\n\t\t}\n\t});\n\t// No parse tree nodes to return\n\treturn [];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikilink.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikilink.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikilink.js\ntype: application/javascript\nmodule-type: wikirule\n\nWiki text inline rule for wiki links. For example:\n\n```\nAWikiLink\nAnotherLink\n~SuppressedLink\n```\n\nPrecede a camel case word with `~` to prevent it from being recognised as a link.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.name = \"wikilink\";\nexports.types = {inline: true};\n\nexports.init = function(parser) {\n\tthis.parser = parser;\n\t// Regexp to match\n\tthis.matchRegExp = new RegExp($tw.config.textPrimitives.unWikiLink + \"?\" + $tw.config.textPrimitives.wikiLink,\"mg\");\n};\n\n/*\nParse the most recent match\n*/\nexports.parse = function() {\n\t// Get the details of the match\n\tvar linkText = this.match[0];\n\t// Move past the macro call\n\tthis.parser.pos = this.matchRegExp.lastIndex;\n\t// If the link starts with the unwikilink character then just output it as plain text\n\tif(linkText.substr(0,1) === $tw.config.textPrimitives.unWikiLink) {\n\t\treturn [{type: \"text\", text: linkText.substr(1)}];\n\t}\n\t// If the link has been preceded with a blocked letter then don't treat it as a link\n\tif(this.match.index > 0) {\n\t\tvar preRegExp = new RegExp($tw.config.textPrimitives.blockPrefixLetters,\"mg\");\n\t\tpreRegExp.lastIndex = this.match.index-1;\n\t\tvar preMatch = preRegExp.exec(this.parser.source);\n\t\tif(preMatch && preMatch.index === this.match.index-1) {\n\t\t\treturn [{type: \"text\", text: linkText}];\n\t\t}\n\t}\n\treturn [{\n\t\ttype: \"link\",\n\t\tattributes: {\n\t\t\tto: {type: \"string\", value: linkText}\n\t\t},\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\ttext: linkText\n\t\t}]\n\t}];\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikirule"
        },
        "$:/core/modules/parsers/wikiparser/wikiparser.js": {
            "title": "$:/core/modules/parsers/wikiparser/wikiparser.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/wikiparser.js\ntype: application/javascript\nmodule-type: parser\n\nThe wiki text parser processes blocks of source text into a parse tree.\n\nThe parse tree is made up of nested arrays of these JavaScript objects:\n\n\t{type: \"element\", tag: <string>, attributes: {}, children: []} - an HTML element\n\t{type: \"text\", text: <string>} - a text node\n\t{type: \"entity\", value: <string>} - an entity\n\t{type: \"raw\", html: <string>} - raw HTML\n\nAttributes are stored as hashmaps of the following objects:\n\n\t{type: \"string\", value: <string>} - literal string\n\t{type: \"indirect\", textReference: <textReference>} - indirect through a text reference\n\t{type: \"macro\", macro: <TBD>} - indirect through a macro invocation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar WikiParser = function(type,text,options) {\n\tthis.wiki = options.wiki;\n\tvar self = this;\n\t// Check for an externally linked tiddler\n\tif($tw.browser && (text || \"\") === \"\" && options._canonical_uri) {\n\t\tthis.loadRemoteTiddler(options._canonical_uri);\n\t\ttext = $tw.language.getRawString(\"LazyLoadingWarning\");\n\t}\n\t// Initialise the classes if we don't have them already\n\tif(!this.pragmaRuleClasses) {\n\t\tWikiParser.prototype.pragmaRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"pragma\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.pragmaRuleClasses,\"$:/config/WikiParserRules/Pragmas/\");\n\t}\n\tif(!this.blockRuleClasses) {\n\t\tWikiParser.prototype.blockRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"block\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.blockRuleClasses,\"$:/config/WikiParserRules/Block/\");\n\t}\n\tif(!this.inlineRuleClasses) {\n\t\tWikiParser.prototype.inlineRuleClasses = $tw.modules.createClassesFromModules(\"wikirule\",\"inline\",$tw.WikiRuleBase);\n\t\tthis.setupRules(WikiParser.prototype.inlineRuleClasses,\"$:/config/WikiParserRules/Inline/\");\n\t}\n\t// Save the parse text\n\tthis.type = type || \"text/vnd.tiddlywiki\";\n\tthis.source = text || \"\";\n\tthis.sourceLength = this.source.length;\n\t// Flag for ignoring whitespace\n\tthis.configTrimWhiteSpace = false;\n\t// Set current parse position\n\tthis.pos = 0;\n\t// Instantiate the pragma parse rules\n\tthis.pragmaRules = this.instantiateRules(this.pragmaRuleClasses,\"pragma\",0);\n\t// Instantiate the parser block and inline rules\n\tthis.blockRules = this.instantiateRules(this.blockRuleClasses,\"block\",0);\n\tthis.inlineRules = this.instantiateRules(this.inlineRuleClasses,\"inline\",0);\n\t// Parse any pragmas\n\tthis.tree = [];\n\tvar topBranch = this.parsePragmas();\n\t// Parse the text into inline runs or blocks\n\tif(options.parseAsInline) {\n\t\ttopBranch.push.apply(topBranch,this.parseInlineRun());\n\t} else {\n\t\ttopBranch.push.apply(topBranch,this.parseBlocks());\n\t}\n\t// Return the parse tree\n};\n\n/*\n*/\nWikiParser.prototype.loadRemoteTiddler = function(url) {\n\tvar self = this;\n\t$tw.utils.httpRequest({\n\t\turl: url,\n\t\ttype: \"GET\",\n\t\tcallback: function(err,data) {\n\t\t\tif(!err) {\n\t\t\t\tvar tiddlers = self.wiki.deserializeTiddlers(\".tid\",data,self.wiki.getCreationFields());\n\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\ttiddler[\"_canonical_uri\"] = url;\n\t\t\t\t});\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tself.wiki.addTiddlers(tiddlers);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\n*/\nWikiParser.prototype.setupRules = function(proto,configPrefix) {\n\tvar self = this;\n\tif(!$tw.safemode) {\n\t\t$tw.utils.each(proto,function(object,name) {\n\t\t\tif(self.wiki.getTiddlerText(configPrefix + name,\"enable\") !== \"enable\") {\n\t\t\t\tdelete proto[name];\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nInstantiate an array of parse rules\n*/\nWikiParser.prototype.instantiateRules = function(classes,type,startPos) {\n\tvar rulesInfo = [],\n\t\tself = this;\n\t$tw.utils.each(classes,function(RuleClass) {\n\t\t// Instantiate the rule\n\t\tvar rule = new RuleClass(self);\n\t\trule.is = {};\n\t\trule.is[type] = true;\n\t\trule.init(self);\n\t\tvar matchIndex = rule.findNextMatch(startPos);\n\t\tif(matchIndex !== undefined) {\n\t\t\trulesInfo.push({\n\t\t\t\trule: rule,\n\t\t\t\tmatchIndex: matchIndex\n\t\t\t});\n\t\t}\n\t});\n\treturn rulesInfo;\n};\n\n/*\nSkip any whitespace at the current position. Options are:\n\ttreatNewlinesAsNonWhitespace: true if newlines are NOT to be treated as whitespace\n*/\nWikiParser.prototype.skipWhitespace = function(options) {\n\toptions = options || {};\n\tvar whitespaceRegExp = options.treatNewlinesAsNonWhitespace ? /([^\\S\\n]+)/mg : /(\\s+)/mg;\n\twhitespaceRegExp.lastIndex = this.pos;\n\tvar whitespaceMatch = whitespaceRegExp.exec(this.source);\n\tif(whitespaceMatch && whitespaceMatch.index === this.pos) {\n\t\tthis.pos = whitespaceRegExp.lastIndex;\n\t}\n};\n\n/*\nGet the next match out of an array of parse rule instances\n*/\nWikiParser.prototype.findNextMatch = function(rules,startPos) {\n\t// Find the best matching rule by finding the closest match position\n\tvar matchingRule,\n\t\tmatchingRulePos = this.sourceLength;\n\t// Step through each rule\n\tfor(var t=0; t<rules.length; t++) {\n\t\tvar ruleInfo = rules[t];\n\t\t// Ask the rule to get the next match if we've moved past the current one\n\t\tif(ruleInfo.matchIndex !== undefined  && ruleInfo.matchIndex < startPos) {\n\t\t\truleInfo.matchIndex = ruleInfo.rule.findNextMatch(startPos);\n\t\t}\n\t\t// Adopt this match if it's closer than the current best match\n\t\tif(ruleInfo.matchIndex !== undefined && ruleInfo.matchIndex <= matchingRulePos) {\n\t\t\tmatchingRule = ruleInfo;\n\t\t\tmatchingRulePos = ruleInfo.matchIndex;\n\t\t}\n\t}\n\treturn matchingRule;\n};\n\n/*\nParse any pragmas at the beginning of a block of parse text\n*/\nWikiParser.prototype.parsePragmas = function() {\n\tvar currentTreeBranch = this.tree;\n\twhile(true) {\n\t\t// Skip whitespace\n\t\tthis.skipWhitespace();\n\t\t// Check for the end of the text\n\t\tif(this.pos >= this.sourceLength) {\n\t\t\tbreak;\n\t\t}\n\t\t// Check if we've arrived at a pragma rule match\n\t\tvar nextMatch = this.findNextMatch(this.pragmaRules,this.pos);\n\t\t// If not, just exit\n\t\tif(!nextMatch || nextMatch.matchIndex !== this.pos) {\n\t\t\tbreak;\n\t\t}\n\t\t// Process the pragma rule\n\t\tvar subTree = nextMatch.rule.parse();\n\t\tif(subTree.length > 0) {\n\t\t\t// Quick hack; we only cope with a single parse tree node being returned, which is true at the moment\n\t\t\tcurrentTreeBranch.push.apply(currentTreeBranch,subTree);\n\t\t\tsubTree[0].children = [];\n\t\t\tcurrentTreeBranch = subTree[0].children;\n\t\t}\n\t}\n\treturn currentTreeBranch;\n};\n\n/*\nParse a block from the current position\n\tterminatorRegExpString: optional regular expression string that identifies the end of plain paragraphs. Must not include capturing parenthesis\n*/\nWikiParser.prototype.parseBlock = function(terminatorRegExpString) {\n\tvar terminatorRegExp = terminatorRegExpString ? new RegExp(\"(\" + terminatorRegExpString + \"|\\\\r?\\\\n\\\\r?\\\\n)\",\"mg\") : /(\\r?\\n\\r?\\n)/mg;\n\tthis.skipWhitespace();\n\tif(this.pos >= this.sourceLength) {\n\t\treturn [];\n\t}\n\t// Look for a block rule that applies at the current position\n\tvar nextMatch = this.findNextMatch(this.blockRules,this.pos);\n\tif(nextMatch && nextMatch.matchIndex === this.pos) {\n\t\treturn nextMatch.rule.parse();\n\t}\n\t// Treat it as a paragraph if we didn't find a block rule\n\treturn [{type: \"element\", tag: \"p\", children: this.parseInlineRun(terminatorRegExp)}];\n};\n\n/*\nParse a series of blocks of text until a terminating regexp is encountered or the end of the text\n\tterminatorRegExpString: terminating regular expression\n*/\nWikiParser.prototype.parseBlocks = function(terminatorRegExpString) {\n\tif(terminatorRegExpString) {\n\t\treturn this.parseBlocksTerminated(terminatorRegExpString);\n\t} else {\n\t\treturn this.parseBlocksUnterminated();\n\t}\n};\n\n/*\nParse a block from the current position to the end of the text\n*/\nWikiParser.prototype.parseBlocksUnterminated = function() {\n\tvar tree = [];\n\twhile(this.pos < this.sourceLength) {\n\t\ttree.push.apply(tree,this.parseBlock());\n\t}\n\treturn tree;\n};\n\n/*\nParse blocks of text until a terminating regexp is encountered\n*/\nWikiParser.prototype.parseBlocksTerminated = function(terminatorRegExpString) {\n\tvar terminatorRegExp = new RegExp(\"(\" + terminatorRegExpString + \")\",\"mg\"),\n\t\ttree = [];\n\t// Skip any whitespace\n\tthis.skipWhitespace();\n\t//  Check if we've got the end marker\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar match = terminatorRegExp.exec(this.source);\n\t// Parse the text into blocks\n\twhile(this.pos < this.sourceLength && !(match && match.index === this.pos)) {\n\t\tvar blocks = this.parseBlock(terminatorRegExpString);\n\t\ttree.push.apply(tree,blocks);\n\t\t// Skip any whitespace\n\t\tthis.skipWhitespace();\n\t\t//  Check if we've got the end marker\n\t\tterminatorRegExp.lastIndex = this.pos;\n\t\tmatch = terminatorRegExp.exec(this.source);\n\t}\n\tif(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t}\n\treturn tree;\n};\n\n/*\nParse a run of text at the current position\n\tterminatorRegExp: a regexp at which to stop the run\n\toptions: see below\nOptions available:\n\teatTerminator: move the parse position past any encountered terminator (default false)\n*/\nWikiParser.prototype.parseInlineRun = function(terminatorRegExp,options) {\n\tif(terminatorRegExp) {\n\t\treturn this.parseInlineRunTerminated(terminatorRegExp,options);\n\t} else {\n\t\treturn this.parseInlineRunUnterminated(options);\n\t}\n};\n\nWikiParser.prototype.parseInlineRunUnterminated = function(options) {\n\tvar tree = [];\n\t// Find the next occurrence of an inline rule\n\tvar nextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around the matches until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && nextMatch) {\n\t\t// Process the text preceding the run rule\n\t\tif(nextMatch.matchIndex > this.pos) {\n\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,nextMatch.matchIndex));\n\t\t\tthis.pos = nextMatch.matchIndex;\n\t\t}\n\t\t// Process the run rule\n\t\ttree.push.apply(tree,nextMatch.rule.parse());\n\t\t// Look for the next run rule\n\t\tnextMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\nWikiParser.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\n\toptions = options || {};\n\tvar tree = [];\n\t// Find the next occurrence of the terminator\n\tterminatorRegExp.lastIndex = this.pos;\n\tvar terminatorMatch = terminatorRegExp.exec(this.source);\n\t// Find the next occurrence of a inlinerule\n\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t// Loop around until we've reached the end of the text\n\twhile(this.pos < this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\n\t\t// Return if we've found the terminator, and it precedes any inline rule match\n\t\tif(terminatorMatch) {\n\t\t\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\n\t\t\t\tif(terminatorMatch.index > this.pos) {\n\t\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,terminatorMatch.index));\n\t\t\t\t}\n\t\t\t\tthis.pos = terminatorMatch.index;\n\t\t\t\tif(options.eatTerminator) {\n\t\t\t\t\tthis.pos += terminatorMatch[0].length;\n\t\t\t\t}\n\t\t\t\treturn tree;\n\t\t\t}\n\t\t}\n\t\t// Process any inline rule, along with the text preceding it\n\t\tif(inlineRuleMatch) {\n\t\t\t// Preceding text\n\t\t\tif(inlineRuleMatch.matchIndex > this.pos) {\n\t\t\t\tthis.pushTextWidget(tree,this.source.substring(this.pos,inlineRuleMatch.matchIndex));\n\t\t\t\tthis.pos = inlineRuleMatch.matchIndex;\n\t\t\t}\n\t\t\t// Process the inline rule\n\t\t\ttree.push.apply(tree,inlineRuleMatch.rule.parse());\n\t\t\t// Look for the next inline rule\n\t\t\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\n\t\t\t// Look for the next terminator match\n\t\t\tterminatorRegExp.lastIndex = this.pos;\n\t\t\tterminatorMatch = terminatorRegExp.exec(this.source);\n\t\t}\n\t}\n\t// Process the remaining text\n\tif(this.pos < this.sourceLength) {\n\t\tthis.pushTextWidget(tree,this.source.substr(this.pos));\n\t}\n\tthis.pos = this.sourceLength;\n\treturn tree;\n};\n\n/*\nPush a text widget onto an array, respecting the configTrimWhiteSpace setting\n*/\nWikiParser.prototype.pushTextWidget = function(array,text) {\n\tif(this.configTrimWhiteSpace) {\n\t\ttext = $tw.utils.trim(text);\n\t}\n\tif(text) {\n\t\tarray.push({type: \"text\", text: text});\t\t\n\t}\n};\n\n/*\nParse zero or more class specifiers `.classname`\n*/\nWikiParser.prototype.parseClasses = function() {\n\tvar classRegExp = /\\.([^\\s\\.]+)/mg,\n\t\tclassNames = [];\n\tclassRegExp.lastIndex = this.pos;\n\tvar match = classRegExp.exec(this.source);\n\twhile(match && match.index === this.pos) {\n\t\tthis.pos = match.index + match[0].length;\n\t\tclassNames.push(match[1]);\n\t\tmatch = classRegExp.exec(this.source);\n\t}\n\treturn classNames;\n};\n\n/*\nAmend the rules used by this instance of the parser\n\ttype: `only` keeps just the named rules, `except` keeps all but the named rules\n\tnames: array of rule names\n*/\nWikiParser.prototype.amendRules = function(type,names) {\n\tnames = names || [];\n\t// Define the filter function\n\tvar target;\n\tif(type === \"only\") {\n\t\ttarget = true;\n\t} else if(type === \"except\") {\n\t\ttarget = false;\n\t} else {\n\t\treturn;\n\t}\n\t// Define a function to process each of our rule arrays\n\tvar processRuleArray = function(ruleArray) {\n\t\tfor(var t=ruleArray.length-1; t>=0; t--) {\n\t\t\tif((names.indexOf(ruleArray[t].rule.name) === -1) === target) {\n\t\t\t\truleArray.splice(t,1);\n\t\t\t}\n\t\t}\n\t};\n\t// Process each rule array\n\tprocessRuleArray(this.pragmaRules);\n\tprocessRuleArray(this.blockRules);\n\tprocessRuleArray(this.inlineRules);\n};\n\nexports[\"text/vnd.tiddlywiki\"] = WikiParser;\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "parser"
        },
        "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js": {
            "title": "$:/core/modules/parsers/wikiparser/rules/wikirulebase.js",
            "text": "/*\\\ntitle: $:/core/modules/parsers/wikiparser/rules/wikirulebase.js\ntype: application/javascript\nmodule-type: global\n\nBase class for wiki parser rules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nThis constructor is always overridden with a blank constructor, and so shouldn't be used\n*/\nvar WikiRuleBase = function() {\n};\n\n/*\nTo be overridden by individual rules\n*/\nWikiRuleBase.prototype.init = function(parser) {\n\tthis.parser = parser;\n};\n\n/*\nDefault implementation of findNextMatch uses RegExp matching\n*/\nWikiRuleBase.prototype.findNextMatch = function(startPos) {\n\tthis.matchRegExp.lastIndex = startPos;\n\tthis.match = this.matchRegExp.exec(this.parser.source);\n\treturn this.match ? this.match.index : undefined;\n};\n\nexports.WikiRuleBase = WikiRuleBase;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/pluginswitcher.js": {
            "title": "$:/core/modules/pluginswitcher.js",
            "text": "/*\\\ntitle: $:/core/modules/pluginswitcher.js\ntype: application/javascript\nmodule-type: global\n\nManages switching plugins for themes and languages.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\noptions:\nwiki: wiki store to be used\npluginType: type of plugin to be switched\ncontrollerTitle: title of tiddler used to control switching of this resource\ndefaultPlugins: array of default plugins to be used if nominated plugin isn't found\nonSwitch: callback when plugin is switched (single parameter is array of plugin titles)\n*/\nfunction PluginSwitcher(options) {\n\tthis.wiki = options.wiki;\n\tthis.pluginType = options.pluginType;\n\tthis.controllerTitle = options.controllerTitle;\n\tthis.defaultPlugins = options.defaultPlugins || [];\n\tthis.onSwitch = options.onSwitch;\n\t// Switch to the current plugin\n\tthis.switchPlugins();\n\t// Listen for changes to the selected plugin\n\tvar self = this;\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,self.controllerTitle)) {\n\t\t\tself.switchPlugins();\n\t\t}\n\t});\n}\n\nPluginSwitcher.prototype.switchPlugins = function() {\n\t// Get the name of the current theme\n\tvar selectedPluginTitle = this.wiki.getTiddlerText(this.controllerTitle);\n\t// If it doesn't exist, then fallback to one of the default themes\n\tvar index = 0;\n\twhile(!this.wiki.getTiddler(selectedPluginTitle) && index < this.defaultPlugins.length) {\n\t\tselectedPluginTitle = this.defaultPlugins[index++];\n\t}\n\t// Accumulate the titles of the plugins that we need to load\n\tvar plugins = [],\n\t\tself = this,\n\t\taccumulatePlugin = function(title) {\n\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\tif(tiddler && tiddler.isPlugin() && plugins.indexOf(title) === -1) {\n\t\t\t\tplugins.push(title);\n\t\t\t\tvar pluginInfo = JSON.parse(self.wiki.getTiddlerText(title)),\n\t\t\t\t\tdependents = $tw.utils.parseStringArray(tiddler.fields.dependents || \"\");\n\t\t\t\t$tw.utils.each(dependents,function(title) {\n\t\t\t\t\taccumulatePlugin(title);\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\taccumulatePlugin(selectedPluginTitle);\n\t// Read the plugin info for the incoming plugins\n\tvar changes = $tw.wiki.readPluginInfo(plugins);\n\t// Unregister any existing theme tiddlers\n\tvar unregisteredTiddlers = $tw.wiki.unregisterPluginTiddlers(this.pluginType);\n\t// Register any new theme tiddlers\n\tvar registeredTiddlers = $tw.wiki.registerPluginTiddlers(this.pluginType,plugins);\n\t// Unpack the current theme tiddlers\n\t$tw.wiki.unpackPluginTiddlers();\n\t// Call the switch handler\n\tif(this.onSwitch) {\n\t\tthis.onSwitch(plugins);\n\t}\n};\n\nexports.PluginSwitcher = PluginSwitcher;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/saver-handler.js": {
            "title": "$:/core/modules/saver-handler.js",
            "text": "/*\\\ntitle: $:/core/modules/saver-handler.js\ntype: application/javascript\nmodule-type: global\n\nThe saver handler tracks changes to the store and handles saving the entire wiki via saver modules.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nInstantiate the saver handler with the following options:\nwiki: wiki to be synced\ndirtyTracking: true if dirty tracking should be performed\n*/\nfunction SaverHandler(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\tthis.dirtyTracking = options.dirtyTracking;\n\tthis.preloadDirty = options.preloadDirty || [];\n\tthis.pendingAutoSave = false;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"saver-handler\");\n\t// Initialise our savers\n\tif($tw.browser) {\n\t\tthis.initSavers();\n\t}\n\t// Only do dirty tracking if required\n\tif($tw.browser && this.dirtyTracking) {\n\t\t// Compile the dirty tiddler filter\n\t\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t\t// Count of changes that have not yet been saved\n\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(self.preloadDirty,function(title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t});\n\t\tthis.numChanges = filteredChanges.length;\n\t\t// Listen out for changes to tiddlers\n\t\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t\t// Filter the changes so that we only count changes to tiddlers that we care about\n\t\t\tvar filteredChanges = self.filterFn.call(self.wiki,function(iterator) {\n\t\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\t\t\t\titerator(tiddler,title);\n\t\t\t\t});\n\t\t\t});\n\t\t\t// Adjust the number of changes\n\t\t\tself.numChanges += filteredChanges.length;\n\t\t\tself.updateDirtyStatus();\n\t\t\t// Do any autosave if one is pending and there's no more change events\n\t\t\tif(self.pendingAutoSave && self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tself.pendingAutoSave = false;\n\t\t\t}\n\t\t});\n\t\t// Listen for the autosave event\n\t\t$tw.rootWidget.addEventListener(\"tm-auto-save-wiki\",function(event) {\n\t\t\t// Do the autosave unless there are outstanding tiddler change events\n\t\t\tif(self.wiki.getSizeOfTiddlerEventQueue() === 0) {\n\t\t\t\t// Check if we're dirty\n\t\t\t\tif(self.numChanges > 0) {\n\t\t\t\t\tself.saveWiki({\n\t\t\t\t\t\tmethod: \"autosave\",\n\t\t\t\t\t\tdownloadType: \"text/plain\"\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Otherwise put ourselves in the \"pending autosave\" state and wait for the change event before we do the autosave\n\t\t\t\tself.pendingAutoSave = true;\n\t\t\t}\n\t\t});\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t}\n\t// Install the save action handlers\n\tif($tw.browser) {\n\t\t$tw.rootWidget.addEventListener(\"tm-save-wiki\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-download-file\",function(event) {\n\t\t\tself.saveWiki({\n\t\t\t\tmethod: \"download\",\n\t\t\t\ttemplate: event.param,\n\t\t\t\tdownloadType: \"text/plain\",\n\t\t\t\tvariables: event.paramObject\n\t\t\t});\n\t\t});\n\t}\n}\n\nSaverHandler.prototype.titleSyncFilter = \"$:/config/SaverFilter\";\nSaverHandler.prototype.titleAutoSave = \"$:/config/AutoSave\";\nSaverHandler.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\n\n/*\nSelect the appropriate saver modules and set them up\n*/\nSaverHandler.prototype.initSavers = function(moduleType) {\n\tmoduleType = moduleType || \"saver\";\n\t// Instantiate the available savers\n\tthis.savers = [];\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(moduleType,function(title,module) {\n\t\tif(module.canSave(self)) {\n\t\t\tself.savers.push(module.create(self.wiki));\n\t\t}\n\t});\n\t// Sort the savers into priority order\n\tthis.savers.sort(function(a,b) {\n\t\tif(a.info.priority < b.info.priority) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(a.info.priority > b.info.priority) {\n\t\t\t\treturn +1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nSave the wiki contents. Options are:\n\tmethod: \"save\", \"autosave\" or \"download\"\n\ttemplate: the tiddler containing the template to save\n\tdownloadType: the content type for the saved file\n*/\nSaverHandler.prototype.saveWiki = function(options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tmethod = options.method || \"save\";\n\t// Ignore autosave if disabled\n\tif(method === \"autosave\" && ($tw.config.disableAutoSave || this.wiki.getTiddlerText(this.titleAutoSave,\"yes\") !== \"yes\")) {\n\t\treturn false;\n\t}\n\tvar\tvariables = options.variables || {},\n\t\ttemplate = options.template || \"$:/core/save/all\",\n\t\tdownloadType = options.downloadType || \"text/plain\",\n\t\ttext = this.wiki.renderTiddler(downloadType,template,options),\n\t\tcallback = function(err) {\n\t\t\tif(err) {\n\t\t\t\talert($tw.language.getString(\"Error/WhileSaving\") + \":\\n\\n\" + err);\n\t\t\t} else {\n\t\t\t\t// Clear the task queue if we're saving (rather than downloading)\n\t\t\t\tif(method !== \"download\") {\n\t\t\t\t\tself.numChanges = 0;\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t}\n\t\t\t\t$tw.notifier.display(self.titleSavedNotification);\n\t\t\t\tif(options.callback) {\n\t\t\t\t\toptions.callback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t// Call the highest priority saver that supports this method\n\tfor(var t=this.savers.length-1; t>=0; t--) {\n\t\tvar saver = this.savers[t];\n\t\tif(saver.info.capabilities.indexOf(method) !== -1 && saver.save(text,method,callback,{variables: {filename: variables.filename}})) {\n\t\t\tthis.logger.log(\"Saving wiki with method\",method,\"through saver\",saver.info.name);\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSaverHandler.prototype.isDirty = function() {\n\treturn this.numChanges > 0;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSaverHandler.prototype.updateDirtyStatus = function() {\n\tvar self = this;\n\tif($tw.browser) {\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",this.isDirty());\n\t\t$tw.utils.each($tw.windows,function(win) {\n\t\t\t$tw.utils.toggleClass(win.document.body,\"tc-dirty\",self.isDirty());\n\t\t});\n\t}\n};\n\nexports.SaverHandler = SaverHandler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/savers/andtidwiki.js": {
            "title": "$:/core/modules/savers/andtidwiki.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/andtidwiki.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the AndTidWiki Android app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar AndTidWiki = function(wiki) {\n};\n\nAndTidWiki.prototype.save = function(text,method,callback,options) {\n\tvar filename = options && options.variables ? options.variables.filename : null;\n\tif (method === \"download\") {\n\t\t// Support download\n\t\tif (window.twi.saveDownload) {\n\t\t\ttry {\n\t\t\t\twindow.twi.saveDownload(text,filename);\n\t\t\t} catch(err) {\n\t\t\t\tif (err.message === \"Method not found\") {\n\t\t\t\t\twindow.twi.saveDownload(text);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tvar link = document.createElement(\"a\");\n\t\t\tlink.setAttribute(\"href\",\"data:text/plain,\" + encodeURIComponent(text));\n\t\t\tif (filename) {\n\t\t\t    link.setAttribute(\"download\",filename);\n\t\t\t}\n\t\t\tdocument.body.appendChild(link);\n\t\t\tlink.click();\n\t\t\tdocument.body.removeChild(link);\n\t\t}\n\t} else if (window.twi.saveWiki) {\n\t\t// Direct save in Tiddloid\n\t\twindow.twi.saveWiki(text);\n\t} else {\n\t\t// Get the pathname of this document\n\t\tvar pathname = decodeURIComponent(document.location.toString().split(\"#\")[0]);\n\t\t// Strip the file://\n\t\tif(pathname.indexOf(\"file://\") === 0) {\n\t\t\tpathname = pathname.substr(7);\n\t\t}\n\t\t// Strip any query or location part\n\t\tvar p = pathname.indexOf(\"?\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\tp = pathname.indexOf(\"#\");\n\t\tif(p !== -1) {\n\t\t\tpathname = pathname.substr(0,p);\n\t\t}\n\t\t// Save the file\n\t\twindow.twi.saveFile(pathname,text);\n\t}\n\t// Call the callback\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nAndTidWiki.prototype.info = {\n\tname: \"andtidwiki\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.twi && !!window.twi.saveFile;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new AndTidWiki(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/beaker.js": {
            "title": "$:/core/modules/savers/beaker.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/beaker.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Beaker browser's (https://beakerbrowser.com) Dat protocol (https://datproject.org/)\nCompatible with beaker >= V0.7.2\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar BeakerSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nBeakerSaver.prototype.save = function(text,method,callback) {\n\tvar dat = new DatArchive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Beaker Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Beaker Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nBeakerSaver.prototype.info = {\n\tname: \"beaker\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.DatArchive && location.protocol===\"dat:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new BeakerSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/custom.js": {
            "title": "$:/core/modules/savers/custom.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/custom.js\ntype: application/javascript\nmodule-type: saver\n\nLooks for `window.$tw.customSaver` first on the current window, then\non the parent window (of an iframe). If present, the saver must define\n\tsave: function(text,method,callback) { ... }\nand the saver may define\n\tpriority: number\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar findSaver = function(window) {\n\ttry {\n\t\treturn window && window.$tw && window.$tw.customSaver;\n\t} catch (err) {\n\t\t// Catching the exception is the most reliable way to detect cross-origin iframe errors.\n\t\t// For example, instead of saying that `window.parent.$tw` is undefined, Firefox will throw\n\t\t//   Uncaught DOMException: Permission denied to access property \"$tw\" on cross-origin object\n\t\tconsole.log({ msg: \"custom saver is disabled\", reason: err });\n\t\treturn null;\n\t}\n}\nvar saver = findSaver(window) || findSaver(window.parent) || {};\n\nvar CustomSaver = function(wiki) {\n};\n\nCustomSaver.prototype.save = function(text,method,callback) {\n\treturn saver.save(text, method, callback);\n};\n\n/*\nInformation about this saver\n*/\nCustomSaver.prototype.info = {\n\tname: \"custom\",\n\tpriority: saver.priority || 4000,\n\tcapabilities: [\"save\",\"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!(saver.save);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new CustomSaver(wiki);\n};\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/download.js": {
            "title": "$:/core/modules/savers/download.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/download.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar DownloadSaver = function(wiki) {\n};\n\nDownloadSaver.prototype.save = function(text,method,callback,options) {\n\toptions = options || {};\n\t// Get the current filename\n\tvar filename = options.variables.filename;\n\tif(!filename) {\n\t\tvar p = document.location.pathname.lastIndexOf(\"/\");\n\t\tif(p !== -1) {\n\t\t\t// We decode the pathname because document.location is URL encoded by the browser\n\t\t\tfilename = decodeURIComponent(document.location.pathname.substr(p+1));\n\t\t}\n\t}\n\tif(!filename) {\n\t\tfilename = \"tiddlywiki.html\";\n\t}\n\t// Set up the link\n\tvar link = document.createElement(\"a\");\n\tif(Blob !== undefined) {\n\t\tvar blob = new Blob([text], {type: \"text/html\"});\n\t\tlink.setAttribute(\"href\", URL.createObjectURL(blob));\n\t} else {\n\t\tlink.setAttribute(\"href\",\"data:text/html,\" + encodeURIComponent(text));\n\t}\n\tlink.setAttribute(\"download\",filename);\n\tdocument.body.appendChild(link);\n\tlink.click();\n\tdocument.body.removeChild(link);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nDownloadSaver.prototype.info = {\n\tname: \"download\",\n\tpriority: 100\n};\n\nObject.defineProperty(DownloadSaver.prototype.info, \"capabilities\", {\n\tget: function() {\n\t\tvar capabilities = [\"save\", \"download\"];\n\t\tif(($tw.wiki.getTextReference(\"$:/config/DownloadSaver/AutoSave\") || \"\").toLowerCase() === \"yes\") {\n\t\t\tcapabilities.push(\"autosave\");\n\t\t}\n\t\treturn capabilities;\n\t}\n});\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn document.createElement(\"a\").download !== undefined;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new DownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/fsosaver.js": {
            "title": "$:/core/modules/savers/fsosaver.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/fsosaver.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via MS FileSystemObject ActiveXObject\n\nNote: Since TiddlyWiki's markup contains the MOTW, the FileSystemObject normally won't be available. \nHowever, if the wiki is loaded as an .HTA file (Windows HTML Applications) then the FSO can be used.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar FSOSaver = function(wiki) {\n};\n\nFSOSaver.prototype.save = function(text,method,callback) {\n\t// Get the pathname of this document\n\tvar pathname = unescape(document.location.pathname);\n\t// Test for a Windows path of the form /x:\\blah...\n\tif(/^\\/[A-Z]\\:\\\\[^\\\\]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t} else if(document.location.hostname !== \"\" && /^\\/\\\\[^\\\\]+\\\\[^\\\\]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t// Remove the leading slash\n\t\tpathname = pathname.substr(1);\n\t\t// reconstruct UNC path\n\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t} else {\n\t\treturn false;\n\t}\n\t// Save the file (as UTF-16)\n\tvar fso = new ActiveXObject(\"Scripting.FileSystemObject\");\n\tvar file = fso.OpenTextFile(pathname,2,-1,-1);\n\tfile.Write(text);\n\tfile.Close();\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nFSOSaver.prototype.info = {\n\tname: \"FSOSaver\",\n\tpriority: 120,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\ttry {\n\t\treturn (window.location.protocol === \"file:\") && !!(new ActiveXObject(\"Scripting.FileSystemObject\"));\n\t} catch(e) { return false; }\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new FSOSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/gitea.js": {
            "title": "$:/core/modules/savers/gitea.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/gitea.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the gitea\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GiteaSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGiteaSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/Gitea/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"Gitea\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/Gitea/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/Gitea/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/Gitea/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/Gitea/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/Gitea/ServerURL\") || \"https://gitea\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"token \" + password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar use_put = true;\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(sha === \"\"){\n\t\t\t\t\tuse_put = false;\n\t\t\t\t}\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: endpoint + \"/repos/\" + repo + \"/branches/\" + branch,\n\t\t\t\ttype: \"GET\",\n\t\t\t\theaders: headers,\n\t\t\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\t\t\tif(xhr.status === 404) {\n\t\t\t\t\t\tcallback(\"Please ensure the branch in the Gitea repo exists\");\n\t\t\t\t\t}else{\n\t\t\t\t\t\tdata[\"branch\"] = branch;\n\t\t\t\t\t\tself.upload(uri + filename, use_put?\"PUT\":\"POST\", headers, data, callback);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\nGiteaSaver.prototype.upload = function(uri,method,headers,data,callback) {\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: method,\n\t\theaders: headers,\n\t\tdata: JSON.stringify(data),\n\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\tcallback(null);\n\t\t}\n\t});\n};\n\n/*\nInformation about this saver\n*/\nGiteaSaver.prototype.info = {\n\tname: \"Gitea\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GiteaSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/github.js": {
            "title": "$:/core/modules/savers/github.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/github.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitHub v3 REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitHubSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitHubSaver.prototype.save = function(text,method,callback) {\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitHub/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"github\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitHub/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitHub/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitHub/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitHub/Branch\") || \"main\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitHub/ServerURL\") || \"https://api.github.com\",\n\t\theaders = {\n\t\t\t\"Accept\": \"application/vnd.github.v3+json\",\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Authorization\": \"Basic \" + window.btoa(username + \":\" + password),\n\t\t\t\"If-None-Match\": \"\"\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/repos/\" + repo + \"/contents\" + path;\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tdata: {\n\t\t\tref: branch\n\t\t},\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tmessage: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: $tw.utils.base64Encode(text),\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a PUT request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + filename,\n\t\t\t\ttype: \"PUT\",\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitHubSaver.prototype.info = {\n\tname: \"github\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitHubSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/gitlab.js": {
            "title": "$:/core/modules/savers/gitlab.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/gitlab.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by pushing a commit to the GitLab REST API\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: true */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar GitLabSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nGitLabSaver.prototype.save = function(text,method,callback) {\n\t/* See https://docs.gitlab.com/ee/api/repository_files.html */\n\tvar self = this,\n\t\tusername = this.wiki.getTiddlerText(\"$:/GitLab/Username\"),\n\t\tpassword = $tw.utils.getPassword(\"gitlab\"),\n\t\trepo = this.wiki.getTiddlerText(\"$:/GitLab/Repo\"),\n\t\tpath = this.wiki.getTiddlerText(\"$:/GitLab/Path\",\"\"),\n\t\tfilename = this.wiki.getTiddlerText(\"$:/GitLab/Filename\"),\n\t\tbranch = this.wiki.getTiddlerText(\"$:/GitLab/Branch\") || \"master\",\n\t\tendpoint = this.wiki.getTiddlerText(\"$:/GitLab/ServerURL\") || \"https://gitlab.com/api/v4\",\n\t\theaders = {\n\t\t\t\"Content-Type\": \"application/json;charset=UTF-8\",\n\t\t\t\"Private-Token\": password\n\t\t};\n\t// Bail if we don't have everything we need\n\tif(!username || !password || !repo || !filename) {\n\t\treturn false;\n\t}\n\t// Make sure the path start and ends with a slash\n\tif(path.substring(0,1) !== \"/\") {\n\t\tpath = \"/\" + path;\n\t}\n\tif(path.substring(path.length - 1) !== \"/\") {\n\t\tpath = path + \"/\";\n\t}\n\t// Compose the base URI\n\tvar uri = endpoint + \"/projects/\" + encodeURIComponent(repo) + \"/repository/\";\n\t// Perform a get request to get the details (inc shas) of files in the same path as our file\n\t$tw.utils.httpRequest({\n\t\turl: uri + \"tree/?path=\" + encodeURIComponent(path.replace(/^\\/+|\\/$/g, '')) + \"&branch=\" + encodeURIComponent(branch.replace(/^\\/+|\\/$/g, '')),\n\t\ttype: \"GET\",\n\t\theaders: headers,\n\t\tcallback: function(err,getResponseDataJson,xhr) {\n\t\t\tvar getResponseData,sha = \"\";\n\t\t\tif(err && xhr.status !== 404) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tvar requestType = \"POST\";\n\t\t\tif(xhr.status !== 404) {\n\t\t\t\tgetResponseData = JSON.parse(getResponseDataJson);\n\t\t\t\t$tw.utils.each(getResponseData,function(details) {\n\t\t\t\t\tif(details.name === filename) {\n\t\t\t\t\t\trequestType = \"PUT\";\n\t\t\t\t\t\tsha = details.sha;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t}\n\t\t\tvar data = {\n\t\t\t\tcommit_message: $tw.language.getRawString(\"ControlPanel/Saving/GitService/CommitMessage\"),\n\t\t\t\tcontent: text,\n\t\t\t\tbranch: branch,\n\t\t\t\tsha: sha\n\t\t\t};\n\t\t\t// Perform a request to save the file\n\t\t\t$tw.utils.httpRequest({\n\t\t\t\turl: uri + \"files/\" + encodeURIComponent(path.replace(/^\\/+/, '') + filename),\n\t\t\t\ttype: requestType,\n\t\t\t\theaders: headers,\n\t\t\t\tdata: JSON.stringify(data),\n\t\t\t\tcallback: function(err,putResponseDataJson,xhr) {\n\t\t\t\t\tif(err) {\n\t\t\t\t\t\treturn callback(err);\n\t\t\t\t\t}\n\t\t\t\t\tvar putResponseData = JSON.parse(putResponseDataJson);\n\t\t\t\t\tcallback(null);\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nGitLabSaver.prototype.info = {\n\tname: \"gitlab\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new GitLabSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/hyperdrive.js": {
            "title": "$:/core/modules/savers/hyperdrive.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/hyperdrive.js\ntype: application/javascript\nmodule-type: saver\n\nSaves files using the Hyperdrive Protocol (https://hypercore-protocol.org/#hyperdrive) Beaker browser beta-1.0 and later (https://beakerbrowser.com)\nCompatible with beaker >= V1.0.0\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet up the saver\n*/\nvar HyperdriveSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nHyperdriveSaver.prototype.save = function(text,method,callback) {\n\tvar dat = beaker.hyperdrive.drive(\"\" + window.location),\n\t\tpathname = (\"\" + window.location.pathname).split(\"#\")[0];\n\tdat.stat(pathname).then(function(value) {\n\t\tif(value.isDirectory()) {\n\t\t\tpathname = pathname + \"/index.html\";\n\t\t}\n\t\tdat.writeFile(pathname,text,\"utf8\").then(function(value) {\n\t\t\tcallback(null);\n\t\t},function(reason) {\n\t\t\tcallback(\"Hyperdrive Saver Write Error: \" + reason);\n\t\t});\n\t},function(reason) {\n\t\tcallback(\"Hyperdrive Saver Stat Error: \" + reason);\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nHyperdriveSaver.prototype.info = {\n\tname: \"beaker-1.x\",\n\tpriority: 3000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.beaker && !!beaker.hyperdrive && location.protocol===\"hyper:\";\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new HyperdriveSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/manualdownload.js": {
            "title": "$:/core/modules/savers/manualdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/manualdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via HTML5's download APIs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Title of the tiddler containing the download message\nvar downloadInstructionsTitle = \"$:/language/Modals/Download\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar ManualDownloadSaver = function(wiki) {\n};\n\nManualDownloadSaver.prototype.save = function(text,method,callback) {\n\t$tw.modal.display(downloadInstructionsTitle,{\n\t\tdownloadLink: \"data:text/html,\" + encodeURIComponent(text)\n\t});\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nManualDownloadSaver.prototype.info = {\n\tname: \"manualdownload\",\n\tpriority: 0,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new ManualDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/msdownload.js": {
            "title": "$:/core/modules/savers/msdownload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/msdownload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via window.navigator.msSaveBlob()\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar MsDownloadSaver = function(wiki) {\n};\n\nMsDownloadSaver.prototype.save = function(text,method,callback) {\n\t// Get the current filename\n\tvar filename = \"tiddlywiki.html\",\n\t\tp = document.location.pathname.lastIndexOf(\"/\");\n\tif(p !== -1) {\n\t\tfilename = document.location.pathname.substr(p+1);\n\t}\n\t// Set up the link\n\tvar blob = new Blob([text], {type: \"text/html\"});\n\twindow.navigator.msSaveBlob(blob,filename);\n\t// Callback that we succeeded\n\tcallback(null);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nMsDownloadSaver.prototype.info = {\n\tname: \"msdownload\",\n\tpriority: 110,\n\tcapabilities: [\"save\", \"download\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn !!window.navigator.msSaveBlob;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new MsDownloadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/put.js": {
            "title": "$:/core/modules/savers/put.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/put.js\ntype: application/javascript\nmodule-type: saver\n\nSaves wiki by performing a PUT request to the server\n\nWorks with any server which accepts a PUT request\nto the current URL, such as a WebDAV server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRetrieve ETag if available\n*/\nvar retrieveETag = function(self) {\n\tvar headers = {\n\t\tAccept: \"*/*;charset=UTF-8\"\n\t};\n\t$tw.utils.httpRequest({\n\t\turl: self.uri(),\n\t\ttype: \"HEAD\",\n\t\theaders: headers,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tvar etag = xhr.getResponseHeader(\"ETag\");\n\t\t\tif(!etag) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tself.etag = etag.replace(/^W\\//,\"\");\n\t\t}\n\t});\n};\n\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar PutSaver = function(wiki) {\n\tthis.wiki = wiki;\n\tvar self = this;\n\tvar uri = this.uri();\n\t// Async server probe. Until probe finishes, save will fail fast\n\t// See also https://github.com/Jermolene/TiddlyWiki5/issues/2276\n\t$tw.utils.httpRequest({\n\t\turl: uri,\n\t\ttype: \"OPTIONS\",\n\t\tcallback: function(err,data,xhr) {\n\t\t\t// Check DAV header http://www.webdav.org/specs/rfc2518.html#rfc.section.9.1\n\t\t\tif(!err) {\n\t\t\t\tself.serverAcceptsPuts = xhr.status === 200 && !!xhr.getResponseHeader(\"dav\");\n\t\t\t}\n\t\t}\n\t});\n\tretrieveETag(this);\n};\n\nPutSaver.prototype.uri = function() {\n\treturn document.location.toString().split(\"#\")[0];\n};\n\n// TODO: in case of edit conflict\n// Prompt: Do you want to save over this? Y/N\n// Merging would be ideal, and may be possible using future generic merge flow\nPutSaver.prototype.save = function(text,method,callback) {\n\tif(!this.serverAcceptsPuts) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tvar headers = {\n\t\t\"Content-Type\": \"text/html;charset=UTF-8\"\n\t};\n\tif(this.etag) {\n\t\theaders[\"If-Match\"] = this.etag;\n\t}\n\t$tw.utils.httpRequest({\n\t\turl: this.uri(),\n\t\ttype: \"PUT\",\n\t\theaders: headers,\n\t\tdata: text,\n\t\tcallback: function(err,data,xhr) {\n\t\t\tif(err) {\n\t\t\t\t// response is textual: \"XMLHttpRequest error code: 412\"\n\t\t\t\tvar status = Number(err.substring(err.indexOf(':') + 2, err.length))\n\t\t\t\tif(status === 412) { // edit conflict\n\t\t\t\t\tvar message = $tw.language.getString(\"Error/EditConflict\");\n\t\t\t\t\tcallback(message);\n\t\t\t\t} else {\n\t\t\t\t\tcallback(err); // fail\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tself.etag = xhr.getResponseHeader(\"ETag\");\n\t\t\t\tif(self.etag == null) {\n\t\t\t\t\tretrieveETag(self);\n\t\t\t\t}\n\t\t\t\tcallback(null); // success\n\t\t\t}\n\t\t}\n\t});\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nPutSaver.prototype.info = {\n\tname: \"put\",\n\tpriority: 2000,\n\tcapabilities: [\"save\",\"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn /^https?:/.test(location.protocol);\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new PutSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyfox.js": {
            "title": "$:/core/modules/savers/tiddlyfox.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyfox.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TiddlyFox file extension\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TiddlyFoxSaver = function(wiki) {\n};\n\nTiddlyFoxSaver.prototype.save = function(text,method,callback) {\n\tvar messageBox = document.getElementById(\"tiddlyfox-message-box\");\n\tif(messageBox) {\n\t\t// Get the pathname of this document\n\t\tvar pathname = document.location.toString().split(\"#\")[0];\n\t\t// Replace file://localhost/ with file:///\n\t\tif(pathname.indexOf(\"file://localhost/\") === 0) {\n\t\t\tpathname = \"file://\" + pathname.substr(16);\n\t\t}\n\t\t// Windows path file:///x:/blah/blah --> x:\\blah\\blah\n\t\tif(/^file\\:\\/\\/\\/[A-Z]\\:\\//i.test(pathname)) {\n\t\t\t// Remove the leading slash and convert slashes to backslashes\n\t\t\tpathname = pathname.substr(8).replace(/\\//g,\"\\\\\");\n\t\t// Firefox Windows network path file://///server/share/blah/blah --> //server/share/blah/blah\n\t\t} else if(pathname.indexOf(\"file://///\") === 0) {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(10)).replace(/\\//g,\"\\\\\");\n\t\t// Mac/Unix local path file:///path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:///\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(7));\n\t\t// Mac/Unix local path file:/path/path --> /path/path\n\t\t} else if(pathname.indexOf(\"file:/\") === 0) {\n\t\t\tpathname = unescape(pathname.substr(5));\n\t\t// Otherwise Windows networth path file://server/share/path/path --> \\\\server\\share\\path\\path\n\t\t} else {\n\t\t\tpathname = \"\\\\\\\\\" + unescape(pathname.substr(7)).replace(new RegExp(\"/\",\"g\"),\"\\\\\");\n\t\t}\n\t\t// Create the message element and put it in the message box\n\t\tvar message = document.createElement(\"div\");\n\t\tmessage.setAttribute(\"data-tiddlyfox-path\",decodeURIComponent(pathname));\n\t\tmessage.setAttribute(\"data-tiddlyfox-content\",text);\n\t\tmessageBox.appendChild(message);\n\t\t// Add an event handler for when the file has been saved\n\t\tmessage.addEventListener(\"tiddlyfox-have-saved-file\",function(event) {\n\t\t\tcallback(null);\n\t\t}, false);\n\t\t// Create and dispatch the custom event to the extension\n\t\tvar event = document.createEvent(\"Events\");\n\t\tevent.initEvent(\"tiddlyfox-save-file\",true,false);\n\t\tmessage.dispatchEvent(event);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyFoxSaver.prototype.info = {\n\tname: \"tiddlyfox\",\n\tpriority: 1500,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyFoxSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/tiddlyie.js": {
            "title": "$:/core/modules/savers/tiddlyie.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/tiddlyie.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via Internet Explorer BHO extenion (TiddlyIE)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar TiddlyIESaver = function(wiki) {\n};\n\nTiddlyIESaver.prototype.save = function(text,method,callback) {\n\t// Check existence of TiddlyIE BHO extension (note: only works after document is complete)\n\tif(typeof(window.TiddlyIE) != \"undefined\") {\n\t\t// Get the pathname of this document\n\t\tvar pathname = unescape(document.location.pathname);\n\t\t// Test for a Windows path of the form /x:/blah...\n\t\tif(/^\\/[A-Z]\\:\\/[^\\/]+/i.test(pathname)) {\t// ie: ^/[a-z]:/[^/]+ (is this better?: ^/[a-z]:/[^/]+(/[^/]+)*\\.[^/]+ )\n\t\t\t// Remove the leading slash\n\t\t\tpathname = pathname.substr(1);\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t} else if(document.hostname !== \"\" && /^\\/[^\\/]+\\/[^\\/]+/i.test(pathname)) {\t// test for \\\\server\\share\\blah... - ^/[^/]+/[^/]+\n\t\t\t// Convert slashes to backslashes\n\t\t\tpathname = pathname.replace(/\\//g,\"\\\\\");\n\t\t\t// reconstruct UNC path\n\t\t\tpathname = \"\\\\\\\\\" + document.location.hostname + pathname;\n\t\t} else return false;\n\t\t// Prompt the user to save the file\n\t\twindow.TiddlyIE.save(pathname, text);\n\t\t// Callback that we succeeded\n\t\tcallback(null);\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nInformation about this saver\n*/\nTiddlyIESaver.prototype.info = {\n\tname: \"tiddlyiesaver\",\n\tpriority: 1500,\n\tcapabilities: [\"save\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn (window.location.protocol === \"file:\");\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TiddlyIESaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/twedit.js": {
            "title": "$:/core/modules/savers/twedit.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/twedit.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via the TWEdit iOS app\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false, netscape: false, Components: false */\n\"use strict\";\n\nvar TWEditSaver = function(wiki) {\n};\n\nTWEditSaver.prototype.save = function(text,method,callback) {\n\t// Bail if we're not running under TWEdit\n\tif(typeof DeviceInfo !== \"object\") {\n\t\treturn false;\n\t}\n\t// Get the pathname of this document\n\tvar pathname = decodeURIComponent(document.location.pathname);\n\t// Strip any query or location part\n\tvar p = pathname.indexOf(\"?\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\tp = pathname.indexOf(\"#\");\n\tif(p !== -1) {\n\t\tpathname = pathname.substr(0,p);\n\t}\n\t// Remove the leading \"/Documents\" from path\n\tvar prefix = \"/Documents\";\n\tif(pathname.indexOf(prefix) === 0) {\n\t\tpathname = pathname.substr(prefix.length);\n\t}\n\t// Error handler\n\tvar errorHandler = function(event) {\n\t\t// Error\n\t\tcallback($tw.language.getString(\"Error/SavingToTWEdit\") + \": \" + event.target.error.code);\n\t};\n\t// Get the file system\n\twindow.requestFileSystem(LocalFileSystem.PERSISTENT,0,function(fileSystem) {\n\t\t// Now we've got the filesystem, get the fileEntry\n\t\tfileSystem.root.getFile(pathname, {create: true}, function(fileEntry) {\n\t\t\t// Now we've got the fileEntry, create the writer\n\t\t\tfileEntry.createWriter(function(writer) {\n\t\t\t\twriter.onerror = errorHandler;\n\t\t\t\twriter.onwrite = function() {\n\t\t\t\t\tcallback(null);\n\t\t\t\t};\n\t\t\t\twriter.position = 0;\n\t\t\t\twriter.write(text);\n\t\t\t},errorHandler);\n\t\t}, errorHandler);\n\t}, errorHandler);\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nTWEditSaver.prototype.info = {\n\tname: \"twedit\",\n\tpriority: 1600,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new TWEditSaver(wiki);\n};\n\n/////////////////////////// Hack\n// HACK: This ensures that TWEdit recognises us as a TiddlyWiki document\nif($tw.browser) {\n\twindow.version = {title: \"TiddlyWiki\"};\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/savers/upload.js": {
            "title": "$:/core/modules/savers/upload.js",
            "text": "/*\\\ntitle: $:/core/modules/savers/upload.js\ntype: application/javascript\nmodule-type: saver\n\nHandles saving changes via upload to a server.\n\nDesigned to be compatible with BidiX's UploadPlugin at http://tiddlywiki.bidix.info/#UploadPlugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSelect the appropriate saver module and set it up\n*/\nvar UploadSaver = function(wiki) {\n\tthis.wiki = wiki;\n};\n\nUploadSaver.prototype.save = function(text,method,callback) {\n\t// Get the various parameters we need\n\tvar backupDir = this.wiki.getTextReference(\"$:/UploadBackupDir\") || \".\",\n\t\tusername = this.wiki.getTextReference(\"$:/UploadName\"),\n\t\tpassword = $tw.utils.getPassword(\"upload\"),\n\t\tuploadDir = this.wiki.getTextReference(\"$:/UploadDir\") || \".\",\n\t\tuploadFilename = this.wiki.getTextReference(\"$:/UploadFilename\") || \"index.html\",\n\t\turl = this.wiki.getTextReference(\"$:/UploadURL\");\n\t// Bail out if we don't have the bits we need\n\tif(!username || username.toString().trim() === \"\" || !password || password.toString().trim() === \"\") {\n\t\treturn false;\n\t}\n\t// Construct the url if not provided\n\tif(!url) {\n\t\turl = \"http://\" + username + \".tiddlyspot.com/store.cgi\";\n\t}\n\t// Assemble the header\n\tvar boundary = \"---------------------------\" + \"AaB03x\";\t\n\tvar uploadFormName = \"UploadPlugin\";\n\tvar head = [];\n\thead.push(\"--\" + boundary + \"\\r\\nContent-disposition: form-data; name=\\\"UploadPlugin\\\"\\r\\n\");\n\thead.push(\"backupDir=\" + backupDir + \";user=\" + username + \";password=\" + password + \";uploaddir=\" + uploadDir + \";;\"); \n\thead.push(\"\\r\\n\" + \"--\" + boundary);\n\thead.push(\"Content-disposition: form-data; name=\\\"userfile\\\"; filename=\\\"\" + uploadFilename + \"\\\"\");\n\thead.push(\"Content-Type: text/html;charset=UTF-8\");\n\thead.push(\"Content-Length: \" + text.length + \"\\r\\n\");\n\thead.push(\"\");\n\t// Assemble the tail and the data itself\n\tvar tail = \"\\r\\n--\" + boundary + \"--\\r\\n\",\n\t\tdata = head.join(\"\\r\\n\") + text + tail;\n\t// Do the HTTP post\n\tvar http = new XMLHttpRequest();\n\thttp.open(\"POST\",url,true,username,password);\n\thttp.setRequestHeader(\"Content-Type\",\"multipart/form-data; charset=UTF-8; boundary=\" + boundary);\n\thttp.onreadystatechange = function() {\n\t\tif(http.readyState == 4 && http.status == 200) {\n\t\t\tif(http.responseText.substr(0,4) === \"0 - \") {\n\t\t\t\tcallback(null);\n\t\t\t} else {\n\t\t\t\tcallback(http.responseText);\n\t\t\t}\n\t\t}\n\t};\n\ttry {\n\t\thttp.send(data);\n\t} catch(ex) {\n\t\treturn callback($tw.language.getString(\"Error/Caption\") + \":\" + ex);\n\t}\n\t$tw.notifier.display(\"$:/language/Notifications/Save/Starting\");\n\treturn true;\n};\n\n/*\nInformation about this saver\n*/\nUploadSaver.prototype.info = {\n\tname: \"upload\",\n\tpriority: 2000,\n\tcapabilities: [\"save\", \"autosave\"]\n};\n\n/*\nStatic method that returns true if this saver is capable of working\n*/\nexports.canSave = function(wiki) {\n\treturn true;\n};\n\n/*\nCreate an instance of this saver\n*/\nexports.create = function(wiki) {\n\treturn new UploadSaver(wiki);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "saver"
        },
        "$:/core/modules/server/authenticators/basic.js": {
            "title": "$:/core/modules/server/authenticators/basic.js",
            "text": "/*\\\ntitle: $:/core/modules/server/authenticators/basic.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for WWW basic authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\");\n}\n\nfunction BasicAuthenticator(server) {\n\tthis.server = server;\n\tthis.credentialsData = [];\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nBasicAuthenticator.prototype.init = function() {\n\t// Read the credentials data\n\tthis.credentialsFilepath = this.server.get(\"credentials\");\n\tif(this.credentialsFilepath) {\n\t\tvar resolveCredentialsFilepath = path.resolve(this.server.boot.wikiPath,this.credentialsFilepath);\n\t\tif(fs.existsSync(resolveCredentialsFilepath) && !fs.statSync(resolveCredentialsFilepath).isDirectory()) {\n\t\t\tvar credentialsText = fs.readFileSync(resolveCredentialsFilepath,\"utf8\"),\n\t\t\t\tcredentialsData = $tw.utils.parseCsvStringWithHeader(credentialsText);\n\t\t\tif(typeof credentialsData === \"string\") {\n\t\t\t\treturn \"Error: \" + credentialsData + \" reading credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t\t} else {\n\t\t\t\tthis.credentialsData = credentialsData;\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"Error: Unable to load user credentials from '\" + resolveCredentialsFilepath + \"'\";\n\t\t}\n\t}\n\t// Add the hardcoded username and password if specified\n\tif(this.server.get(\"username\") && this.server.get(\"password\")) {\n\t\tthis.credentialsData = this.credentialsData || [];\n\t\tthis.credentialsData.push({\n\t\t\tusername: this.server.get(\"username\"),\n\t\t\tpassword: this.server.get(\"password\")\n\t\t});\n\t}\n\treturn this.credentialsData.length > 0;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nBasicAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Extract the incoming username and password from the request\n\tvar header = request.headers.authorization || \"\";\n\tif(!header && state.allowAnon) {\n\t\t// If there's no header and anonymous access is allowed then we don't set authenticatedUsername\n\t\treturn true;\n\t}\n\tvar token = header.split(/\\s+/).pop() || \"\",\n\t\tauth = $tw.utils.base64Decode(token),\n\t\tparts = auth.split(/:/),\n\t\tincomingUsername = parts[0],\n\t\tincomingPassword = parts[1];\n\t// Check that at least one of the credentials matches\n\tvar matchingCredentials = this.credentialsData.find(function(credential) {\n\t\treturn credential.username === incomingUsername && credential.password === incomingPassword;\n\t});\n\tif(matchingCredentials) {\n\t\t// If so, add the authenticated username to the request state\n\t\tstate.authenticatedUsername = incomingUsername;\n\t\treturn true;\n\t} else {\n\t\t// If not, return an authentication challenge\n\t\tresponse.writeHead(401,\"Authentication required\",{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\n\t\treturn false;\n\t}\n};\n\nexports.AuthenticatorClass = BasicAuthenticator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "authenticator"
        },
        "$:/core/modules/server/authenticators/header.js": {
            "title": "$:/core/modules/server/authenticators/header.js",
            "text": "/*\\\ntitle: $:/core/modules/server/authenticators/header.js\ntype: application/javascript\nmodule-type: authenticator\n\nAuthenticator for trusted header authentication\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction HeaderAuthenticator(server) {\n\tthis.server = server;\n\tthis.header = server.get(\"authenticated-user-header\") ? server.get(\"authenticated-user-header\").toLowerCase() : undefined;\n}\n\n/*\nReturns true if the authenticator is active, false if it is inactive, or a string if there is an error\n*/\nHeaderAuthenticator.prototype.init = function() {\n\treturn !!this.header;\n};\n\n/*\nReturns true if the request is authenticated and assigns the \"authenticatedUsername\" state variable.\nReturns false if the request couldn't be authenticated having sent an appropriate response to the browser\n*/\nHeaderAuthenticator.prototype.authenticateRequest = function(request,response,state) {\n\t// Otherwise, authenticate as the username in the specified header\n\tvar username = request.headers[this.header];\n\tif(!username && !state.allowAnon) {\n\t\tresponse.writeHead(401,\"Authorization header required to login to '\" + state.server.servername + \"'\");\n\t\tresponse.end();\n\t\treturn false;\n\t} else {\n\t\t// authenticatedUsername will be undefined for anonymous users\n\t\tstate.authenticatedUsername = username;\n\t\treturn true;\n\t}\n};\n\nexports.AuthenticatorClass = HeaderAuthenticator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "authenticator"
        },
        "$:/core/modules/server/routes/delete-tiddler.js": {
            "title": "$:/core/modules/server/routes/delete-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/delete-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nDELETE /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"DELETE\";\n\nexports.path = /^\\/bags\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]);\n\tstate.wiki.deleteTiddler(title);\n\tresponse.writeHead(204, \"OK\", {\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-favicon.js": {
            "title": "$:/core/modules/server/routes/get-favicon.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-favicon.js\ntype: application/javascript\nmodule-type: route\n\nGET /favicon.ico\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/favicon.ico$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"image/x-icon\"});\n\tvar buffer = state.wiki.getTiddlerText(\"$:/favicon.ico\",\"\");\n\tresponse.end(buffer,\"base64\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-file.js": {
            "title": "$:/core/modules/server/routes/get-file.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-file.js\ntype: application/javascript\nmodule-type: route\n\nGET /files/:filepath\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/files\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar path = require(\"path\"),\n\t\tfs = require(\"fs\"),\n\t\tutil = require(\"util\"),\n\t\tsuppliedFilename = decodeURIComponent(state.params[0]),\n\t\tfilename = path.resolve(state.boot.wikiPath,\"files\",suppliedFilename),\n\t\textension = path.extname(filename);\n\tfs.readFile(filename,function(err,content) {\n\t\tvar status,content,type = \"text/plain\";\n\t\tif(err) {\n\t\t\tconsole.log(\"Error accessing file \" + filename + \": \" + err.toString());\n\t\t\tstatus = 404;\n\t\t\tcontent = \"File '\" + suppliedFilename + \"' not found\";\n\t\t} else {\n\t\t\tstatus = 200;\n\t\t\tcontent = content;\n\t\t\ttype = ($tw.config.fileExtensionInfo[extension] ? $tw.config.fileExtensionInfo[extension].type : \"application/octet-stream\");\n\t\t}\n\t\tresponse.writeHead(status,{\n\t\t\t\"Content-Type\": type\n\t\t});\n\t\tresponse.end(content);\n\t});\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-index.js": {
            "title": "$:/core/modules/server/routes/get-index.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-index.js\ntype: application/javascript\nmodule-type: route\n\nGET /\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar zlib = require(\"zlib\");\n\nexports.method = \"GET\";\n\nexports.path = /^\\/$/;\n\nexports.handler = function(request,response,state) {\n\tvar acceptEncoding = request.headers[\"accept-encoding\"];\n\tif(!acceptEncoding) {\n\t\tacceptEncoding = \"\";\n\t}\n\tvar text = state.wiki.renderTiddler(state.server.get(\"root-render-type\"),state.server.get(\"root-tiddler\")),\n\t\tresponseHeaders = {\n\t\t\"Content-Type\": state.server.get(\"root-serve-type\")\n\t};\n\t/*\n\tIf the gzip=yes flag for `listen` is set, check if the user agent permits\n\tcompression. If so, compress our response. Note that we use the synchronous\n\tfunctions from zlib to stay in the imperative style. The current `Server`\n\tdoesn't depend on this, and we may just as well use the async versions.\n\t*/\n\tif(state.server.enableGzip) {\n\t\tif (/\\bdeflate\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"deflate\";\n\t\t\ttext = zlib.deflateSync(text);\n\t\t} else if (/\\bgzip\\b/.test(acceptEncoding)) {\n\t\t\tresponseHeaders[\"Content-Encoding\"] = \"gzip\";\n\t\t\ttext = zlib.gzipSync(text);\n\t\t}\n\t}\n\tresponse.writeHead(200,responseHeaders);\n\tresponse.end(text);\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-login-basic.js": {
            "title": "$:/core/modules/server/routes/get-login-basic.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-login-basic.js\ntype: application/javascript\nmodule-type: route\n\nGET /login-basic -- force a Basic Authentication challenge\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/login-basic$/;\n\nexports.handler = function(request,response,state) {\n\tif(!state.authenticatedUsername) {\n\t\t// Challenge if there's no username\n\t\tresponse.writeHead(401,{\n\t\t\t\"WWW-Authenticate\": 'Basic realm=\"Please provide your username and password to login to ' + state.server.servername + '\"'\n\t\t});\n\t\tresponse.end();\t\t\n\t} else {\n\t\t// Redirect to the root wiki if login worked\n\t\tresponse.writeHead(302,{\n\t\t\tLocation: \"/\"\n\t\t});\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-status.js": {
            "title": "$:/core/modules/server/routes/get-status.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-status.js\ntype: application/javascript\nmodule-type: route\n\nGET /status\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/status$/;\n\nexports.handler = function(request,response,state) {\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar text = JSON.stringify({\n\t\tusername: state.authenticatedUsername || state.server.get(\"anon-username\") || \"\",\n\t\tanonymous: !state.authenticatedUsername,\n\t\tread_only: !state.server.isAuthorized(\"writers\",state.authenticatedUsername),\n\t\tspace: {\n\t\t\trecipe: \"default\"\n\t\t},\n\t\ttiddlywiki_version: $tw.version\n\t});\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddler-html.js": {
            "title": "$:/core/modules/server/routes/get-tiddler-html.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler-html.js\ntype: application/javascript\nmodule-type: route\n\nGET /:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/([^\\/]+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title);\n\tif(tiddler) {\n\t\tvar renderType = tiddler.getFieldString(\"_render_type\"),\n\t\t\trenderTemplate = tiddler.getFieldString(\"_render_template\");\n\t\t// Tiddler fields '_render_type' and '_render_template' overwrite\n\t\t// system wide settings for render type and template\n\t\tif(state.wiki.isSystemTiddler(title)) {\n\t\t\trenderType = renderType || state.server.get(\"system-tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"system-tiddler-render-template\");\n\t\t} else {\n\t\t\trenderType = renderType || state.server.get(\"tiddler-render-type\");\n\t\t\trenderTemplate = renderTemplate || state.server.get(\"tiddler-render-template\");\n\t\t}\n\t\tvar text = state.wiki.renderTiddler(renderType,renderTemplate,{parseAsInline: true, variables: {currentTiddler: title}});\n\t\t// Naughty not to set a content-type, but it's the easiest way to ensure the browser will see HTML pages as HTML, and accept plain text tiddlers as CSS or JS\n\t\tresponse.writeHead(200);\n\t\tresponse.end(text,\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddler.js": {
            "title": "$:/core/modules/server/routes/get-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\t\ttiddler = state.wiki.getTiddler(title),\n\t\ttiddlerFields = {},\n\t\tknownFields = [\n\t\t\t\"bag\", \"created\", \"creator\", \"modified\", \"modifier\", \"permissions\", \"recipe\", \"revision\", \"tags\", \"text\", \"title\", \"type\", \"uri\"\n\t\t];\n\tif(tiddler) {\n\t\t$tw.utils.each(tiddler.fields,function(field,name) {\n\t\t\tvar value = tiddler.getFieldString(name);\n\t\t\tif(knownFields.indexOf(name) !== -1) {\n\t\t\t\ttiddlerFields[name] = value;\n\t\t\t} else {\n\t\t\t\ttiddlerFields.fields = tiddlerFields.fields || {};\n\t\t\t\ttiddlerFields.fields[name] = value;\n\t\t\t}\n\t\t});\n\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\ttiddlerFields.bag = \"default\";\n\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\t\tresponse.end(JSON.stringify(tiddlerFields),\"utf8\");\n\t} else {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t}\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/get-tiddlers-json.js": {
            "title": "$:/core/modules/server/routes/get-tiddlers-json.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/get-tiddlers-json.js\ntype: application/javascript\nmodule-type: route\n\nGET /recipes/default/tiddlers.json?filter=<filter>\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DEFAULT_FILTER = \"[all[tiddlers]!is[system]sort[title]]\";\n\nexports.method = \"GET\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers.json$/;\n\nexports.handler = function(request,response,state) {\n\tvar filter = state.queryParameters.filter || DEFAULT_FILTER;\n\tif(state.wiki.getTiddlerText(\"$:/config/Server/AllowAllExternalFilters\") !== \"yes\") {\n\t\tif(state.wiki.getTiddlerText(\"$:/config/Server/ExternalFilters/\" + filter) !== \"yes\") {\n\t\t\tconsole.log(\"Blocked attempt to GET /recipes/default/tiddlers.json with filter: \" + filter);\n\t\t\tresponse.writeHead(403);\n\t\t\tresponse.end();\n\t\t\treturn;\n\t\t}\n\t}\n\tif(state.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"no\") {\n\t\tfilter += \"+[!is[system]]\";\n\t}\n\tvar excludeFields = (state.queryParameters.exclude || \"text\").split(\",\"),\n\t\ttitles = state.wiki.filterTiddlers(filter);\n\tresponse.writeHead(200, {\"Content-Type\": \"application/json\"});\n\tvar tiddlers = [];\n\t$tw.utils.each(titles,function(title) {\n\t\tvar tiddler = state.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tvar tiddlerFields = tiddler.getFieldStrings({exclude: excludeFields});\n\t\t\ttiddlerFields.revision = state.wiki.getChangeCount(title);\n\t\t\ttiddlerFields.type = tiddlerFields.type || \"text/vnd.tiddlywiki\";\n\t\t\ttiddlers.push(tiddlerFields);\n\t\t}\n\t});\n\tvar text = JSON.stringify(tiddlers);\n\tresponse.end(text,\"utf8\");\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/routes/put-tiddler.js": {
            "title": "$:/core/modules/server/routes/put-tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/server/routes/put-tiddler.js\ntype: application/javascript\nmodule-type: route\n\nPUT /recipes/default/tiddlers/:title\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.method = \"PUT\";\n\nexports.path = /^\\/recipes\\/default\\/tiddlers\\/(.+)$/;\n\nexports.handler = function(request,response,state) {\n\tvar title = decodeURIComponent(state.params[0]),\n\tfields = JSON.parse(state.data);\n\t// Pull up any subfields in the `fields` object\n\tif(fields.fields) {\n\t\t$tw.utils.each(fields.fields,function(field,name) {\n\t\t\tfields[name] = field;\n\t\t});\n\t\tdelete fields.fields;\n\t}\n\t// Remove any revision field\n\tif(fields.revision) {\n\t\tdelete fields.revision;\n\t}\n\tstate.wiki.addTiddler(new $tw.Tiddler(state.wiki.getCreationFields(),fields,{title: title},state.wiki.getModificationFields()));\n\tvar changeCount = state.wiki.getChangeCount(title).toString();\n\tresponse.writeHead(204, \"OK\",{\n\t\tEtag: \"\\\"default/\" + encodeURIComponent(title) + \"/\" + changeCount + \":\\\"\",\n\t\t\"Content-Type\": \"text/plain\"\n\t});\n\tresponse.end();\n};\n\n}());\n",
            "type": "application/javascript",
            "module-type": "route"
        },
        "$:/core/modules/server/server.js": {
            "title": "$:/core/modules/server/server.js",
            "text": "/*\\\ntitle: $:/core/modules/server/server.js\ntype: application/javascript\nmodule-type: library\n\nServe tiddlers over http\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nif($tw.node) {\n\tvar util = require(\"util\"),\n\t\tfs = require(\"fs\"),\n\t\turl = require(\"url\"),\n\t\tpath = require(\"path\"),\n\t\tquerystring = require(\"querystring\");\n}\n\n/*\nA simple HTTP server with regexp-based routes\noptions: variables - optional hashmap of variables to set (a misnomer - they are really constant parameters)\n\t\t routes - optional array of routes to use\n\t\t wiki - reference to wiki object\n*/\nfunction Server(options) {\n\tvar self = this;\n\tthis.routes = options.routes || [];\n\tthis.authenticators = options.authenticators || [];\n\tthis.wiki = options.wiki;\n\tthis.boot = options.boot || $tw.boot;\n\tthis.servername = $tw.utils.transliterateToSafeASCII(this.wiki.getTiddlerText(\"$:/SiteTitle\") || \"TiddlyWiki5\");\n\t// Initialise the variables\n\tthis.variables = $tw.utils.extend({},this.defaultVariables);\n\tif(options.variables) {\n\t\tfor(var variable in options.variables) {\n\t\t\tif(options.variables[variable]) {\n\t\t\t\tthis.variables[variable] = options.variables[variable];\n\t\t\t}\n\t\t}\t\t\n\t}\n\t$tw.utils.extend({},this.defaultVariables,options.variables);\n\t// Initialise CSRF\n\tthis.csrfDisable = this.get(\"csrf-disable\") === \"yes\";\n\t// Initialize Gzip compression\n\tthis.enableGzip = this.get(\"gzip\") === \"yes\";\n\t// Initialise authorization\n\tvar authorizedUserName = (this.get(\"username\") && this.get(\"password\")) ? this.get(\"username\") : \"(anon)\";\n\tthis.authorizationPrincipals = {\n\t\treaders: (this.get(\"readers\") || authorizedUserName).split(\",\").map($tw.utils.trim),\n\t\twriters: (this.get(\"writers\") || authorizedUserName).split(\",\").map($tw.utils.trim)\n\t}\n\t// Load and initialise authenticators\n\t$tw.modules.forEachModuleOfType(\"authenticator\", function(title,authenticatorDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addAuthenticator(authenticatorDefinition.AuthenticatorClass);\n\t});\n\t// Load route handlers\n\t$tw.modules.forEachModuleOfType(\"route\", function(title,routeDefinition) {\n\t\t// console.log(\"Loading server route \" + title);\n\t\tself.addRoute(routeDefinition);\n\t});\n\t// Initialise the http vs https\n\tthis.listenOptions = null;\n\tthis.protocol = \"http\";\n\tvar tlsKeyFilepath = this.get(\"tls-key\"),\n\t\ttlsCertFilepath = this.get(\"tls-cert\");\n\tif(tlsCertFilepath && tlsKeyFilepath) {\n\t\tthis.listenOptions = {\n\t\t\tkey: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsKeyFilepath),\"utf8\"),\n\t\t\tcert: fs.readFileSync(path.resolve(this.boot.wikiPath,tlsCertFilepath),\"utf8\")\n\t\t};\n\t\tthis.protocol = \"https\";\n\t}\n\tthis.transport = require(this.protocol);\n}\n\nServer.prototype.defaultVariables = {\n\tport: \"8080\",\n\thost: \"127.0.0.1\",\n\t\"root-tiddler\": \"$:/core/save/all\",\n\t\"root-render-type\": \"text/plain\",\n\t\"root-serve-type\": \"text/html\",\n\t\"tiddler-render-type\": \"text/html\",\n\t\"tiddler-render-template\": \"$:/core/templates/server/static.tiddler.html\",\n\t\"system-tiddler-render-type\": \"text/plain\",\n\t\"system-tiddler-render-template\": \"$:/core/templates/wikified-tiddler\",\n\t\"debug-level\": \"none\",\n\t\"gzip\": \"no\"\n};\n\nServer.prototype.get = function(name) {\n\treturn this.variables[name];\n};\n\nServer.prototype.addRoute = function(route) {\n\tthis.routes.push(route);\n};\n\nServer.prototype.addAuthenticator = function(AuthenticatorClass) {\n\t// Instantiate and initialise the authenticator\n\tvar authenticator = new AuthenticatorClass(this),\n\t\tresult = authenticator.init();\n\tif(typeof result === \"string\") {\n\t\t$tw.utils.error(\"Error: \" + result);\n\t} else if(result) {\n\t\t// Only use the authenticator if it initialised successfully\n\t\tthis.authenticators.push(authenticator);\n\t}\n};\n\nServer.prototype.findMatchingRoute = function(request,state) {\n\tfor(var t=0; t<this.routes.length; t++) {\n\t\tvar potentialRoute = this.routes[t],\n\t\t\tpathRegExp = potentialRoute.path,\n\t\t\tpathname = state.urlInfo.pathname,\n\t\t\tmatch;\n\t\tif(state.pathPrefix) {\n\t\t\tif(pathname.substr(0,state.pathPrefix.length) === state.pathPrefix) {\n\t\t\t\tpathname = pathname.substr(state.pathPrefix.length) || \"/\";\n\t\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t\t} else {\n\t\t\t\tmatch = false;\n\t\t\t}\n\t\t} else {\n\t\t\tmatch = potentialRoute.path.exec(pathname);\n\t\t}\n\t\tif(match && request.method === potentialRoute.method) {\n\t\t\tstate.params = [];\n\t\t\tfor(var p=1; p<match.length; p++) {\n\t\t\t\tstate.params.push(match[p]);\n\t\t\t}\n\t\t\treturn potentialRoute;\n\t\t}\n\t}\n\treturn null;\n};\n\nServer.prototype.methodMappings = {\n\t\"GET\": \"readers\",\n\t\"OPTIONS\": \"readers\",\n\t\"HEAD\": \"readers\",\n\t\"PUT\": \"writers\",\n\t\"POST\": \"writers\",\n\t\"DELETE\": \"writers\"\n};\n\n/*\nCheck whether a given user is authorized for the specified authorizationType (\"readers\" or \"writers\"). Pass null or undefined as the username to check for anonymous access\n*/\nServer.prototype.isAuthorized = function(authorizationType,username) {\n\tvar principals = this.authorizationPrincipals[authorizationType] || [];\n\treturn principals.indexOf(\"(anon)\") !== -1 || (username && (principals.indexOf(\"(authenticated)\") !== -1 || principals.indexOf(username) !== -1));\n}\n\nServer.prototype.requestHandler = function(request,response,options) {\n\toptions = options || {};\n\t// Compose the state object\n\tvar self = this;\n\tvar state = {};\n\tstate.wiki = options.wiki || self.wiki;\n\tstate.boot = options.boot || self.boot;\n\tstate.server = self;\n\tstate.urlInfo = url.parse(request.url);\n\tstate.queryParameters = querystring.parse(state.urlInfo.query);\n\tstate.pathPrefix = options.pathPrefix || this.get(\"path-prefix\") || \"\";\n\t// Get the principals authorized to access this resource\n\tvar authorizationType = this.methodMappings[request.method] || \"readers\";\n\t// Check for the CSRF header if this is a write\n\tif(!this.csrfDisable && authorizationType === \"writers\" && request.headers[\"x-requested-with\"] !== \"TiddlyWiki\") {\n\t\tresponse.writeHead(403,\"'X-Requested-With' header required to login to '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\t\t\n\t}\n\t// Check whether anonymous access is granted\n\tstate.allowAnon = this.isAuthorized(authorizationType,null);\n\t// Authenticate with the first active authenticator\n\tif(this.authenticators.length > 0) {\n\t\tif(!this.authenticators[0].authenticateRequest(request,response,state)) {\n\t\t\t// Bail if we failed (the authenticator will have sent the response)\n\t\t\treturn;\n\t\t}\t\t\n\t}\n\t// Authorize with the authenticated username\n\tif(!this.isAuthorized(authorizationType,state.authenticatedUsername)) {\n\t\tresponse.writeHead(401,\"'\" + state.authenticatedUsername + \"' is not authorized to access '\" + this.servername + \"'\");\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Find the route that matches this path\n\tvar route = self.findMatchingRoute(request,state);\n\t// Optionally output debug info\n\tif(self.get(\"debug-level\") !== \"none\") {\n\t\tconsole.log(\"Request path:\",JSON.stringify(state.urlInfo));\n\t\tconsole.log(\"Request headers:\",JSON.stringify(request.headers));\n\t\tconsole.log(\"authenticatedUsername:\",state.authenticatedUsername);\n\t}\n\t// Return a 404 if we didn't find a route\n\tif(!route) {\n\t\tresponse.writeHead(404);\n\t\tresponse.end();\n\t\treturn;\n\t}\n\t// Receive the request body if necessary and hand off to the route handler\n\tif(route.bodyFormat === \"stream\" || request.method === \"GET\" || request.method === \"HEAD\") {\n\t\t// Let the route handle the request stream itself\n\t\troute.handler(request,response,state);\n\t} else if(route.bodyFormat === \"string\" || !route.bodyFormat) {\n\t\t// Set the encoding for the incoming request\n\t\trequest.setEncoding(\"utf8\");\n\t\tvar data = \"\";\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata += chunk.toString();\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = data;\n\t\t\troute.handler(request,response,state);\n\t\t});\n\t} else if(route.bodyFormat === \"buffer\") {\n\t\tvar data = [];\n\t\trequest.on(\"data\",function(chunk) {\n\t\t\tdata.push(chunk);\n\t\t});\n\t\trequest.on(\"end\",function() {\n\t\t\tstate.data = Buffer.concat(data);\n\t\t\troute.handler(request,response,state);\n\t\t})\n\t} else {\n\t\tresponse.writeHead(400,\"Invalid bodyFormat \" + route.bodyFormat + \" in route \" + route.method + \" \" + route.path.source);\n\t\tresponse.end();\n\t}\n};\n\n/*\nListen for requests\nport: optional port number (falls back to value of \"port\" variable)\nhost: optional host address (falls back to value of \"host\" variable)\nprefix: optional prefix (falls back to value of \"path-prefix\" variable)\n*/\nServer.prototype.listen = function(port,host,prefix) {\n\tvar self = this;\n\t// Handle defaults for port and host\n\tport = port || this.get(\"port\");\n\thost = host || this.get(\"host\");\n\tprefix = prefix || this.get(\"path-prefix\") || \"\";\n\t// Check for the port being a string and look it up as an environment variable\n\tif(parseInt(port,10).toString() !== port) {\n\t\tport = process.env[port] || 8080;\n\t}\n\t// Warn if required plugins are missing\n\tif(!this.wiki.getTiddler(\"$:/plugins/tiddlywiki/tiddlyweb\") || !this.wiki.getTiddler(\"$:/plugins/tiddlywiki/filesystem\")) {\n\t\t$tw.utils.warning(\"Warning: Plugins required for client-server operation (\\\"tiddlywiki/filesystem\\\" and \\\"tiddlywiki/tiddlyweb\\\") are missing from tiddlywiki.info file\");\n\t}\n\t// Create the server\n\tvar server;\n\tif(this.listenOptions) {\n\t\tserver = this.transport.createServer(this.listenOptions,this.requestHandler.bind(this));\n\t} else {\n\t\tserver = this.transport.createServer(this.requestHandler.bind(this));\n\t}\n\t// Display the port number after we've started listening (the port number might have been specified as zero, in which case we will get an assigned port)\n\tserver.on(\"listening\",function() {\n\t\tvar address = server.address();\n\t\t$tw.utils.log(\"Serving on \" + self.protocol + \"://\" + address.address + \":\" + address.port + prefix,\"brown/orange\");\n\t\t$tw.utils.log(\"(press ctrl-C to exit)\",\"red\");\n\t});\n\t// Listen\n\treturn server.listen(port,host);\n};\n\nexports.Server = Server;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/core/modules/browser-messaging.js": {
            "title": "$:/core/modules/browser-messaging.js",
            "text": "/*\\\ntitle: $:/core/modules/browser-messaging.js\ntype: application/javascript\nmodule-type: startup\n\nBrowser message handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"browser-messaging\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*\nLoad a specified url as an iframe and call the callback when it is loaded. If the url is already loaded then the existing iframe instance is used\n*/\nfunction loadIFrame(url,callback) {\n\t// Check if iframe already exists\n\tvar iframeInfo = $tw.browserMessaging.iframeInfoMap[url];\n\tif(iframeInfo) {\n\t\t// We've already got the iframe\n\t\tcallback(null,iframeInfo);\n\t} else {\n\t\t// Create the iframe and save it in the list\n\t\tvar iframe = document.createElement(\"iframe\");\n\t\tiframeInfo = {\n\t\t\turl: url,\n\t\t\tstatus: \"loading\",\n\t\t\tdomNode: iframe\n\t\t};\n\t\t$tw.browserMessaging.iframeInfoMap[url] = iframeInfo;\n\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t// Add the iframe to the DOM and hide it\n\t\tiframe.style.display = \"none\";\n\t\tiframe.setAttribute(\"library\",\"true\");\n\t\tdocument.body.appendChild(iframe);\n\t\t// Set up onload\n\t\tiframe.onload = function() {\n\t\t\tiframeInfo.status = \"loaded\";\n\t\t\tsaveIFrameInfoTiddler(iframeInfo);\n\t\t\tcallback(null,iframeInfo);\n\t\t};\n\t\tiframe.onerror = function() {\n\t\t\tcallback(\"Cannot load iframe\");\n\t\t};\n\t\ttry {\n\t\t\tiframe.src = url;\n\t\t} catch(ex) {\n\t\t\tcallback(ex);\n\t\t}\n\t}\n}\n\n/*\nUnload library iframe for given url\n*/\nfunction unloadIFrame(url){\n\t$tw.utils.each(document.getElementsByTagName('iframe'), function(iframe) {\n\t\tif(iframe.getAttribute(\"library\") === \"true\" &&\n\t\t  iframe.getAttribute(\"src\") === url) {\n\t\t\tiframe.parentNode.removeChild(iframe);\n\t\t}\n\t});\n}\n\nfunction saveIFrameInfoTiddler(iframeInfo) {\n\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),{\n\t\ttitle: \"$:/temp/ServerConnection/\" + iframeInfo.url,\n\t\ttext: iframeInfo.status,\n\t\ttags: [\"$:/tags/ServerConnection\"],\n\t\turl: iframeInfo.url\n\t},$tw.wiki.getModificationFields()));\n}\n\nexports.startup = function() {\n\t// Initialise the store of iframes we've created\n\t$tw.browserMessaging = {\n\t\tiframeInfoMap: {} // Hashmap by URL of {url:,status:\"loading/loaded\",domNode:}\n\t};\n\t// Listen for widget messages to control loading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\tif(url) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers.json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-info\",\n\t\t\t\t\t\t\tinfoTitlePrefix: paramObject.infoTitlePrefix || \"$:/temp/RemoteAssetInfo/\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for widget messages to control unloading the plugin library\n\t$tw.rootWidget.addEventListener(\"tm-unload-plugin-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url;\n\t\t$tw.browserMessaging.iframeInfoMap[url] = undefined;\n\t\tif(url) {\n\t\t\tunloadIFrame(url);\n\t\t\t$tw.utils.each(\n\t\t\t\t$tw.wiki.filterTiddlers(\"[[$:/temp/ServerConnection/\" + url + \"]] [prefix[$:/temp/RemoteAssetInfo/\" + url + \"/]]\"),\n\t\t\t\tfunction(title) {\n\t\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t);\n\t\t}\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-load-plugin-from-library\",function(event) {\n\t\tvar paramObject = event.paramObject || {},\n\t\t\turl = paramObject.url,\n\t\t\ttitle = paramObject.title;\n\t\tif(url && title) {\n\t\t\tloadIFrame(url,function(err,iframeInfo) {\n\t\t\t\tif(err) {\n\t\t\t\t\talert($tw.language.getString(\"Error/LoadingPluginLibrary\") + \": \" + url);\n\t\t\t\t} else {\n\t\t\t\t\tiframeInfo.domNode.contentWindow.postMessage({\n\t\t\t\t\t\tverb: \"GET\",\n\t\t\t\t\t\turl: \"recipes/library/tiddlers/\" + encodeURIComponent(title) + \".json\",\n\t\t\t\t\t\tcookies: {\n\t\t\t\t\t\t\ttype: \"save-tiddler\",\n\t\t\t\t\t\t\turl: url\n\t\t\t\t\t\t}\n\t\t\t\t\t},\"*\");\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t});\n\t// Listen for window messages from other windows\n\twindow.addEventListener(\"message\",function listener(event){\n\t\t// console.log(\"browser-messaging: \",document.location.toString())\n\t\t// console.log(\"browser-messaging: Received message from\",event.origin);\n\t\t// console.log(\"browser-messaging: Message content\",event.data);\n\t\tswitch(event.data.verb) {\n\t\t\tcase \"GET-RESPONSE\":\n\t\t\t\tif(event.data.status.charAt(0) === \"2\") {\n\t\t\t\t\tif(event.data.cookies) {\n\t\t\t\t\t\tif(event.data.cookies.type === \"save-info\") {\n\t\t\t\t\t\t\tvar tiddlers = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.utils.each(tiddlers,function(tiddler) {\n\t\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler($tw.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\t\t\t\t\ttitle: event.data.cookies.infoTitlePrefix + event.data.cookies.url + \"/\" + tiddler.title,\n\t\t\t\t\t\t\t\t\t\"original-title\": tiddler.title,\n\t\t\t\t\t\t\t\t\ttext: \"\",\n\t\t\t\t\t\t\t\t\ttype: \"text/vnd.tiddlywiki\",\n\t\t\t\t\t\t\t\t\t\"original-type\": tiddler.type,\n\t\t\t\t\t\t\t\t\t\"plugin-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-plugin-type\": tiddler[\"plugin-type\"],\n\t\t\t\t\t\t\t\t\t\"module-type\": undefined,\n\t\t\t\t\t\t\t\t\t\"original-module-type\": tiddler[\"module-type\"],\n\t\t\t\t\t\t\t\t\ttags: [\"$:/tags/RemoteAssetInfo\"],\n\t\t\t\t\t\t\t\t\t\"original-tags\": $tw.utils.stringifyList(tiddler.tags || []),\n\t\t\t\t\t\t\t\t\t\"server-url\": event.data.cookies.url\n\t\t\t\t\t\t\t\t},$tw.wiki.getModificationFields()));\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t} else if(event.data.cookies.type === \"save-tiddler\") {\n\t\t\t\t\t\t\tvar tiddler = JSON.parse(event.data.body);\n\t\t\t\t\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(tiddler));\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tbreak;\n\t\t}\n\t},false);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/commands.js": {
            "title": "$:/core/modules/startup/commands.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/commands.js\ntype: application/javascript\nmodule-type: startup\n\nCommand processing\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"commands\";\nexports.platforms = [\"node\"];\nexports.after = [\"story\"];\nexports.synchronous = false;\n\nexports.startup = function(callback) {\n\t// On the server, start a commander with the command line arguments\n\tvar commander = new $tw.Commander(\n\t\t$tw.boot.argv,\n\t\tfunction(err) {\n\t\t\tif(err) {\n\t\t\t\treturn $tw.utils.error(\"Error: \" + err);\n\t\t\t}\n\t\t\tcallback();\n\t\t},\n\t\t$tw.wiki,\n\t\t{output: process.stdout, error: process.stderr}\n\t);\n\tcommander.execute();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/CSSescape.js": {
            "title": "$:/core/modules/startup/CSSescape.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/CSSescape.js\ntype: application/javascript\nmodule-type: startup\n\nPolyfill for CSS.escape()\n\n\\*/\n(function(root,factory){\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"css-escape\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n/*! https://mths.be/cssescape v1.5.1 by @mathias | MIT license */\n// https://github.com/umdjs/umd/blob/master/returnExports.js\nexports.startup = factory(root);\n}(typeof global != 'undefined' ? global : this, function(root) {\n\n\tif (root.CSS && root.CSS.escape) {\n\t\treturn;\n\t}\n\n\t// https://drafts.csswg.org/cssom/#serialize-an-identifier\n\tvar cssEscape = function(value) {\n\t\tif (arguments.length == 0) {\n\t\t\tthrow new TypeError('`CSS.escape` requires an argument.');\n\t\t}\n\t\tvar string = String(value);\n\t\tvar length = string.length;\n\t\tvar index = -1;\n\t\tvar codeUnit;\n\t\tvar result = '';\n\t\tvar firstCodeUnit = string.charCodeAt(0);\n\t\twhile (++index < length) {\n\t\t\tcodeUnit = string.charCodeAt(index);\n\t\t\t// Note: there’s no need to special-case astral symbols, surrogate\n\t\t\t// pairs, or lone surrogates.\n\n\t\t\t// If the character is NULL (U+0000), then the REPLACEMENT CHARACTER\n\t\t\t// (U+FFFD).\n\t\t\tif (codeUnit == 0x0000) {\n\t\t\t\tresult += '\\uFFFD';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is in the range [\\1-\\1F] (U+0001 to U+001F) or is\n\t\t\t\t// U+007F, […]\n\t\t\t\t(codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F ||\n\t\t\t\t// If the character is the first character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039), […]\n\t\t\t\t(index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) ||\n\t\t\t\t// If the character is the second character and is in the range [0-9]\n\t\t\t\t// (U+0030 to U+0039) and the first character is a `-` (U+002D), […]\n\t\t\t\t(\n\t\t\t\t\tindex == 1 &&\n\t\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 &&\n\t\t\t\t\tfirstCodeUnit == 0x002D\n\t\t\t\t)\n\t\t\t) {\n\t\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character-as-code-point\n\t\t\t\tresult += '\\\\' + codeUnit.toString(16) + ' ';\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\t// If the character is the first character and is a `-` (U+002D), and\n\t\t\t\t// there is no second character, […]\n\t\t\t\tindex == 0 &&\n\t\t\t\tlength == 1 &&\n\t\t\t\tcodeUnit == 0x002D\n\t\t\t) {\n\t\t\t\tresult += '\\\\' + string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If the character is not handled by one of the above rules and is\n\t\t\t// greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or\n\t\t\t// is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to\n\t\t\t// U+005A), or [a-z] (U+0061 to U+007A), […]\n\t\t\tif (\n\t\t\t\tcodeUnit >= 0x0080 ||\n\t\t\t\tcodeUnit == 0x002D ||\n\t\t\t\tcodeUnit == 0x005F ||\n\t\t\t\tcodeUnit >= 0x0030 && codeUnit <= 0x0039 ||\n\t\t\t\tcodeUnit >= 0x0041 && codeUnit <= 0x005A ||\n\t\t\t\tcodeUnit >= 0x0061 && codeUnit <= 0x007A\n\t\t\t) {\n\t\t\t\t// the character itself\n\t\t\t\tresult += string.charAt(index);\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// Otherwise, the escaped character.\n\t\t\t// https://drafts.csswg.org/cssom/#escape-a-character\n\t\t\tresult += '\\\\' + string.charAt(index);\n\n\t\t}\n\t\treturn result;\n\t};\n\n\tif (!root.CSS) {\n\t\troot.CSS = {};\n\t}\n\n\troot.CSS.escape = cssEscape;\n\n}));\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/favicon.js": {
            "title": "$:/core/modules/startup/favicon.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/favicon.js\ntype: application/javascript\nmodule-type: startup\n\nFavicon handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"favicon\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\t\t\n// Favicon tiddler\nvar FAVICON_TITLE = \"$:/favicon.ico\";\n\nexports.startup = function() {\n\t// Set up the favicon\n\tsetFavicon();\n\t// Reset the favicon when the tiddler changes\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,FAVICON_TITLE)) {\n\t\t\tsetFavicon();\n\t\t}\n\t});\n};\n\nfunction setFavicon() {\n\tvar tiddler = $tw.wiki.getTiddler(FAVICON_TITLE);\n\tif(tiddler) {\n\t\tvar faviconLink = document.getElementById(\"faviconLink\");\n\t\tfaviconLink.setAttribute(\"href\",$tw.utils.makeDataUri(tiddler.fields.text,tiddler.fields.type,tiddler.fields._canonical_uri));\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/info.js": {
            "title": "$:/core/modules/startup/info.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/info.js\ntype: application/javascript\nmodule-type: startup\n\nInitialise $:/info tiddlers via $:/temp/info-plugin pseudo-plugin\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"info\";\nexports.before = [\"startup\"];\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_INFO_PLUGIN = \"$:/temp/info-plugin\";\n\nexports.startup = function() {\n\t// Function to bake the info plugin with new tiddlers\n\tvar updateInfoPlugin = function(tiddlerFieldsArray) {\n\t\t// Get the existing tiddlers\n\t\tvar json = $tw.wiki.getTiddlerData(TITLE_INFO_PLUGIN,{tiddlers: {}});\n\t\t// Add the new ones\n\t\t$tw.utils.each(tiddlerFieldsArray,function(fields) {\n\t\t\tif(fields && fields.title) {\n\t\t\t\tjson.tiddlers[fields.title] = fields;\n\t\t\t}\n\t\t});\n\t\t// Bake the info tiddlers into a plugin. We use the non-standard plugin-type \"info\" because ordinary plugins are only registered asynchronously after being loaded dynamically\n\t\tvar fields = {\n\t\t\ttitle: TITLE_INFO_PLUGIN,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"info\",\n\t\t\ttext: JSON.stringify(json,null,$tw.config.preferences.jsonSpaces)\n\t\t};\n\t\t$tw.wiki.addTiddler(new $tw.Tiddler(fields));\n\n\t};\n\t// Collect up the info tiddlers\n\tvar tiddlerFieldsArray = [];\n\t// Give each info module a chance to provide as many info tiddlers as they want as an array, and give them a callback for dynamically updating them\n\t$tw.modules.forEachModuleOfType(\"info\",function(title,moduleExports) {\n\t\tif(moduleExports && moduleExports.getInfoTiddlerFields) {\n\t\t\tArray.prototype.push.apply(tiddlerFieldsArray,moduleExports.getInfoTiddlerFields(updateInfoPlugin));\n\t\t}\n\t});\n\tupdateInfoPlugin(tiddlerFieldsArray);\n\tvar changes = $tw.wiki.readPluginInfo([TITLE_INFO_PLUGIN]);\n\t$tw.wiki.registerPluginTiddlers(\"info\",[TITLE_INFO_PLUGIN]);\n\t$tw.wiki.unpackPluginTiddlers();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/load-modules.js": {
            "title": "$:/core/modules/startup/load-modules.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/load-modules.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"load-modules\";\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Load modules\n\t$tw.modules.applyMethods(\"utils\",$tw.utils);\n\tif($tw.node) {\n\t\t$tw.modules.applyMethods(\"utils-node\",$tw.utils);\n\t}\n\t$tw.modules.applyMethods(\"global\",$tw);\n\t$tw.modules.applyMethods(\"config\",$tw.config);\n\t$tw.Tiddler.fieldModules = $tw.modules.getModulesByTypeAsHashmap(\"tiddlerfield\");\n\t$tw.modules.applyMethods(\"tiddlermethod\",$tw.Tiddler.prototype);\n\t$tw.modules.applyMethods(\"wikimethod\",$tw.Wiki.prototype);\n\t$tw.wiki.addIndexersToWiki();\n\t$tw.modules.applyMethods(\"tiddlerdeserializer\",$tw.Wiki.tiddlerDeserializerModules);\n\t$tw.macros = $tw.modules.getModulesByTypeAsHashmap(\"macro\");\n\t$tw.wiki.initParsers();\n\t$tw.Commander.initCommands();\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/password.js": {
            "title": "$:/core/modules/startup/password.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/password.js\ntype: application/javascript\nmodule-type: startup\n\nPassword handling\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"password\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t$tw.rootWidget.addEventListener(\"tm-set-password\",function(event) {\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: $tw.language.getString(\"Encryption/PromptSetPassword\"),\n\t\t\tnoUserName: true,\n\t\t\tsubmitText: $tw.language.getString(\"Encryption/SetPassword\"),\n\t\t\tcanCancel: true,\n\t\t\trepeatPassword: true,\n\t\t\tcallback: function(data) {\n\t\t\t\tif(data) {\n\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t}\n\t\t\t\treturn true; // Get rid of the password prompt\n\t\t\t}\n\t\t});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-clear-password\",function(event) {\n\t\tif($tw.browser) {\n\t\t\tif(!confirm($tw.language.getString(\"Encryption/ConfirmClearPassword\"))) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t\t$tw.crypto.setPassword(null);\n\t});\n\t// Ensure that $:/isEncrypted is maintained properly\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.utils.hop(changes,\"$:/isEncrypted\")) {\n\t\t\t$tw.crypto.updateCryptoStateTiddler();\n\t\t}\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/plugins.js": {
            "title": "$:/core/modules/startup/plugins.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/plugins.js\ntype: application/javascript\nmodule-type: startup\n\nStartup logic concerned with managing plugins\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"plugins\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\nvar TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE = \"$:/status/RequireReloadDueToPluginChange\";\n\nvar PREFIX_CONFIG_REGISTER_PLUGIN_TYPE = \"$:/config/RegisterPluginType/\";\n\nexports.startup = function() {\n\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"no\"});\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Work out which of the changed tiddlers are plugins that we need to reregister\n\t\tvar changesToProcess = [],\n\t\t\trequireReloadDueToPluginChange = false;\n\t\t$tw.utils.each(Object.keys(changes),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\t\trequiresReload = $tw.wiki.doesPluginRequireReload(title);\n\t\t\tif(requiresReload) {\n\t\t\t\trequireReloadDueToPluginChange = true;\n\t\t\t} else if(tiddler) {\n\t\t\t\tvar pluginType = tiddler.fields[\"plugin-type\"];\n\t\t\t\tif($tw.wiki.getTiddlerText(PREFIX_CONFIG_REGISTER_PLUGIN_TYPE + (tiddler.fields[\"plugin-type\"] || \"\"),\"no\") === \"yes\") {\n\t\t\t\t\tchangesToProcess.push(title);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\t// Issue warning if any of the tiddlers require a reload\n\t\tif(requireReloadDueToPluginChange) {\n\t\t\t$tw.wiki.addTiddler({title: TITLE_REQUIRE_RELOAD_DUE_TO_PLUGIN_CHANGE,text: \"yes\"});\n\t\t}\n\t\t// Read or delete the plugin info of the changed tiddlers\n\t\tif(changesToProcess.length > 0) {\n\t\t\tvar changes = $tw.wiki.readPluginInfo(changesToProcess);\n\t\t\tif(changes.modifiedPlugins.length > 0 || changes.deletedPlugins.length > 0) {\n\t\t\t\tvar changedShadowTiddlers = {};\n\t\t\t\t// Collect the shadow tiddlers of any deleted plugins\n\t\t\t\t$tw.utils.each(changes.deletedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = true;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// Collect the shadow tiddlers of any modified plugins\n\t\t\t\t$tw.utils.each(changes.modifiedPlugins,function(pluginTitle) {\n\t\t\t\t\tvar pluginInfo = $tw.wiki.getPluginInfo(pluginTitle);\n\t\t\t\t\tif(pluginInfo) {\n\t\t\t\t\t\t$tw.utils.each(Object.keys(pluginInfo.tiddlers),function(title) {\n\t\t\t\t\t\t\tchangedShadowTiddlers[title] = false;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\t// (Re-)register any modified plugins\n\t\t\t\t$tw.wiki.registerPluginTiddlers(null,changes.modifiedPlugins);\n\t\t\t\t// Unregister any deleted plugins\n\t\t\t\t$tw.wiki.unregisterPluginTiddlers(null,changes.deletedPlugins);\n\t\t\t\t// Unpack the shadow tiddlers\n\t\t\t\t$tw.wiki.unpackPluginTiddlers();\n\t\t\t\t// Queue change events for the changed shadow tiddlers\n\t\t\t\t$tw.utils.each(Object.keys(changedShadowTiddlers),function(title) {\n\t\t\t\t\t$tw.wiki.enqueueTiddlerEvent(title,changedShadowTiddlers[title]);\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/render.js": {
            "title": "$:/core/modules/startup/render.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/render.js\ntype: application/javascript\nmodule-type: startup\n\nTitle, stylesheet and page rendering\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"render\";\nexports.platforms = [\"browser\"];\nexports.after = [\"story\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar PAGE_TITLE_TITLE = \"$:/core/wiki/title\";\nvar PAGE_STYLESHEET_TITLE = \"$:/core/ui/PageStylesheet\";\nvar PAGE_TEMPLATE_TITLE = \"$:/core/ui/RootTemplate\";\n\n// Time (in ms) that we defer refreshing changes to draft tiddlers\nvar DRAFT_TIDDLER_TIMEOUT_TITLE = \"$:/config/Drafts/TypingTimeout\";\nvar THROTTLE_REFRESH_TIMEOUT = 400;\n\nexports.startup = function() {\n\t// Set up the title\n\t$tw.titleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TITLE_TITLE,{document: $tw.fakeDocument, parseAsInline: true});\n\t$tw.titleContainer = $tw.fakeDocument.createElement(\"div\");\n\t$tw.titleWidgetNode.render($tw.titleContainer,null);\n\tdocument.title = $tw.titleContainer.textContent;\n\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\tif($tw.titleWidgetNode.refresh(changes,$tw.titleContainer,null)) {\n\t\t\tdocument.title = $tw.titleContainer.textContent;\n\t\t}\n\t});\n\t// Set up the styles\n\t$tw.styleWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_STYLESHEET_TITLE,{document: $tw.fakeDocument});\n\t$tw.styleContainer = $tw.fakeDocument.createElement(\"style\");\n\t$tw.styleWidgetNode.render($tw.styleContainer,null);\n\t$tw.styleElement = document.createElement(\"style\");\n\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\tdocument.head.insertBefore($tw.styleElement,document.head.firstChild);\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"styleRefresh\",function(changes) {\n\t\tif($tw.styleWidgetNode.refresh(changes,$tw.styleContainer,null)) {\n\t\t\t$tw.styleElement.innerHTML = $tw.styleContainer.textContent;\n\t\t}\n\t}));\n\t// Display the $:/core/ui/PageTemplate tiddler to kick off the display\n\t$tw.perf.report(\"mainRender\",function() {\n\t\t$tw.pageWidgetNode = $tw.wiki.makeTranscludeWidget(PAGE_TEMPLATE_TITLE,{document: document, parentWidget: $tw.rootWidget, recursionMarker: \"no\"});\n\t\t$tw.pageContainer = document.createElement(\"div\");\n\t\t$tw.utils.addClass($tw.pageContainer,\"tc-page-container-wrapper\");\n\t\tdocument.body.insertBefore($tw.pageContainer,document.body.firstChild);\n\t\t$tw.pageWidgetNode.render($tw.pageContainer,null);\n   \t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t})();\n\t// Remove any splash screen elements\n\tvar removeList = document.querySelectorAll(\".tc-remove-when-wiki-loaded\");\n\t$tw.utils.each(removeList,function(removeItem) {\n\t\tif(removeItem.parentNode) {\n\t\t\tremoveItem.parentNode.removeChild(removeItem);\n\t\t}\n\t});\n\t// Prepare refresh mechanism\n\tvar deferredChanges = Object.create(null),\n\t\ttimerId;\n\tfunction refresh() {\n\t\t// Process the refresh\n\t\t$tw.hooks.invokeHook(\"th-page-refreshing\");\n\t\t$tw.pageWidgetNode.refresh(deferredChanges);\n\t\tdeferredChanges = Object.create(null);\n\t\t$tw.hooks.invokeHook(\"th-page-refreshed\");\n\t}\n\t// Add the change event handler\n\t$tw.wiki.addEventListener(\"change\",$tw.perf.report(\"mainRefresh\",function(changes) {\n\t\t// Check if only tiddlers that are throttled have changed\n\t\tvar onlyThrottledTiddlersHaveChanged = true;\n\t\tfor(var title in changes) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(!tiddler || !(tiddler.hasField(\"draft.of\") || tiddler.hasField(\"throttle.refresh\"))) {\n\t\t\t\tonlyThrottledTiddlersHaveChanged = false;\n\t\t\t}\n\t\t}\n\t\t// Defer the change if only drafts have changed\n\t\tif(timerId) {\n\t\t\tclearTimeout(timerId);\n\t\t}\n\t\ttimerId = null;\n\t\tif(onlyThrottledTiddlersHaveChanged) {\n\t\t\tvar timeout = parseInt($tw.wiki.getTiddlerText(DRAFT_TIDDLER_TIMEOUT_TITLE,\"\"),10);\n\t\t\tif(isNaN(timeout)) {\n\t\t\t\ttimeout = THROTTLE_REFRESH_TIMEOUT;\n\t\t\t}\n\t\t\ttimerId = setTimeout(refresh,timeout);\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t} else {\n\t\t\t$tw.utils.extend(deferredChanges,changes);\n\t\t\trefresh();\n\t\t}\n\t}));\n\t// Fix up the link between the root widget and the page container\n\t$tw.rootWidget.domNodes = [$tw.pageContainer];\n\t$tw.rootWidget.children = [$tw.pageWidgetNode];\n\t// Run any post-render startup actions\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/PostRender\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/rootwidget.js": {
            "title": "$:/core/modules/startup/rootwidget.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/rootwidget.js\ntype: application/javascript\nmodule-type: startup\n\nSetup the root widget and the core root widget handlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"rootwidget\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.before = [\"story\"];\nexports.synchronous = true;\n\nexports.startup = function() {\n\t// Install the modal message mechanism\n\t$tw.modal = new $tw.utils.Modal($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-modal\",function(event) {\n\t\t$tw.modal.display(event.param,{variables: event.paramObject, event: event});\n\t});\n\t$tw.rootWidget.addEventListener(\"tm-show-switcher\",function(event) {\n\t\t$tw.modal.display(\"$:/core/ui/SwitcherModal\",{variables: event.paramObject, event: event});\n\t});\t\n\t// Install the notification  mechanism\n\t$tw.notifier = new $tw.utils.Notifier($tw.wiki);\n\t$tw.rootWidget.addEventListener(\"tm-notify\",function(event) {\n\t\t$tw.notifier.display(event.param,{variables: event.paramObject});\n\t});\n\t// Install the copy-to-clipboard  mechanism\n\t$tw.rootWidget.addEventListener(\"tm-copy-to-clipboard\",function(event) {\n\t\t$tw.utils.copyToClipboard(event.param);\n\t});\n\t// Install the tm-focus-selector message\n\t$tw.rootWidget.addEventListener(\"tm-focus-selector\",function(event) {\n\t\tvar selector = event.param || \"\",\n\t\t\telement;\n\t\ttry {\n\t\t\telement = document.querySelector(selector);\n\t\t} catch(e) {\n\t\t\tconsole.log(\"Error in selector: \",selector)\n\t\t}\n\t\tif(element && element.focus) {\n\t\t\telement.focus(event.paramObject);\n\t\t}\n\t});\n\t// Install the scroller\n\t$tw.pageScroller = new $tw.utils.PageScroller();\n\t$tw.rootWidget.addEventListener(\"tm-scroll\",function(event) {\n\t\t$tw.pageScroller.handleEvent(event);\n\t});\n\tvar fullscreen = $tw.utils.getFullScreenApis();\n\tif(fullscreen) {\n\t\t$tw.rootWidget.addEventListener(\"tm-full-screen\",function(event) {\n\t\t\tvar fullScreenDocument = event.event ? event.event.target.ownerDocument : document;\n\t\t\tif(event.param === \"enter\") {\n\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t} else if(event.param === \"exit\") {\n\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t} else {\n\t\t\t\tif(fullScreenDocument[fullscreen._fullscreenElement]) {\n\t\t\t\t\tfullScreenDocument[fullscreen._exitFullscreen]();\n\t\t\t\t} else {\n\t\t\t\t\tfullScreenDocument.documentElement[fullscreen._requestFullscreen](Element.ALLOW_KEYBOARD_INPUT);\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t}\n\t// If we're being viewed on a data: URI then give instructions for how to save\n\tif(document.location.protocol === \"data:\") {\n\t\t$tw.rootWidget.dispatchEvent({\n\t\t\ttype: \"tm-modal\",\n\t\t\tparam: \"$:/language/Modals/SaveInstructions\"\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup.js": {
            "title": "$:/core/modules/startup.js",
            "text": "/*\\\ntitle: $:/core/modules/startup.js\ntype: application/javascript\nmodule-type: startup\n\nMiscellaneous startup logic for both the client and server.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"startup\";\nexports.after = [\"load-modules\"];\nexports.synchronous = true;\n\n// Set to `true` to enable performance instrumentation\nvar PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE = \"$:/config/Performance/Instrumentation\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nexports.startup = function() {\n\tvar modules,n,m,f;\n\t// Minimal browser detection\n\tif($tw.browser) {\n\t\t$tw.browser.isIE = (/msie|trident/i.test(navigator.userAgent));\n\t\t$tw.browser.isFirefox = !!document.mozFullScreenEnabled;\n\t}\n\t// Platform detection\n\t$tw.platform = {};\n\tif($tw.browser) {\n\t\t$tw.platform.isMac = /Mac/.test(navigator.platform);\n\t\t$tw.platform.isWindows = /win/i.test(navigator.platform);\n\t\t$tw.platform.isLinux = /Linux/i.test(navigator.platform);\n\t} else {\n\t\tswitch(require(\"os\").platform()) {\n\t\t\tcase \"darwin\":\n\t\t\t\t$tw.platform.isMac = true;\n\t\t\t\tbreak;\n\t\t\tcase \"win32\":\n\t\t\t\t$tw.platform.isWindows = true;\n\t\t\t\tbreak;\n\t\t\tcase \"freebsd\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t\tcase \"linux\":\n\t\t\t\t$tw.platform.isLinux = true;\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t// Initialise version\n\t$tw.version = $tw.utils.extractVersionInfo();\n\t// Set up the performance framework\n\t$tw.perf = new $tw.Performance($tw.wiki.getTiddlerText(PERFORMANCE_INSTRUMENTATION_CONFIG_TITLE,\"no\") === \"yes\");\n\t// Create a root widget for attaching event handlers. By using it as the parentWidget for another widget tree, one can reuse the event handlers\n\t$tw.rootWidget = new widget.widget({\n\t\ttype: \"widget\",\n\t\tchildren: []\n\t},{\n\t\twiki: $tw.wiki,\n\t\tdocument: $tw.browser ? document : $tw.fakeDocument\n\t});\n\t// Execute any startup actions\n\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction\");\n\tif($tw.browser) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Browser\");\t\t\n\t}\n\tif($tw.node) {\n\t\t$tw.rootWidget.invokeActionsByTag(\"$:/tags/StartupAction/Node\");\t\t\n\t}\n\t// Kick off the language manager and switcher\n\t$tw.language = new $tw.Language();\n\t$tw.languageSwitcher = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"language\",\n\t\tcontrollerTitle: \"$:/language\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/languages/en-GB\"\n\t\t],\n\t\tonSwitch: function(plugins) {\n\t\t\tif($tw.browser) {\n\t\t\t\tvar pluginTiddler = $tw.wiki.getTiddler(plugins[0]);\n\t\t\t\tif(pluginTiddler) {\n\t\t\t\t\tdocument.documentElement.setAttribute(\"dir\",pluginTiddler.getFieldString(\"text-direction\") || \"auto\");\n\t\t\t\t} else {\n\t\t\t\t\tdocument.documentElement.removeAttribute(\"dir\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\t// Kick off the theme manager\n\t$tw.themeManager = new $tw.PluginSwitcher({\n\t\twiki: $tw.wiki,\n\t\tpluginType: \"theme\",\n\t\tcontrollerTitle: \"$:/theme\",\n\t\tdefaultPlugins: [\n\t\t\t\"$:/themes/tiddlywiki/snowwhite\",\n\t\t\t\"$:/themes/tiddlywiki/vanilla\"\n\t\t]\n\t});\n\t// Kick off the keyboard manager\n\t$tw.keyboardManager = new $tw.KeyboardManager();\n\t// Listen for shortcuts\n\tif($tw.browser) {\n\t\t$tw.utils.addEventListeners(document,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t}\n\t// Clear outstanding tiddler store change events to avoid an unnecessary refresh cycle at startup\n\t$tw.wiki.clearTiddlerEventQueue();\n\t// Find a working syncadaptor\n\t$tw.syncadaptor = undefined;\n\t$tw.modules.forEachModuleOfType(\"syncadaptor\",function(title,module) {\n\t\tif(!$tw.syncadaptor && module.adaptorClass) {\n\t\t\t$tw.syncadaptor = new module.adaptorClass({wiki: $tw.wiki});\n\t\t}\n\t});\n\t// Set up the syncer object if we've got a syncadaptor\n\tif($tw.syncadaptor) {\n\t\t$tw.syncer = new $tw.Syncer({wiki: $tw.wiki, syncadaptor: $tw.syncadaptor});\n\t}\n\t// Setup the saver handler\n\t$tw.saverHandler = new $tw.SaverHandler({\n\t\twiki: $tw.wiki,\n\t\tdirtyTracking: !$tw.syncadaptor,\n\t\tpreloadDirty: $tw.boot.preloadDirty || []\n\t});\n\t// Host-specific startup\n\tif($tw.browser) {\n\t\t// Install the popup manager\n\t\t$tw.popup = new $tw.utils.Popup();\n\t\t// Install the animator\n\t\t$tw.anim = new $tw.utils.Animator();\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/story.js": {
            "title": "$:/core/modules/startup/story.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/story.js\ntype: application/javascript\nmodule-type: startup\n\nLoad core modules\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"story\";\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Default story and history lists\nvar DEFAULT_STORY_TITLE = \"$:/StoryList\";\nvar DEFAULT_HISTORY_TITLE = \"$:/HistoryList\";\n\n// Default tiddlers\nvar DEFAULT_TIDDLERS_TITLE = \"$:/DefaultTiddlers\";\n\n// Config\nvar CONFIG_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/UpdateAddressBar\"; // Can be \"no\", \"permalink\", \"permaview\"\nvar CONFIG_UPDATE_HISTORY = \"$:/config/Navigation/UpdateHistory\"; // Can be \"yes\" or \"no\"\nvar CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD = \"$:/config/Navigation/Permalinkview/CopyToClipboard\"; // Can be \"yes\" (default) or \"no\"\nvar CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR = \"$:/config/Navigation/Permalinkview/UpdateAddressBar\"; // Can be \"yes\" (default) or \"no\"\n\n\n// Links to help, if there is no param\nvar HELP_OPEN_EXTERNAL_WINDOW = \"http://tiddlywiki.com/#WidgetMessage%3A%20tm-open-external-window\";\n\nexports.startup = function() {\n\t// Open startup tiddlers\n\topenStartupTiddlers({\n\t\tdisableHistory: $tw.boot.disableStartupNavigation\n\t});\n\tif($tw.browser) {\n\t\t// Set up location hash update\n\t\t$tw.wiki.addEventListener(\"change\",function(changes) {\n\t\t\tif($tw.utils.hop(changes,DEFAULT_STORY_TITLE) || $tw.utils.hop(changes,DEFAULT_HISTORY_TITLE)) {\n\t\t\t\tupdateLocationHash({\n\t\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_UPDATE_ADDRESS_BAR,\"permaview\").trim(),\n\t\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim()\n\t\t\t\t});\n\t\t\t}\n\t\t});\n\t\t// Listen for changes to the browser location hash\n\t\twindow.addEventListener(\"hashchange\",function() {\n\t\t\tvar hash = $tw.utils.getLocationHash();\n\t\t\tif(hash !== $tw.locationHash) {\n\t\t\t\t$tw.locationHash = hash;\n\t\t\t\topenStartupTiddlers({defaultToCurrentStory: true});\n\t\t\t}\n\t\t},false);\n\t\t// Listen for the tm-browser-refresh message\n\t\t$tw.rootWidget.addEventListener(\"tm-browser-refresh\",function(event) {\n\t\t\twindow.location.reload(true);\n\t\t});\n\t\t// Listen for tm-open-external-window message\n\t\t$tw.rootWidget.addEventListener(\"tm-open-external-window\",function(event) {\n\t\t\tvar paramObject = event.paramObject || {},\n\t\t\t\tstrUrl = event.param || HELP_OPEN_EXTERNAL_WINDOW,\n\t\t\t\tstrWindowName = paramObject.windowName,\n\t\t\t\tstrWindowFeatures = paramObject.windowFeatures;\n\t\t\twindow.open(strUrl, strWindowName, strWindowFeatures);\n\t\t});\n\t\t// Listen for the tm-print message\n\t\t$tw.rootWidget.addEventListener(\"tm-print\",function(event) {\n\t\t\t(event.event.view || window).print();\n\t\t});\n\t\t// Listen for the tm-home message\n\t\t$tw.rootWidget.addEventListener(\"tm-home\",function(event) {\n\t\t\twindow.location.hash = \"\";\n\t\t\tvar storyFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE),\n\t\t\t\tstoryList = $tw.wiki.filterTiddlers(storyFilter);\n\t\t\t//invoke any hooks that might change the default story list\n\t\t\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t\t\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t\t\tif(storyList[0]) {\n\t\t\t\t$tw.wiki.addToHistory(storyList[0]);\n\t\t\t}\n\t\t});\n\t\t// Listen for the tm-permalink message\n\t\t$tw.rootWidget.addEventListener(\"tm-permalink\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permalink\" : \"none\"\n\t\t\t});\n\t\t});\n\t\t// Listen for the tm-permaview message\n\t\t$tw.rootWidget.addEventListener(\"tm-permaview\",function(event) {\n\t\t\tupdateLocationHash({\n\t\t\t\tupdateAddressBar: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_UPDATE_ADDRESS_BAR,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\",\n\t\t\t\tupdateHistory: $tw.wiki.getTiddlerText(CONFIG_UPDATE_HISTORY,\"no\").trim(),\n\t\t\t\ttargetTiddler: event.param || event.tiddlerTitle,\n\t\t\t\tcopyToClipboard: $tw.wiki.getTiddlerText(CONFIG_PERMALINKVIEW_COPY_TO_CLIPBOARD,\"yes\").trim() === \"yes\" ? \"permaview\" : \"none\"\n\t\t\t});\t\t\t\t\n\t\t});\n\t}\n};\n\n/*\nProcess the location hash to open the specified tiddlers. Options:\ndisableHistory: if true $:/History is NOT updated\ndefaultToCurrentStory: If true, the current story is retained as the default, instead of opening the default tiddlers\n*/\nfunction openStartupTiddlers(options) {\n\toptions = options || {};\n\t// Work out the target tiddler and the story filter. \"null\" means \"unspecified\"\n\tvar target = null,\n\t\tstoryFilter = null;\n\tif($tw.locationHash.length > 1) {\n\t\tvar hash = $tw.locationHash.substr(1),\n\t\t\tsplit = hash.indexOf(\":\");\n\t\tif(split === -1) {\n\t\t\ttarget = decodeURIComponent(hash.trim());\n\t\t} else {\n\t\t\ttarget = decodeURIComponent(hash.substr(0,split).trim());\n\t\t\tstoryFilter = decodeURIComponent(hash.substr(split + 1).trim());\n\t\t}\n\t}\n\t// If the story wasn't specified use the current tiddlers or a blank story\n\tif(storyFilter === null) {\n\t\tif(options.defaultToCurrentStory) {\n\t\t\tvar currStoryList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE);\n\t\t\tstoryFilter = $tw.utils.stringifyList(currStoryList);\n\t\t} else {\n\t\t\tif(target && target !== \"\") {\n\t\t\t\tstoryFilter = \"\";\n\t\t\t} else {\n\t\t\t\tstoryFilter = $tw.wiki.getTiddlerText(DEFAULT_TIDDLERS_TITLE);\n\t\t\t}\n\t\t}\n\t}\n\t// Process the story filter to get the story list\n\tvar storyList = $tw.wiki.filterTiddlers(storyFilter);\n\t// Invoke any hooks that want to change the default story list\n\tstoryList = $tw.hooks.invokeHook(\"th-opening-default-tiddlers-list\",storyList);\n\t// If the target tiddler isn't included then splice it in at the top\n\tif(target && storyList.indexOf(target) === -1) {\n\t\tstoryList.unshift(target);\n\t}\n\t// Save the story list\n\t$tw.wiki.addTiddler({title: DEFAULT_STORY_TITLE, text: \"\", list: storyList},$tw.wiki.getModificationFields());\n\t// Update history\n\tvar story = new $tw.Story({\n\t\twiki: $tw.wiki,\n\t\tstoryTitle: DEFAULT_STORY_TITLE,\n\t\thistoryTitle: DEFAULT_HISTORY_TITLE\n\t});\n\tif(!options.disableHistory) {\n\t\t// If a target tiddler was specified add it to the history stack\n\t\tif(target && target !== \"\") {\n\t\t\t// The target tiddler doesn't need double square brackets, but we'll silently remove them if they're present\n\t\t\tif(target.indexOf(\"[[\") === 0 && target.substr(-2) === \"]]\") {\n\t\t\t\ttarget = target.substr(2,target.length - 4);\n\t\t\t}\n\t\t\tstory.addToHistory(target);\n\t\t} else if(storyList.length > 0) {\n\t\t\tstory.addToHistory(storyList[0]);\n\t\t}\t\t\n\t}\n}\n\n/*\noptions: See below\noptions.updateAddressBar: \"permalink\", \"permaview\" or \"no\" (defaults to \"permaview\")\noptions.updateHistory: \"yes\" or \"no\" (defaults to \"no\")\noptions.copyToClipboard: \"permalink\", \"permaview\" or \"no\" (defaults to \"no\")\noptions.targetTiddler: optional title of target tiddler for permalink\n*/\nfunction updateLocationHash(options) {\n\t// Get the story and the history stack\n\tvar storyList = $tw.wiki.getTiddlerList(DEFAULT_STORY_TITLE),\n\t\thistoryList = $tw.wiki.getTiddlerData(DEFAULT_HISTORY_TITLE,[]),\n\t\ttargetTiddler = \"\";\n\tif(options.targetTiddler) {\n\t\ttargetTiddler = options.targetTiddler;\n\t} else {\n\t\t// The target tiddler is the one at the top of the stack\n\t\tif(historyList.length > 0) {\n\t\t\ttargetTiddler = historyList[historyList.length-1].title;\n\t\t}\n\t\t// Blank the target tiddler if it isn't present in the story\n\t\tif(storyList.indexOf(targetTiddler) === -1) {\n\t\t\ttargetTiddler = \"\";\n\t\t}\n\t}\n\t// Assemble the location hash\n\tswitch(options.updateAddressBar) {\n\t\tcase \"permalink\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler);\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.locationHash = \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList));\n\t\t\tbreak;\n\t}\n\t// Copy URL to the clipboard\n\tswitch(options.copyToClipboard) {\n\t\tcase \"permalink\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler));\n\t\t\tbreak;\n\t\tcase \"permaview\":\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getLocationPath() + \"#\" + encodeURIComponent(targetTiddler) + \":\" + encodeURIComponent($tw.utils.stringifyList(storyList)));\n\t\t\tbreak;\n\t}\n\t// Only change the location hash if we must, thus avoiding unnecessary onhashchange events\n\tif($tw.utils.getLocationHash() !== $tw.locationHash) {\n\t\tif(options.updateHistory === \"yes\") {\n\t\t\t// Assign the location hash so that history is updated\n\t\t\twindow.location.hash = $tw.locationHash;\n\t\t} else {\n\t\t\t// We use replace so that browser history isn't affected\n\t\t\twindow.location.replace(window.location.toString().split(\"#\")[0] + $tw.locationHash);\n\t\t}\n\t}\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/startup/windows.js": {
            "title": "$:/core/modules/startup/windows.js",
            "text": "/*\\\ntitle: $:/core/modules/startup/windows.js\ntype: application/javascript\nmodule-type: startup\n\nSetup root widget handlers for the messages concerned with opening external browser windows\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Export name and synchronous status\nexports.name = \"windows\";\nexports.platforms = [\"browser\"];\nexports.after = [\"startup\"];\nexports.synchronous = true;\n\n// Global to keep track of open windows (hashmap by title)\n$tw.windows = {};\n\nexports.startup = function() {\n\t// Handle open window message\n\t$tw.rootWidget.addEventListener(\"tm-open-window\",function(event) {\n\t\t// Get the parameters\n\t\tvar refreshHandler,\n\t\t\ttitle = event.param || event.tiddlerTitle,\n\t\t\tparamObject = event.paramObject || {},\n\t\t\twindowTitle = paramObject.windowTitle || title,\n\t\t\ttemplate = paramObject.template || \"$:/core/templates/single.tiddler.window\",\n\t\t\twidth = paramObject.width || \"700\",\n\t\t\theight = paramObject.height || \"600\",\n\t\t\tvariables = $tw.utils.extend({},paramObject,{currentTiddler: title});\n\t\t// Open the window\n\t\tvar srcWindow,\n\t\t    srcDocument;\n\t\t// In case that popup blockers deny opening a new window\n\t\ttry {\n\t\t\tsrcWindow = window.open(\"\",\"external-\" + title,\"scrollbars,width=\" + width + \",height=\" + height),\n\t\t\tsrcDocument = srcWindow.document;\n\t\t}\n\t\tcatch(e) {\n\t\t\treturn;\n\t\t}\n\t\t$tw.windows[title] = srcWindow;\n\t\t// Check for reopening the same window\n\t\tif(srcWindow.haveInitialisedWindow) {\n\t\t\treturn;\n\t\t}\n\t\t// Initialise the document\n\t\tsrcDocument.write(\"<html><head></head><body class='tc-body tc-single-tiddler-window'></body></html>\");\n\t\tsrcDocument.close();\n\t\tsrcDocument.title = windowTitle;\n\t\tsrcWindow.addEventListener(\"beforeunload\",function(event) {\n\t\t\tdelete $tw.windows[title];\n\t\t\t$tw.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t},false);\n\t\t// Set up the styles\n\t\tvar styleWidgetNode = $tw.wiki.makeTranscludeWidget(\"$:/core/ui/PageStylesheet\",{\n\t\t\t\tdocument: $tw.fakeDocument,\n\t\t\t\tvariables: variables,\n\t\t\t\timportPageMacros: true}),\n\t\t\tstyleContainer = $tw.fakeDocument.createElement(\"style\");\n\t\tstyleWidgetNode.render(styleContainer,null);\n\t\tvar styleElement = srcDocument.createElement(\"style\");\n\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\tsrcDocument.head.insertBefore(styleElement,srcDocument.head.firstChild);\n\t\t// Render the text of the tiddler\n\t\tvar parser = $tw.wiki.parseTiddler(template),\n\t\t\twidgetNode = $tw.wiki.makeWidget(parser,{document: srcDocument, parentWidget: $tw.rootWidget, variables: variables});\n\t\twidgetNode.render(srcDocument.body,srcDocument.body.firstChild);\n\t\t// Function to handle refreshes\n\t\trefreshHandler = function(changes) {\n\t\t\tif(styleWidgetNode.refresh(changes,styleContainer,null)) {\n\t\t\t\tstyleElement.innerHTML = styleContainer.textContent;\n\t\t\t}\n\t\t\twidgetNode.refresh(changes);\n\t\t};\n\t\t$tw.wiki.addEventListener(\"change\",refreshHandler);\n\t\t// Listen for keyboard shortcuts\n\t\t$tw.utils.addEventListeners(srcDocument,[{\n\t\t\tname: \"keydown\",\n\t\t\thandlerObject: $tw.keyboardManager,\n\t\t\thandlerMethod: \"handleKeydownEvent\"\n\t\t}]);\n\t\tsrcWindow.document.documentElement.addEventListener(\"click\",$tw.popup,true);\n\t\tsrcWindow.haveInitialisedWindow = true;\n\t});\n\t// Close open windows when unloading main window\n\t$tw.addUnloadTask(function() {\n\t\t$tw.utils.each($tw.windows,function(win) {\n\t\t\twin.close();\n\t\t});\n\t});\n\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/core/modules/story.js": {
            "title": "$:/core/modules/story.js",
            "text": "/*\\\ntitle: $:/core/modules/story.js\ntype: application/javascript\nmodule-type: global\n\nLightweight object for managing interactions with the story and history lists.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nConstruct Story object with options:\nwiki: reference to wiki object to use to resolve tiddler titles\nstoryTitle: title of story list tiddler\nhistoryTitle: title of history list tiddler\n*/\nfunction Story(options) {\n\toptions = options || {};\n\tthis.wiki = options.wiki || $tw.wiki;\n\tthis.storyTitle = options.storyTitle || \"$:/StoryList\";\n\tthis.historyTitle = options.historyTitle || \"$:/HistoryList\";\n};\n\nStory.prototype.navigateTiddler = function(navigateTo,navigateFromTitle,navigateFromClientRect) {\n\tthis.addToStory(navigateTo,navigateFromTitle);\n\tthis.addToHistory(navigateTo,navigateFromClientRect);\n};\n\nStory.prototype.getStoryList = function() {\n\treturn this.wiki.getTiddlerList(this.storyTitle) || [];\n};\n\nStory.prototype.addToStory = function(navigateTo,navigateFromTitle,options) {\n\toptions = options || {};\n\tvar storyList = this.getStoryList();\n\t// See if the tiddler is already there\n\tvar slot = storyList.indexOf(navigateTo);\n\t// Quit if it already exists in the story river\n\tif(slot >= 0) {\n\t\treturn;\n\t}\n\t// First we try to find the position of the story element we navigated from\n\tvar fromIndex = storyList.indexOf(navigateFromTitle);\n\tif(fromIndex >= 0) {\n\t\t// The tiddler is added from inside the river\n\t\t// Determine where to insert the tiddler; Fallback is \"below\"\n\t\tswitch(options.openLinkFromInsideRiver) {\n\t\t\tcase \"top\":\n\t\t\t\tslot = 0;\n\t\t\t\tbreak;\n\t\t\tcase \"bottom\":\n\t\t\t\tslot = storyList.length;\n\t\t\t\tbreak;\n\t\t\tcase \"above\":\n\t\t\t\tslot = fromIndex;\n\t\t\t\tbreak;\n\t\t\tcase \"below\": // Intentional fall-through\n\t\t\tdefault:\n\t\t\t\tslot = fromIndex + 1;\n\t\t\t\tbreak;\n\t\t}\n\t} else {\n\t\t// The tiddler is opened from outside the river. Determine where to insert the tiddler; default is \"top\"\n\t\tif(options.openLinkFromOutsideRiver === \"bottom\") {\n\t\t\t// Insert at bottom\n\t\t\tslot = storyList.length;\n\t\t} else {\n\t\t\t// Insert at top\n\t\t\tslot = 0;\n\t\t}\n\t}\n\t// Add the tiddler\n\tstoryList.splice(slot,0,navigateTo);\n\t// Save the story\n\tthis.saveStoryList(storyList);\n};\n\nStory.prototype.saveStoryList = function(storyList) {\n\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\tthis.wiki.getCreationFields(),\n\t\t{title: this.storyTitle},\n\t\tstoryTiddler,\n\t\t{list: storyList},\n\t\tthis.wiki.getModificationFields()\n\t));\n};\n\nStory.prototype.addToHistory = function(navigateTo,navigateFromClientRect) {\n\tvar titles = $tw.utils.isArray(navigateTo) ? navigateTo : [navigateTo];\n\t// Add a new record to the top of the history stack\n\tvar historyList = this.wiki.getTiddlerData(this.historyTitle,[]);\n\t$tw.utils.each(titles,function(title) {\n\t\thistoryList.push({title: title, fromPageRect: navigateFromClientRect});\n\t});\n\tthis.wiki.setTiddlerData(this.historyTitle,historyList,{\"current-tiddler\": titles[titles.length-1]});\n};\n\nStory.prototype.storyCloseTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCloseAllTiddlers = function() {\n// TBD\n};\n\nStory.prototype.storyCloseOtherTiddlers = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyEditTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyDeleteTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storySaveTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyCancelTiddler = function(targetTitle) {\n// TBD\n};\n\nStory.prototype.storyNewTiddler = function(targetTitle) {\n// TBD\n};\n\nexports.Story = Story;\n\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/storyviews/classic.js": {
            "title": "$:/core/modules/storyviews/classic.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/classic.js\ntype: application/javascript\nmodule-type: storyview\n\nViews the story as a linear sequence\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ClassicStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nClassicStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration()\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\tif(duration) {\n\t\t// Scroll the node into view\n\t\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\t\n\t} else {\n\t\ttargetElement.scrollIntoView();\n\t}\n};\n\nClassicStoryView.prototype.insert = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar computedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Reset the margin once the transition is over\n\t\tsetTimeout(function() {\n\t\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t\t{transition: \"none\"},\n\t\t\t\t{marginBottom: \"\"}\n\t\t\t]);\n\t\t},duration);\n\t\t// Set up the initial position of the element\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t// Transition to the final position\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t]);\n\t}\n};\n\nClassicStoryView.prototype.remove = function(widget) {\n\tvar duration = $tw.utils.getAnimationDuration();\n\tif(duration) {\n\t\tvar targetElement = widget.findFirstDomNode(),\n\t\t\tremoveElement = function() {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t};\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(targetElement instanceof Element)) {\n\t\t\tremoveElement();\n\t\t\treturn;\n\t\t}\n\t\t// Get the current height of the tiddler\n\t\tvar currWidth = targetElement.offsetWidth,\n\t\t\tcomputedStyle = window.getComputedStyle(targetElement),\n\t\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\t\tcurrHeight = targetElement.offsetHeight + currMarginTop;\n\t\t// Remove the dom nodes of the widget at the end of the transition\n\t\tsetTimeout(removeElement,duration);\n\t\t// Animate the closure\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"translateX(0px)\"},\n\t\t\t{marginBottom:  currMarginBottom + \"px\"},\n\t\t\t{opacity: \"1.0\"}\n\t\t]);\n\t\t$tw.utils.forceLayout(targetElement);\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"opacity \" + duration + \"ms \" + easing + \", \" +\n\t\t\t\t\t\t\"margin-bottom \" + duration + \"ms \" + easing},\n\t\t\t{transform: \"translateX(-\" + currWidth + \"px)\"},\n\t\t\t{marginBottom: (-currHeight) + \"px\"},\n\t\t\t{opacity: \"0.0\"}\n\t\t]);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n};\n\nexports.classic = ClassicStoryView;\n\n})();",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/pop.js": {
            "title": "$:/core/modules/storyviews/pop.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/pop.js\ntype: application/javascript\nmodule-type: storyview\n\nAnimates list insertions and removals\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar PopStoryView = function(listWidget) {\n\tthis.listWidget = listWidget;\n};\n\nPopStoryView.prototype.navigateTo = function(historyInfo) {\n\tvar listElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Scroll the node into view\n\tthis.listWidget.dispatchEvent({type: \"tm-scroll\", target: targetElement});\n};\n\nPopStoryView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Reset once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(targetElement,[\n\t\t\t{transition: \"none\"},\n\t\t\t{transform: \"none\"}\n\t\t]);\n\t\t$tw.utils.setStyle(widget.document.body,[\n\t\t\t{\"overflow-x\": \"\"}\n\t\t]);\n\t},duration);\n\t// Prevent the page from overscrolling due to the zoom factor\n\t$tw.utils.setStyle(widget.document.body,[\n\t\t{\"overflow-x\": \"hidden\"}\n\t]);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(2)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t// Transition to the final position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n};\n\nPopStoryView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\tif(targetElement && targetElement.parentNode) {\n\t\t\t\twidget.removeChildDomNodes();\n\t\t\t}\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Remove the element at the end of the transition\n\tsetTimeout(removeElement,duration);\n\t// Animate the closure\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: \"none\"},\n\t\t{transform: \"scale(1)\"},\n\t\t{opacity: \"1.0\"}\n\t]);\n\t$tw.utils.forceLayout(targetElement);\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{transform: \"scale(0.1)\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n};\n\nexports.pop = PopStoryView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/storyviews/zoomin.js": {
            "title": "$:/core/modules/storyviews/zoomin.js",
            "text": "/*\\\ntitle: $:/core/modules/storyviews/zoomin.js\ntype: application/javascript\nmodule-type: storyview\n\nZooms between individual tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar easing = \"cubic-bezier(0.645, 0.045, 0.355, 1)\"; // From http://easings.net/#easeInOutCubic\n\nvar ZoominListView = function(listWidget) {\n\tvar self = this;\n\tthis.listWidget = listWidget;\n\t// Get the index of the tiddler that is at the top of the history\n\tvar history = this.listWidget.wiki.getTiddlerDataCached(this.listWidget.historyTitle,[]),\n\t\ttargetTiddler;\n\tif(history.length > 0) {\n\t\ttargetTiddler = history[history.length-1].title;\n\t}\n\t// Make all the tiddlers position absolute, and hide all but the top (or first) one\n\t$tw.utils.each(this.listWidget.children,function(itemWidget,index) {\n\t\tvar domNode = itemWidget.findFirstDomNode();\n\t\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\t\tif(!(domNode instanceof Element)) {\n\t\t\treturn;\n\t\t}\n\t\tif((targetTiddler && targetTiddler !== itemWidget.parseTreeNode.itemTitle) || (!targetTiddler && index)) {\n\t\t\tdomNode.style.display = \"none\";\n\t\t} else {\n\t\t\tself.currentTiddlerDomNode = domNode;\n\t\t}\n\t\t$tw.utils.addClass(domNode,\"tc-storyview-zoomin-tiddler\");\n\t});\n};\n\nZoominListView.prototype.navigateTo = function(historyInfo) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\t\tlistElementIndex = this.listWidget.findListItem(0,historyInfo.title);\n\tif(listElementIndex === undefined) {\n\t\treturn;\n\t}\n\tvar listItemWidget = this.listWidget.children[listElementIndex],\n\t\ttargetElement = listItemWidget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the new tiddler be position absolute and visible so that we can measure it\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"0 0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{opacity: \"0.0\"}\n\t]);\n\t// Get the position of the source node, or use the centre of the window as the source position\n\tvar sourceBounds = historyInfo.fromPageRect || {\n\t\t\tleft: window.innerWidth/2 - 2,\n\t\t\ttop: window.innerHeight/2 - 2,\n\t\t\twidth: window.innerWidth/8,\n\t\t\theight: window.innerHeight/8\n\t\t};\n\t// Try to find the title node in the target tiddler\n\tvar titleDomNode = findTitleDomNode(listItemWidget) || listItemWidget.findFirstDomNode(),\n\t\tzoomBounds = titleDomNode.getBoundingClientRect();\n\t// Compute the transform for the target tiddler to make the title lie over the source rectange\n\tvar targetBounds = targetElement.getBoundingClientRect(),\n\t\tscale = sourceBounds.width / zoomBounds.width,\n\t\tx = sourceBounds.left - targetBounds.left - (zoomBounds.left - targetBounds.left) * scale,\n\t\ty = sourceBounds.top - targetBounds.top - (zoomBounds.top - targetBounds.top) * scale;\n\t// Transform the target tiddler to its starting position\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(targetElement);\n\t// Apply the ending transitions with a timeout to ensure that the previously applied transformations are applied first\n\tvar self = this,\n\t\tprevCurrentTiddler = this.currentTiddlerDomNode;\n\tthis.currentTiddlerDomNode = targetElement;\n\t// Transform the target tiddler to its natural size\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{zIndex: \"500\"},\n\t]);\n\t// Transform the previous tiddler out of the way and then hide it\n\tif(prevCurrentTiddler && prevCurrentTiddler !== targetElement) {\n\t\tscale = zoomBounds.width / sourceBounds.width;\n\t\tx =  zoomBounds.left - targetBounds.left - (sourceBounds.left - targetBounds.left) * scale;\n\t\ty =  zoomBounds.top - targetBounds.top - (sourceBounds.top - targetBounds.top) * scale;\n\t\t$tw.utils.setStyle(prevCurrentTiddler,[\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transformOrigin: \"0 0\"},\n\t\t\t{transform: \"translateX(\" + x + \"px) translateY(\" + y + \"px) scale(\" + scale + \")\"},\n\t\t\t{zIndex: \"0\"}\n\t\t]);\n\t\t// Hide the tiddler when the transition has finished\n\t\tsetTimeout(function() {\n\t\t\tif(self.currentTiddlerDomNode !== prevCurrentTiddler) {\n\t\t\t\tprevCurrentTiddler.style.display = \"none\";\n\t\t\t}\n\t\t},duration);\n\t}\n\t// Scroll the target into view\n//\t$tw.pageScroller.scrollIntoView(targetElement);\n};\n\n/*\nFind the first child DOM node of a widget that has the class \"tc-title\"\n*/\nfunction findTitleDomNode(widget,targetClass) {\n\ttargetClass = targetClass || \"tc-title\";\n\tvar domNode = widget.findFirstDomNode();\n\tif(domNode && domNode.querySelector) {\n\t\treturn domNode.querySelector(\".\" + targetClass);\n\t}\n\treturn null;\n}\n\nZoominListView.prototype.insert = function(widget) {\n\tvar targetElement = widget.findFirstDomNode();\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\treturn;\n\t}\n\t// Make the newly inserted node position absolute and hidden\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"none\"}\n\t]);\n};\n\nZoominListView.prototype.remove = function(widget) {\n\tvar targetElement = widget.findFirstDomNode(),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\tremoveElement = function() {\n\t\t\twidget.removeChildDomNodes();\n\t\t};\n\t// Abandon if the list entry isn't a DOM element (it might be a text node)\n\tif(!(targetElement instanceof Element)) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Abandon if hidden\n\tif(targetElement.style.display != \"block\" ) {\n\t\tremoveElement();\n\t\treturn;\n\t}\n\t// Set up the tiddler that is being closed\n\t$tw.utils.addClass(targetElement,\"tc-storyview-zoomin-tiddler\");\n\t$tw.utils.setStyle(targetElement,[\n\t\t{display: \"block\"},\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t{transition: \"none\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\t// We'll move back to the previous or next element in the story\n\tvar toWidget = widget.previousSibling();\n\tif(!toWidget) {\n\t\ttoWidget = widget.nextSibling();\n\t}\n\tvar toWidgetDomNode = toWidget && toWidget.findFirstDomNode();\n\t// Set up the tiddler we're moving back in\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.addClass(toWidgetDomNode,\"tc-storyview-zoomin-tiddler\");\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{display: \"block\"},\n\t\t\t{transformOrigin: \"50% 50%\"},\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(10)\"},\n\t\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t\t{opacity: \"0\"},\n\t\t\t{zIndex: \"500\"}\n\t\t]);\n\t\tthis.currentTiddlerDomNode = toWidgetDomNode;\n\t}\n\t// Animate them both\n\t// Force layout\n\t$tw.utils.forceLayout(this.listWidget.parentDomNode);\n\t// First, the tiddler we're closing\n\t$tw.utils.setStyle(targetElement,[\n\t\t{transformOrigin: \"50% 50%\"},\n\t\t{transform: \"translateX(0px) translateY(0px) scale(0.1)\"},\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms \" + easing + \", opacity \" + duration + \"ms \" + easing},\n\t\t{opacity: \"0\"},\n\t\t{zIndex: \"0\"}\n\t]);\n\tsetTimeout(removeElement,duration);\n\t// Now the tiddler we're going back to\n\tif(toWidgetDomNode) {\n\t\t$tw.utils.setStyle(toWidgetDomNode,[\n\t\t\t{transform: \"translateX(0px) translateY(0px) scale(1)\"},\n\t\t\t{opacity: \"1\"}\n\t\t]);\n\t}\n\treturn true; // Indicate that we'll delete the DOM node\n};\n\nexports.zoomin = ZoominListView;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "storyview"
        },
        "$:/core/modules/syncer.js": {
            "title": "$:/core/modules/syncer.js",
            "text": "/*\\\ntitle: $:/core/modules/syncer.js\ntype: application/javascript\nmodule-type: global\n\nThe syncer tracks changes to the store and synchronises them to a remote data store represented as a \"sync adaptor\"\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDefaults\n*/\nSyncer.prototype.titleIsLoggedIn = \"$:/status/IsLoggedIn\";\nSyncer.prototype.titleIsAnonymous = \"$:/status/IsAnonymous\";\nSyncer.prototype.titleIsReadOnly = \"$:/status/IsReadOnly\";\nSyncer.prototype.titleUserName = \"$:/status/UserName\";\nSyncer.prototype.titleSyncFilter = \"$:/config/SyncFilter\";\nSyncer.prototype.titleSyncPollingInterval = \"$:/config/SyncPollingInterval\";\nSyncer.prototype.titleSyncDisableLazyLoading = \"$:/config/SyncDisableLazyLoading\";\nSyncer.prototype.titleSavedNotification = \"$:/language/Notifications/Save/Done\";\nSyncer.prototype.titleSyncThrottleInterval = \"$:/config/SyncThrottleInterval\";\nSyncer.prototype.taskTimerInterval = 1 * 1000; // Interval for sync timer\nSyncer.prototype.throttleInterval = 1 * 1000; // Defer saving tiddlers if they've changed in the last 1s...\nSyncer.prototype.errorRetryInterval = 5 * 1000; // Interval to retry after an error\nSyncer.prototype.fallbackInterval = 10 * 1000; // Unless the task is older than 10s\nSyncer.prototype.pollTimerInterval = 60 * 1000; // Interval for polling for changes from the adaptor\n\n/*\nInstantiate the syncer with the following options:\nsyncadaptor: reference to syncadaptor to be used\nwiki: wiki to be synced\n*/\nfunction Syncer(options) {\n\tvar self = this;\n\tthis.wiki = options.wiki;\n\t// Save parameters\n\tthis.syncadaptor = options.syncadaptor;\n\tthis.disableUI = !!options.disableUI;\n\tthis.titleIsLoggedIn = options.titleIsLoggedIn || this.titleIsLoggedIn;\n\tthis.titleUserName = options.titleUserName || this.titleUserName;\n\tthis.titleSyncFilter = options.titleSyncFilter || this.titleSyncFilter;\n\tthis.titleSavedNotification = options.titleSavedNotification || this.titleSavedNotification;\n\tthis.taskTimerInterval = options.taskTimerInterval || this.taskTimerInterval;\n\tthis.throttleInterval = options.throttleInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncThrottleInterval,\"\"),10) || this.throttleInterval;\n\tthis.errorRetryInterval = options.errorRetryInterval || this.errorRetryInterval;\n\tthis.fallbackInterval = options.fallbackInterval || this.fallbackInterval;\n\tthis.pollTimerInterval = options.pollTimerInterval || parseInt(this.wiki.getTiddlerText(this.titleSyncPollingInterval,\"\"),10) || this.pollTimerInterval;\n\tthis.logging = \"logging\" in options ? options.logging : true;\n\t// Make a logger\n\tthis.logger = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\")  + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\"),{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging,\n\t\tsaveHistory: true\n\t});\n\t// Make another logger for connection errors\n\tthis.loggerConnection = new $tw.utils.Logger(\"syncer\" + ($tw.browser ? \"-browser\" : \"\") + ($tw.node ? \"-server\" : \"\")  + (this.syncadaptor.name ? (\"-\" + this.syncadaptor.name) : \"\") + \"-connection\",{\n\t\tcolour: \"cyan\",\n\t\tenable: this.logging\n\t});\n\t// Ask the syncadaptor to use the main logger\n\tif(this.syncadaptor.setLoggerSaveBuffer) {\n\t\tthis.syncadaptor.setLoggerSaveBuffer(this.logger);\n\t}\n\t// Compile the dirty tiddler filter\n\tthis.filterFn = this.wiki.compileFilter(this.wiki.getTiddlerText(this.titleSyncFilter));\n\t// Record information for known tiddlers\n\tthis.readTiddlerInfo();\n\tthis.titlesToBeLoaded = {}; // Hashmap of titles of tiddlers that need loading from the server\n\tthis.titlesHaveBeenLazyLoaded = {}; // Hashmap of titles of tiddlers that have already been lazily loaded from the server\n\t// Timers\n\tthis.taskTimerId = null; // Timer for task dispatch\n\tthis.pollTimerId = null; // Timer for polling server\n\t// Number of outstanding requests\n\tthis.numTasksInProgress = 0;\n\t// Listen out for changes to tiddlers\n\tthis.wiki.addEventListener(\"change\",function(changes) {\n\t\t// Filter the changes to just include ones that are being synced\n\t\tvar filteredChanges = self.getSyncedTiddlers(function(callback) {\n\t\t\t$tw.utils.each(changes,function(change,title) {\n\t\t\t\tvar tiddler = self.wiki.tiddlerExists(title) && self.wiki.getTiddler(title);\n\t\t\t\tcallback(tiddler,title);\n\t\t\t});\n\t\t});\n\t\tif(filteredChanges.length > 0) {\n\t\t\tself.processTaskQueue();\n\t\t} else {\n\t\t\t// Look for deletions of tiddlers we're already syncing\t\n\t\t\tvar outstandingDeletion = false\n\t\t\t$tw.utils.each(changes,function(change,title,object) {\n\t\t\t\tif(change.deleted && $tw.utils.hop(self.tiddlerInfo,title)) {\n\t\t\t\t\toutstandingDeletion = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(outstandingDeletion) {\n\t\t\t\tself.processTaskQueue();\n\t\t\t}\n\t\t}\n\t});\n\t// Browser event handlers\n\tif($tw.browser && !this.disableUI) {\n\t\t// Set up our beforeunload handler\n\t\t$tw.addUnloadTask(function(event) {\n\t\t\tvar confirmationMessage;\n\t\t\tif(self.isDirty()) {\n\t\t\t\tconfirmationMessage = $tw.language.getString(\"UnsavedChangesWarning\");\n\t\t\t\tevent.returnValue = confirmationMessage; // Gecko\n\t\t\t}\n\t\t\treturn confirmationMessage;\n\t\t});\n\t\t// Listen out for login/logout/refresh events in the browser\n\t\t$tw.rootWidget.addEventListener(\"tm-login\",function(event) {\n\t\t\tvar username = event && event.paramObject && event.paramObject.username,\n\t\t\t\tpassword = event && event.paramObject && event.paramObject.password;\n\t\t\tif(username && password) {\n\t\t\t\t// Login with username and password\n\t\t\t\tself.login(username,password,function() {});\n\t\t\t} else {\n\t\t\t\t// No username and password, so we display a prompt\n\t\t\t\tself.handleLoginEvent();\t\t\t\t\n\t\t\t}\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-logout\",function() {\n\t\t\tself.handleLogoutEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-server-refresh\",function() {\n\t\t\tself.handleRefreshEvent();\n\t\t});\n\t\t$tw.rootWidget.addEventListener(\"tm-copy-syncer-logs-to-clipboard\",function() {\n\t\t\t$tw.utils.copyToClipboard($tw.utils.getSystemInfo() + \"\\n\\nLog:\\n\" + self.logger.getBuffer());\n\t\t});\n\t}\n\t// Listen out for lazyLoad events\n\tif(!this.disableUI && this.wiki.getTiddlerText(this.titleSyncDisableLazyLoading) !== \"yes\") {\n\t\tthis.wiki.addEventListener(\"lazyLoad\",function(title) {\n\t\t\tself.handleLazyLoadEvent(title);\n\t\t});\t\t\n\t}\n\t// Get the login status\n\tthis.getStatus(function(err,isLoggedIn) {\n\t\t// Do a sync from the server\n\t\tself.syncFromServer();\n\t});\n}\n\n/*\nShow a generic network error alert\n*/\nSyncer.prototype.displayError = function(msg,err) {\n\tif(err === ($tw.language.getString(\"Error/XMLHttpRequest\") + \": 0\")) {\n\t\tthis.loggerConnection.alert($tw.language.getString(\"Error/NetworkErrorAlert\"));\n\t\tthis.logger.log(msg + \":\",err);\n\t} else {\n\t\tthis.logger.alert(msg + \":\",err);\n\t}\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getSyncedTiddlers = function(source) {\n\treturn this.filterFn.call(this.wiki,source);\n};\n\n/*\nReturn an array of the tiddler titles that are subjected to syncing\n*/\nSyncer.prototype.getTiddlerRevision = function(title) {\n\tif(this.syncadaptor && this.syncadaptor.getTiddlerRevision) {\n\t\treturn this.syncadaptor.getTiddlerRevision(title);\n\t} else {\n\t\treturn this.wiki.getTiddler(title).fields.revision;\t\n\t} \n};\n\n/*\nRead (or re-read) the latest tiddler info from the store\n*/\nSyncer.prototype.readTiddlerInfo = function() {\n\t// Hashmap by title of {revision:,changeCount:,adaptorInfo:}\n\t// \"revision\" is the revision of the tiddler last seen on the server, and \"changecount\" is the corresponding local changecount\n\tthis.tiddlerInfo = {};\n\t// Record information for known tiddlers\n\tvar self = this,\n\t\ttiddlers = this.getSyncedTiddlers();\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title);\n\t\tif(tiddler) {\n\t\t\tself.tiddlerInfo[title] = {\n\t\t\t\trevision: self.getTiddlerRevision(title),\n\t\t\t\tadaptorInfo: self.syncadaptor && self.syncadaptor.getTiddlerInfo(tiddler),\n\t\t\t\tchangeCount: self.wiki.getChangeCount(title)\n\t\t\t};\n\t\t}\n\t});\n};\n\n/*\nChecks whether the wiki is dirty (ie the window shouldn't be closed)\n*/\nSyncer.prototype.isDirty = function() {\n\tthis.logger.log(\"Checking dirty status\");\n\t// Check tiddlers that are in the store and included in the filter function\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(this.wiki.tiddlerExists(title)) {\n\t\t\tif(tiddlerInfo) {\n\t\t\t\t// If the tiddler is known on the server and has been modified locally then it needs to be saved to the server\n\t\t\t\tif(this.wiki.getChangeCount(title) > tiddlerInfo.changeCount) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// If the tiddler isn't known on the server then it needs to be saved to the server\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t}\n\t// Check tiddlers that are known from the server but not currently in the store\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\tif(!this.wiki.tiddlerExists(titles[index])) {\n\t\t\t// There must be a pending delete\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nUpdate the document body with the class \"tc-dirty\" if the wiki has unsaved/unsynced changes\n*/\nSyncer.prototype.updateDirtyStatus = function() {\n\tif($tw.browser && !this.disableUI) {\n\t\tvar dirty = this.isDirty();\n\t\t$tw.utils.toggleClass(document.body,\"tc-dirty\",dirty);\n\t\tif(!dirty) {\n\t\t\tthis.loggerConnection.clearAlerts();\n\t\t}\n\t}\n};\n\n/*\nSave an incoming tiddler in the store, and updates the associated tiddlerInfo\n*/\nSyncer.prototype.storeTiddler = function(tiddlerFields) {\n\t// Save the tiddler\n\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\tthis.wiki.addTiddler(tiddler);\n\t// Save the tiddler revision and changeCount details\n\tthis.tiddlerInfo[tiddlerFields.title] = {\n\t\trevision: this.getTiddlerRevision(tiddlerFields.title),\n\t\tadaptorInfo: this.syncadaptor.getTiddlerInfo(tiddler),\n\t\tchangeCount: this.wiki.getChangeCount(tiddlerFields.title)\n\t};\n};\n\nSyncer.prototype.getStatus = function(callback) {\n\tvar self = this;\n\t// Check if the adaptor supports getStatus()\n\tif(this.syncadaptor && this.syncadaptor.getStatus) {\n\t\t// Mark us as not logged in\n\t\tthis.wiki.addTiddler({title: this.titleIsLoggedIn,text: \"no\"});\n\t\t// Get login status\n\t\tthis.syncadaptor.getStatus(function(err,isLoggedIn,username,isReadOnly,isAnonymous) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\t// Set the various status tiddlers\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsReadOnly,text: isReadOnly ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsAnonymous,text: isAnonymous ? \"yes\" : \"no\"});\n\t\t\t\tself.wiki.addTiddler({title: self.titleIsLoggedIn,text: isLoggedIn ? \"yes\" : \"no\"});\n\t\t\t\tif(isLoggedIn) {\n\t\t\t\t\tself.wiki.addTiddler({title: self.titleUserName,text: username || \"\"});\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Invoke the callback\n\t\t\tif(callback) {\n\t\t\t\tcallback(err,isLoggedIn,username);\n\t\t\t}\n\t\t});\n\t} else {\n\t\tcallback(null,true,\"UNAUTHENTICATED\");\n\t}\n};\n\n/*\nSynchronise from the server by reading the skinny tiddler list and queuing up loads for any tiddlers that we don't already have up to date\n*/\nSyncer.prototype.syncFromServer = function() {\n\tvar self = this,\n\t\tcancelNextSync = function() {\n\t\t\tif(self.pollTimerId) {\n\t\t\t\tclearTimeout(self.pollTimerId);\n\t\t\t\tself.pollTimerId = null;\n\t\t\t}\n\t\t},\n\t\ttriggerNextSync = function() {\n\t\t\tself.pollTimerId = setTimeout(function() {\n\t\t\t\tself.pollTimerId = null;\n\t\t\t\tself.syncFromServer.call(self);\n\t\t\t},self.pollTimerInterval);\n\t\t},\n\t\tsyncSystemFromServer = (self.wiki.getTiddlerText(\"$:/config/SyncSystemTiddlersFromServer\") === \"yes\" ? true : false);\n\tif(this.syncadaptor && this.syncadaptor.getUpdatedTiddlers) {\n\t\tthis.logger.log(\"Retrieving updated tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getUpdatedTiddlers(self,function(err,updates) {\n\t\t\ttriggerNextSync();\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif(updates) {\n\t\t\t\t$tw.utils.each(updates.modifications,function(title) {\n\t\t\t\t\tself.titlesToBeLoaded[title] = true;\n\t\t\t\t});\n\t\t\t\t$tw.utils.each(updates.deletions,function(title) {\n\t\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t\tif(updates.modifications.length > 0 || updates.deletions.length > 0) {\n\t\t\t\t\tself.processTaskQueue();\n\t\t\t\t}\t\t\t\t\n\t\t\t}\n\t\t});\n\t} else if(this.syncadaptor && this.syncadaptor.getSkinnyTiddlers) {\n\t\tthis.logger.log(\"Retrieving skinny tiddler list\");\n\t\tcancelNextSync();\n\t\tthis.syncadaptor.getSkinnyTiddlers(function(err,tiddlers) {\n\t\t\ttriggerNextSync();\n\t\t\t// Check for errors\n\t\t\tif(err) {\n\t\t\t\tself.displayError($tw.language.getString(\"Error/RetrievingSkinny\"),err);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t// Keep track of which tiddlers we already know about have been reported this time\n\t\t\tvar previousTitles = Object.keys(self.tiddlerInfo);\n\t\t\t// Process each incoming tiddler\n\t\t\tfor(var t=0; t<tiddlers.length; t++) {\n\t\t\t\t// Get the incoming tiddler fields, and the existing tiddler\n\t\t\t\tvar tiddlerFields = tiddlers[t],\n\t\t\t\t\tincomingRevision = tiddlerFields.revision + \"\",\n\t\t\t\t\ttiddler = self.wiki.tiddlerExists(tiddlerFields.title) && self.wiki.getTiddler(tiddlerFields.title),\n\t\t\t\t\ttiddlerInfo = self.tiddlerInfo[tiddlerFields.title],\n\t\t\t\t\tcurrRevision = tiddlerInfo ? tiddlerInfo.revision : null,\n\t\t\t\t\tindexInPreviousTitles = previousTitles.indexOf(tiddlerFields.title);\n\t\t\t\tif(indexInPreviousTitles !== -1) {\n\t\t\t\t\tpreviousTitles.splice(indexInPreviousTitles,1);\n\t\t\t\t}\n\t\t\t\t// Ignore the incoming tiddler if it's the same as the revision we've already got\n\t\t\t\tif(currRevision !== incomingRevision) {\n\t\t\t\t\t// Only load the skinny version if we don't already have a fat version of the tiddler\n\t\t\t\t\tif(!tiddler || tiddler.fields.text === undefined) {\n\t\t\t\t\t\tself.storeTiddler(tiddlerFields);\n\t\t\t\t\t}\n\t\t\t\t\t// Do a full load of this tiddler\n\t\t\t\t\tself.titlesToBeLoaded[tiddlerFields.title] = true;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Delete any tiddlers that were previously reported but missing this time\n\t\t\t$tw.utils.each(previousTitles,function(title) {\n\t\t\t\tif(syncSystemFromServer || !self.wiki.isSystemTiddler(title)) {\n\t\t\t\t\tdelete self.tiddlerInfo[title];\n\t\t\t\t\tself.logger.log(\"Deleting tiddler missing from server:\",title);\n\t\t\t\t\tself.wiki.deleteTiddler(title);\n\t\t\t\t}\n\t\t\t});\n\t\t\tself.processTaskQueue();\n\t\t});\n\t}\n};\n\n/*\nForce load a tiddler from the server\n*/\nSyncer.prototype.enqueueLoadTiddler = function(title) {\n\tthis.titlesToBeLoaded[title] = true;\n\tthis.processTaskQueue();\n};\n\n/*\nLazily load a skinny tiddler if we can\n*/\nSyncer.prototype.handleLazyLoadEvent = function(title) {\n\t// Ignore if the syncadaptor doesn't handle it\n\tif(!this.syncadaptor.supportsLazyLoading) {\n\t\treturn;\n\t}\n\t// Don't lazy load the same tiddler twice\n\tif(!this.titlesHaveBeenLazyLoaded[title]) {\n\t\t// Don't lazy load if the tiddler isn't included in the sync filter\n\t\tif(this.getSyncedTiddlers().indexOf(title) !== -1) {\n\t\t\t// Mark the tiddler as needing loading, and having already been lazily loaded\n\t\t\tthis.titlesToBeLoaded[title] = true;\n\t\t\tthis.titlesHaveBeenLazyLoaded[title] = true;\n\t\t}\n\t}\n};\n\n/*\nDispay a password prompt and allow the user to login\n*/\nSyncer.prototype.handleLoginEvent = function() {\n\tvar self = this;\n\tthis.getStatus(function(err,isLoggedIn,username) {\n\t\tif(!err && !isLoggedIn) {\n\t\t\tif(self.syncadaptor && self.syncadaptor.displayLoginPrompt) {\n\t\t\t\tself.syncadaptor.displayLoginPrompt(self);\n\t\t\t} else {\n\t\t\t\tself.displayLoginPrompt();\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nDispay a password prompt\n*/\nSyncer.prototype.displayLoginPrompt = function() {\n\tvar self = this;\n\tvar promptInfo = $tw.passwordPrompt.createPrompt({\n\t\tserviceName: $tw.language.getString(\"LoginToTiddlySpace\"),\n\t\tcallback: function(data) {\n\t\t\tself.login(data.username,data.password,function(err,isLoggedIn) {\n\t\t\t\tself.syncFromServer();\n\t\t\t});\n\t\t\treturn true; // Get rid of the password prompt\n\t\t}\n\t});\n};\n\n/*\nAttempt to login to TiddlyWeb.\n\tusername: username\n\tpassword: password\n\tcallback: invoked with arguments (err,isLoggedIn)\n*/\nSyncer.prototype.login = function(username,password,callback) {\n\tthis.logger.log(\"Attempting to login as\",username);\n\tvar self = this;\n\tif(this.syncadaptor.login) {\n\t\tthis.syncadaptor.login(username,password,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.getStatus(function(err,isLoggedIn,username) {\n\t\t\t\tif(callback) {\n\t\t\t\t\tcallback(err,isLoggedIn);\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t} else {\n\t\tcallback(null,true);\n\t}\n};\n\n/*\nAttempt to log out of TiddlyWeb\n*/\nSyncer.prototype.handleLogoutEvent = function() {\n\tthis.logger.log(\"Attempting to logout\");\n\tvar self = this;\n\tif(this.syncadaptor.logout) {\n\t\tthis.syncadaptor.logout(function(err) {\n\t\t\tif(err) {\n\t\t\t\tself.logger.alert(err);\n\t\t\t} else {\n\t\t\t\tself.getStatus();\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nImmediately refresh from the server\n*/\nSyncer.prototype.handleRefreshEvent = function() {\n\tthis.syncFromServer();\n};\n\n/*\nProcess the next task\n*/\nSyncer.prototype.processTaskQueue = function() {\n\tvar self = this;\n\t// Only process a task if the sync adaptor is fully initialised and we're not already performing\n\t// a task. If we are already performing a task then we'll dispatch the next one when it completes\n\tif((!this.syncadaptor.isReady || this.syncadaptor.isReady()) && this.numTasksInProgress === 0) {\n\t\t// Choose the next task to perform\n\t\tvar task = this.chooseNextTask();\n\t\t// Perform the task if we had one\n\t\tif(typeof task === \"object\" && task !== null) {\n\t\t\tthis.numTasksInProgress += 1;\n\t\t\ttask.run(function(err) {\n\t\t\t\tself.numTasksInProgress -= 1;\n\t\t\t\tif(err) {\n\t\t\t\t\tself.displayError(\"Sync error while processing \" + task.type + \" of '\" + task.title + \"'\",err);\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\tself.triggerTimeout(self.errorRetryInterval);\n\t\t\t\t} else {\n\t\t\t\t\tself.updateDirtyStatus();\n\t\t\t\t\t// Process the next task\n\t\t\t\t\tself.processTaskQueue.call(self);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\t// No task is ready so update the status\n\t\t\tthis.updateDirtyStatus();\n\t\t\t// And trigger a timeout if there is a pending task\n\t\t\tif(task === true) {\n\t\t\t\tthis.triggerTimeout();\t\t\t\t\n\t\t\t}\n\t\t}\n\t} else {\n\t\tthis.updateDirtyStatus();\t\t\n\t}\n};\n\nSyncer.prototype.triggerTimeout = function(interval) {\n\tvar self = this;\n\tif(!this.taskTimerId) {\n\t\tthis.taskTimerId = setTimeout(function() {\n\t\t\tself.taskTimerId = null;\n\t\t\tself.processTaskQueue.call(self);\n\t\t},interval || self.taskTimerInterval);\n\t}\n};\n\n/*\nChoose the next sync task. We prioritise saves, then deletes, then loads from the server\n\nReturns either a task object, null if there's no upcoming tasks, or the boolean true if there are pending tasks that aren't yet due\n*/\nSyncer.prototype.chooseNextTask = function() {\n\tvar thresholdLastSaved = (new Date()) - this.throttleInterval,\n\t\thavePending = null;\n\t// First we look for tiddlers that have been modified locally and need saving back to the server\n\tvar titles = this.getSyncedTiddlers();\n\tfor(var index=0; index<titles.length; index++) {\n\t\tvar title = titles[index],\n\t\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title),\n\t\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\tif(tiddler) {\n\t\t\t// If the tiddler is not known on the server, or has been modified locally no more recently than the threshold then it needs to be saved to the server\n\t\t\tvar hasChanged = !tiddlerInfo || this.wiki.getChangeCount(title) > tiddlerInfo.changeCount,\n\t\t\t\tisReadyToSave = !tiddlerInfo || !tiddlerInfo.timestampLastSaved || tiddlerInfo.timestampLastSaved < thresholdLastSaved;\n\t\t\tif(hasChanged) {\n\t\t\t\tif(isReadyToSave) {\n\t\t\t\t\treturn new SaveTiddlerTask(this,title); \t\t\t\t\t\n\t\t\t\t} else {\n\t\t\t\t\thavePending = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Second, we check tiddlers that are known from the server but not currently in the store, and so need deleting on the server\n\ttitles = Object.keys(this.tiddlerInfo);\n\tfor(index=0; index<titles.length; index++) {\n\t\ttitle = titles[index];\n\t\ttiddlerInfo = this.tiddlerInfo[title];\n\t\ttiddler = this.wiki.tiddlerExists(title) && this.wiki.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\treturn new DeleteTiddlerTask(this,title);\n\t\t}\n\t}\n\t// Check for tiddlers that need loading\n\ttitle = Object.keys(this.titlesToBeLoaded)[0];\n\tif(title) {\n\t\tdelete this.titlesToBeLoaded[title];\n\t\treturn new LoadTiddlerTask(this,title);\n\t}\n\t// No tasks are ready\n\treturn havePending;\n};\n\nfunction SaveTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"save\";\n}\n\nSaveTiddlerTask.prototype.run = function(callback) {\n\tvar self = this,\n\t\tchangeCount = this.syncer.wiki.getChangeCount(this.title),\n\t\ttiddler = this.syncer.wiki.tiddlerExists(this.title) && this.syncer.wiki.getTiddler(this.title);\n\tthis.syncer.logger.log(\"Dispatching 'save' task:\",this.title);\n\tif(tiddler) {\n\t\tthis.syncer.syncadaptor.saveTiddler(tiddler,function(err,adaptorInfo,revision) {\n\t\t\t// If there's an error, exit without changing any internal state\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\t// Adjust the info stored about this tiddler\n\t\t\tself.syncer.tiddlerInfo[self.title] = {\n\t\t\t\tchangeCount: changeCount,\n\t\t\t\tadaptorInfo: adaptorInfo,\n\t\t\t\trevision: revision,\n\t\t\t\ttimestampLastSaved: new Date()\n\t\t\t};\n\t\t\t// Invoke the callback\n\t\t\tcallback(null);\n\t\t},{\n\t\t\ttiddlerInfo: self.syncer.tiddlerInfo[self.title]\n\t\t});\n\t} else {\n\t\tthis.syncer.logger.log(\" Not Dispatching 'save' task:\",this.title,\"tiddler does not exist\");\n\t\t$tw.utils.nextTick(callback(null));\n\t}\n};\n\nfunction DeleteTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"delete\";\n}\n\nDeleteTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'delete' task:\",this.title);\n\tthis.syncer.syncadaptor.deleteTiddler(this.title,function(err) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Remove the info stored about this tiddler\n\t\tdelete self.syncer.tiddlerInfo[self.title];\n\t\tif($tw.boot.files){\n\t\t\t// Remove the tiddler from $tw.boot.files\n\t\t\tdelete $tw.boot.files[self.title];\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t},{\n\t\ttiddlerInfo: self.syncer.tiddlerInfo[this.title]\n\t});\n};\n\nfunction LoadTiddlerTask(syncer,title) {\n\tthis.syncer = syncer;\n\tthis.title = title;\n\tthis.type = \"load\";\n}\n\nLoadTiddlerTask.prototype.run = function(callback) {\n\tvar self = this;\n\tthis.syncer.logger.log(\"Dispatching 'load' task:\",this.title);\n\tthis.syncer.syncadaptor.loadTiddler(this.title,function(err,tiddlerFields) {\n\t\t// If there's an error, exit without changing any internal state\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\t// Update the info stored about this tiddler\n\t\tif(tiddlerFields) {\n\t\t\tself.syncer.storeTiddler(tiddlerFields);\n\t\t}\n\t\t// Invoke the callback\n\t\tcallback(null);\n\t});\n};\n\nexports.Syncer = Syncer;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/tiddler.js": {
            "title": "$:/core/modules/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/tiddler.js\ntype: application/javascript\nmodule-type: tiddlermethod\n\nExtension methods for the $tw.Tiddler object (constructor and methods required at boot time are in boot/boot.js)\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.hasTag = function(tag) {\n\treturn this.fields.tags && this.fields.tags.indexOf(tag) !== -1;\n};\n\nexports.isPlugin = function() {\n\treturn this.fields.type === \"application/json\" && this.hasField(\"plugin-type\");\n};\n\nexports.isDraft = function() {\n\treturn this.hasField(\"draft.of\");\n};\n\nexports.getFieldString = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn \"\";\n\t}\n\t// Parse the field with the associated module (if any)\n\tvar fieldModule = $tw.Tiddler.fieldModules[field];\n\tif(fieldModule && fieldModule.stringify) {\n\t\treturn fieldModule.stringify.call(this,value);\n\t} else {\n\t\treturn value.toString();\n\t}\n};\n\n/*\nGet the value of a field as a list\n*/\nexports.getFieldList = function(field) {\n\tvar value = this.fields[field];\n\t// Check for a missing field\n\tif(value === undefined || value === null) {\n\t\treturn [];\n\t}\n\treturn $tw.utils.parseStringArray(value);\n};\n\n/*\nGet all the fields as a hashmap of strings. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStrings = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [];\n\tvar fields = {};\n\tfor(var field in this.fields) {\n\t\tif($tw.utils.hop(this.fields,field)) {\n\t\t\tif(exclude.indexOf(field) === -1) {\n\t\t\t\tfields[field] = this.getFieldString(field);\n\t\t\t}\n\t\t}\n\t}\n\treturn fields;\n};\n\n/*\nGet all the fields as a name:value block. Options:\n\texclude: an array of field names to exclude\n*/\nexports.getFieldStringBlock = function(options) {\n\toptions = options || {};\n\tvar exclude = options.exclude || [],\n\t\tfields = Object.keys(this.fields).sort(),\n\t\tresult = [];\n\tfor(var t=0; t<fields.length; t++) {\n\t\tvar field = fields[t];\n\t\tif(exclude.indexOf(field) === -1) {\n\t\t\tresult.push(field + \": \" + this.getFieldString(field));\n\t\t}\n\t}\n\treturn result.join(\"\\n\");\n};\n\nexports.getFieldDay = function(field) {\n\tif(this.cache && this.cache.day && $tw.utils.hop(this.cache.day,field) ) {\n\t\treturn this.cache.day[field];\n\t}\n\tvar day = \"\";\n\tif(this.fields[field]) {\n\t\tday = (new Date($tw.utils.parseDate(this.fields[field]))).setHours(0,0,0,0);\n\t}\n\tthis.cache.day = this.cache.day || {};\n\tthis.cache.day[field] = day;\n\treturn day;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "tiddlermethod"
        },
        "$:/core/modules/upgraders/plugins.js": {
            "title": "$:/core/modules/upgraders/plugins.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/plugins.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that checks that plugins are newer than any already installed version\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar UPGRADE_LIBRARY_TITLE = \"$:/UpgradeLibrary\";\n\nvar BLOCKED_PLUGINS = {\n\t\"$:/themes/tiddlywiki/stickytitles\": {\n\t\tversions: [\"*\"]\n\t},\n\t\"$:/plugins/tiddlywiki/fullscreen\": {\n\t\tversions: [\"*\"]\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tupgradeLibrary,\n\t\tgetLibraryTiddler = function(title) {\n\t\t\tif(!upgradeLibrary) {\n\t\t\t\tupgradeLibrary = wiki.getTiddlerData(UPGRADE_LIBRARY_TITLE,{});\n\t\t\t\tupgradeLibrary.tiddlers = upgradeLibrary.tiddlers || {};\n\t\t\t}\n\t\t\treturn upgradeLibrary.tiddlers[title];\n\t\t};\n\n\t// Go through all the incoming tiddlers\n\t$tw.utils.each(titles,function(title) {\n\t\tvar incomingTiddler = tiddlers[title];\n\t\t// Check if we're dealing with a plugin\n\t\tif(incomingTiddler && incomingTiddler[\"plugin-type\"]) {\n\t\t\t// Check whether the plugin contains JS modules\n\t\t\tvar requiresReload = wiki.doesPluginInfoRequireReload(JSON.parse(incomingTiddler.text)) ? (wiki.getTiddlerText(\"$:/language/ControlPanel/Plugins/PluginWillRequireReload\") + \" \") : \"\";\n\t\t\tmessages[title] = requiresReload;\n\t\t\tif(incomingTiddler.version) {\n\t\t\t\t// Upgrade the incoming plugin if it is in the upgrade library\n\t\t\t\tvar libraryTiddler = getLibraryTiddler(title);\n\t\t\t\tif(libraryTiddler && libraryTiddler[\"plugin-type\"] && libraryTiddler.version) {\n\t\t\t\t\ttiddlers[title] = libraryTiddler;\n\t\t\t\t\tmessages[title] = requiresReload + $tw.language.getString(\"Import/Upgrader/Plugins/Upgraded\",{variables: {incoming: incomingTiddler.version, upgraded: libraryTiddler.version}});\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t// Suppress the incoming plugin if it is older than the currently installed one\n\t\t\t\tvar existingTiddler = wiki.getTiddler(title);\n\t\t\t\tif(existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t\t\t\t// Reject the incoming plugin by blanking all its fields\n\t\t\t\t\tif($tw.utils.checkVersions(existingTiddler.fields.version,incomingTiddler.version)) {\n\t\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Version\",{variables: {incoming: incomingTiddler.version, existing: existingTiddler.fields.version}});\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Check whether the plugin is on the blocked list\n\t\t\tvar blockInfo = BLOCKED_PLUGINS[title];\n\t\t\tif(blockInfo) {\n\t\t\t\tif(blockInfo.versions.indexOf(\"*\") !== -1 || (incomingTiddler.version && blockInfo.versions.indexOf(incomingTiddler.version) !== -1)) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/Plugins/Suppressed/Incompatible\");\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/system.js": {
            "title": "$:/core/modules/upgraders/system.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/system.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that suppresses certain system tiddlers that shouldn't be imported\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar DONT_IMPORT_LIST = [\"$:/StoryList\",\"$:/HistoryList\"],\n\tDONT_IMPORT_PREFIX_LIST = [\"$:/temp/\",\"$:/state/\",\"$:/Import\"],\n\tWARN_IMPORT_PREFIX_LIST = [\"$:/core/modules/\"];\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {},\n\t\tshowAlert = false;\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tif(DONT_IMPORT_LIST.indexOf(title) !== -1) {\n\t\t\ttiddlers[title] = Object.create(null);\n\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Suppressed\");\n\t\t} else {\n\t\t\tfor(var t=0; t<DONT_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = DONT_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix) {\n\t\t\t\t\ttiddlers[title] = Object.create(null);\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/State/Suppressed\");\n\t\t\t\t}\n\t\t\t}\n\t\t\tfor(var t=0; t<WARN_IMPORT_PREFIX_LIST.length; t++) {\n\t\t\t\tvar prefix = WARN_IMPORT_PREFIX_LIST[t];\n\t\t\t\tif(title.substr(0,prefix.length) === prefix && wiki.isShadowTiddler(title)) {\n\t\t\t\t\tshowAlert = true;\n\t\t\t\t\tmessages[title] = $tw.language.getString(\"Import/Upgrader/System/Warning\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\tif(showAlert) {\n\t\tvar logger = new $tw.utils.Logger(\"import\");\n\t\tlogger.alert($tw.language.getString(\"Import/Upgrader/System/Alert\"));\n\t}\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/upgraders/themetweaks.js": {
            "title": "$:/core/modules/upgraders/themetweaks.js",
            "text": "/*\\\ntitle: $:/core/modules/upgraders/themetweaks.js\ntype: application/javascript\nmodule-type: upgrader\n\nUpgrader module that handles the change in theme tweak storage introduced in 5.0.14-beta.\n\nPreviously, theme tweaks were stored in two data tiddlers:\n\n* $:/themes/tiddlywiki/vanilla/metrics\n* $:/themes/tiddlywiki/vanilla/settings\n\nNow, each tweak is stored in its own separate tiddler.\n\nThis upgrader copies any values from the old format to the new. The old data tiddlers are not deleted in case they have been used to store additional indexes.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar MAPPINGS = {\n\t\"$:/themes/tiddlywiki/vanilla/metrics\": {\n\t\t\"fontsize\": \"$:/themes/tiddlywiki/vanilla/metrics/fontsize\",\n\t\t\"lineheight\": \"$:/themes/tiddlywiki/vanilla/metrics/lineheight\",\n\t\t\"storyleft\": \"$:/themes/tiddlywiki/vanilla/metrics/storyleft\",\n\t\t\"storytop\": \"$:/themes/tiddlywiki/vanilla/metrics/storytop\",\n\t\t\"storyright\": \"$:/themes/tiddlywiki/vanilla/metrics/storyright\",\n\t\t\"storywidth\": \"$:/themes/tiddlywiki/vanilla/metrics/storywidth\",\n\t\t\"tiddlerwidth\": \"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"\n\t},\n\t\"$:/themes/tiddlywiki/vanilla/settings\": {\n\t\t\"fontfamily\": \"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"\n\t}\n};\n\nexports.upgrade = function(wiki,titles,tiddlers) {\n\tvar self = this,\n\t\tmessages = {};\n\t// Check for tiddlers on our list\n\t$tw.utils.each(titles,function(title) {\n\t\tvar mapping = MAPPINGS[title];\n\t\tif(mapping) {\n\t\t\tvar tiddler = new $tw.Tiddler(tiddlers[title]),\n\t\t\t\ttiddlerData = wiki.getTiddlerDataCached(tiddler,{});\n\t\t\tfor(var index in mapping) {\n\t\t\t\tvar mappedTitle = mapping[index];\n\t\t\t\tif(!tiddlers[mappedTitle] || tiddlers[mappedTitle].title !== mappedTitle) {\n\t\t\t\t\ttiddlers[mappedTitle] = {\n\t\t\t\t\t\ttitle: mappedTitle,\n\t\t\t\t\t\ttext: tiddlerData[index]\n\t\t\t\t\t};\n\t\t\t\t\tmessages[mappedTitle] = $tw.language.getString(\"Import/Upgrader/ThemeTweaks/Created\",{variables: {\n\t\t\t\t\t\tfrom: title + \"##\" + index\n\t\t\t\t\t}});\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t});\n\treturn messages;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "upgrader"
        },
        "$:/core/modules/utils/base64-utf8/base64-utf8.module.js": {
            "text": "(function(){// From https://gist.github.com/Nijikokun/5192472\n//\n// UTF8 Module\n//\n// Cleaner and modularized utf-8 encoding and decoding library for javascript.\n//\n// copyright: MIT\n// author: Nijiko Yonskai, @nijikokun, nijikokun@gmail.com\n!function(r,e,o,t){void 0!==o.module&&o.module.exports?o.module.exports=e.apply(o):void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"utf8\",[],e):o.utf8=e.apply(o)}(0,function(){return{encode:function(r){if(\"string\"!=typeof r)return r;r=r.replace(/\\r\\n/g,\"\\n\");for(var e,o=\"\",t=0;t<r.length;t++)if((e=r.charCodeAt(t))<128)o+=String.fromCharCode(e);else if(e>127&&e<2048)o+=String.fromCharCode(e>>6|192),o+=String.fromCharCode(63&e|128);else if(e>55295&&e<57344&&r.length>t+1){var i=e,n=r.charCodeAt(t+1);t++;var d=65536+(i-55296<<10|n-56320);o+=String.fromCharCode(d>>18|240),o+=String.fromCharCode(d>>12&63|128),o+=String.fromCharCode(d>>6&63|128),o+=String.fromCharCode(63&d|128)}else o+=String.fromCharCode(e>>12|224),o+=String.fromCharCode(e>>6&63|128),o+=String.fromCharCode(63&e|128);return o},decode:function(r){if(\"string\"!=typeof r)return r;for(var e=\"\",o=0,t=0;o<r.length;)if((t=r.charCodeAt(o))<128)e+=String.fromCharCode(t),o++;else if(t>191&&t<224)e+=String.fromCharCode((31&t)<<6|63&r.charCodeAt(o+1)),o+=2;else if(t>223&&t<240)e+=String.fromCharCode((15&t)<<12|(63&r.charCodeAt(o+1))<<6|63&r.charCodeAt(o+2)),o+=3;else{var i=(7&t)<<18|(63&r.charCodeAt(o+1))<<12|(63&r.charCodeAt(o+2))<<6|63&r.charCodeAt(o+3);e+=String.fromCharCode(55296+(i-65536>>10))+String.fromCharCode(56320+(i-65536&1023)),o+=4}return e}}},this),function(r,e,o,t){if(void 0!==o.module&&o.module.exports){if(t&&o.require)for(var i=0;i<t.length;i++)o[t[i]]=o.require(t[i]);o.module.exports=e.apply(o)}else void 0!==o.define&&\"function\"===o.define&&o.define.amd?define(\"base64\",t||[],e):o.base64=e.apply(o)}(0,function(r){var e=r||this.utf8,o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";return{encode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=e.encode(r);for(var t,i,n,d,f,a,h,C=\"\",c=0;c<r.length;)d=(t=r.charCodeAt(c++))>>2,f=(3&t)<<4|(i=r.charCodeAt(c++))>>4,a=(15&i)<<2|(n=r.charCodeAt(c++))>>6,h=63&n,isNaN(i)?a=h=64:isNaN(n)&&(h=64),C+=o.charAt(d)+o.charAt(f)+o.charAt(a)+o.charAt(h);return C},decode:function(r){if(void 0===e)throw{error:\"MissingMethod\",message:\"UTF8 Module is missing.\"};if(\"string\"!=typeof r)return r;r=r.replace(/[^A-Za-z0-9\\+\\/\\=]/g,\"\");for(var t,i,n,d,f,a,h=\"\",C=0;C<r.length;)t=o.indexOf(r.charAt(C++))<<2|(d=o.indexOf(r.charAt(C++)))>>4,i=(15&d)<<4|(f=o.indexOf(r.charAt(C++)))>>2,n=(3&f)<<6|(a=o.indexOf(r.charAt(C++))),h+=String.fromCharCode(t),64!=f&&(h+=String.fromCharCode(i)),64!=a&&(h+=String.fromCharCode(n));return e.decode(h)}}},this,[\"utf8\"]);}).call(exports);",
            "type": "application/javascript",
            "title": "$:/core/modules/utils/base64-utf8/base64-utf8.module.js",
            "module-type": "library"
        },
        "$:/core/modules/utils/crypto.js": {
            "title": "$:/core/modules/utils/crypto.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/crypto.js\ntype: application/javascript\nmodule-type: utils\n\nUtility functions related to crypto.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nLook for an encrypted store area in the text of a TiddlyWiki file\n*/\nexports.extractEncryptedStoreArea = function(text) {\n\tvar encryptedStoreAreaStartMarker = \"<pre id=\\\"encryptedStoreArea\\\" type=\\\"text/plain\\\" style=\\\"display:none;\\\">\",\n\t\tencryptedStoreAreaStart = text.indexOf(encryptedStoreAreaStartMarker);\n\tif(encryptedStoreAreaStart !== -1) {\n\t\tvar encryptedStoreAreaEnd = text.indexOf(\"</pre>\",encryptedStoreAreaStart);\n\t\tif(encryptedStoreAreaEnd !== -1) {\n\t\t\treturn $tw.utils.htmlDecode(text.substring(encryptedStoreAreaStart + encryptedStoreAreaStartMarker.length,encryptedStoreAreaEnd-1));\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If the password is not provided then the password in the password store will be used\n*/\nexports.decryptStoreArea = function(encryptedStoreArea,password) {\n\tvar decryptedText = $tw.crypto.decrypt(encryptedStoreArea,password);\n\tif(decryptedText) {\n\t\tvar json = JSON.parse(decryptedText),\n\t\t\ttiddlers = [];\n\t\tfor(var title in json) {\n\t\t\tif(title !== \"$:/isEncrypted\") {\n\t\t\t\ttiddlers.push(json[title]);\n\t\t\t}\n\t\t}\n\t\treturn tiddlers;\n\t} else {\n\t\treturn null;\n\t}\n};\n\n\n/*\nAttempt to extract the tiddlers from an encrypted store area using the current password. If that fails, the user is prompted for a password.\nencryptedStoreArea: text of the TiddlyWiki encrypted store area\ncallback: function(tiddlers) called with the array of decrypted tiddlers\n\nThe following configuration settings are supported:\n\n$tw.config.usePasswordVault: causes any password entered by the user to also be put into the system password vault\n*/\nexports.decryptStoreAreaInteractive = function(encryptedStoreArea,callback,options) {\n\t// Try to decrypt with the current password\n\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea);\n\tif(tiddlers) {\n\t\tcallback(tiddlers);\n\t} else {\n\t\t// Prompt for a new password and keep trying\n\t\t$tw.passwordPrompt.createPrompt({\n\t\t\tserviceName: \"Enter a password to decrypt the imported TiddlyWiki\",\n\t\t\tnoUserName: true,\n\t\t\tcanCancel: true,\n\t\t\tsubmitText: \"Decrypt\",\n\t\t\tcallback: function(data) {\n\t\t\t\t// Exit if the user cancelled\n\t\t\t\tif(!data) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\t// Attempt to decrypt the tiddlers\n\t\t\t\tvar tiddlers = $tw.utils.decryptStoreArea(encryptedStoreArea,data.password);\n\t\t\t\tif(tiddlers) {\n\t\t\t\t\tif($tw.config.usePasswordVault) {\n\t\t\t\t\t\t$tw.crypto.setPassword(data.password);\n\t\t\t\t\t}\n\t\t\t\t\tcallback(tiddlers);\n\t\t\t\t\t// Exit and remove the password prompt\n\t\t\t\t\treturn true;\n\t\t\t\t} else {\n\t\t\t\t\t// We didn't decrypt everything, so continue to prompt for password\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/csv.js": {
            "title": "$:/core/modules/utils/csv.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/csv.js\ntype: application/javascript\nmodule-type: utils\n\nA barebones CSV parser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nParse a CSV string with a header row and return an array of hashmaps.\n*/\nexports.parseCsvStringWithHeader = function(text,options) {\n\toptions = options || {};\n\tvar separator = options.separator || \",\",\n\t\trows = text.split(/\\r?\\n/mg).map(function(row) {\n\t\t\treturn $tw.utils.trim(row);\n\t\t}).filter(function(row) {\n\t\t\treturn row !== \"\";\n\t\t});\n\tif(rows.length < 1) {\n\t\treturn \"Missing header row\";\n\t}\n\tvar headings = rows[0].split(separator),\n\t\tresults = [];\n\tfor(var row=1; row<rows.length; row++) {\n\t\tvar columns = rows[row].split(separator),\n\t\t\tcolumnResult = Object.create(null);\n\t\tif(columns.length !== headings.length) {\n\t\t\treturn \"Malformed CSV row '\" + rows[row] + \"'\";\n\t\t}\n\t\tfor(var column=0; column<columns.length; column++) {\n\t\t\tvar columnName = headings[column];\n\t\t\tcolumnResult[columnName] = $tw.utils.trim(columns[column] || \"\");\n\t\t}\n\t\tresults.push(columnResult);\t\t\t\n\t}\n\treturn results;\n}\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/diff-match-patch/diff_match_patch.js": {
            "text": "(function(){function diff_match_patch(){this.Diff_Timeout=1;this.Diff_EditCost=4;this.Match_Threshold=.5;this.Match_Distance=1E3;this.Patch_DeleteThreshold=.5;this.Patch_Margin=4;this.Match_MaxBits=32}var DIFF_DELETE=-1,DIFF_INSERT=1,DIFF_EQUAL=0;\ndiff_match_patch.prototype.diff_main=function(a,b,c,d){\"undefined\"==typeof d&&(d=0>=this.Diff_Timeout?Number.MAX_VALUE:(new Date).getTime()+1E3*this.Diff_Timeout);if(null==a||null==b)throw Error(\"Null input. (diff_main)\");if(a==b)return a?[[DIFF_EQUAL,a]]:[];\"undefined\"==typeof c&&(c=!0);var e=c,f=this.diff_commonPrefix(a,b);c=a.substring(0,f);a=a.substring(f);b=b.substring(f);f=this.diff_commonSuffix(a,b);var g=a.substring(a.length-f);a=a.substring(0,a.length-f);b=b.substring(0,b.length-f);a=this.diff_compute_(a,\nb,e,d);c&&a.unshift([DIFF_EQUAL,c]);g&&a.push([DIFF_EQUAL,g]);this.diff_cleanupMerge(a);return a};\ndiff_match_patch.prototype.diff_compute_=function(a,b,c,d){if(!a)return[[DIFF_INSERT,b]];if(!b)return[[DIFF_DELETE,a]];var e=a.length>b.length?a:b,f=a.length>b.length?b:a,g=e.indexOf(f);return-1!=g?(c=[[DIFF_INSERT,e.substring(0,g)],[DIFF_EQUAL,f],[DIFF_INSERT,e.substring(g+f.length)]],a.length>b.length&&(c[0][0]=c[2][0]=DIFF_DELETE),c):1==f.length?[[DIFF_DELETE,a],[DIFF_INSERT,b]]:(e=this.diff_halfMatch_(a,b))?(b=e[1],f=e[3],a=e[4],e=this.diff_main(e[0],e[2],c,d),c=this.diff_main(b,f,c,d),e.concat([[DIFF_EQUAL,\na]],c)):c&&100<a.length&&100<b.length?this.diff_lineMode_(a,b,d):this.diff_bisect_(a,b,d)};\ndiff_match_patch.prototype.diff_lineMode_=function(a,b,c){var d=this.diff_linesToChars_(a,b);a=d.chars1;b=d.chars2;d=d.lineArray;a=this.diff_main(a,b,!1,c);this.diff_charsToLines_(a,d);this.diff_cleanupSemantic(a);a.push([DIFF_EQUAL,\"\"]);for(var e=d=b=0,f=\"\",g=\"\";b<a.length;){switch(a[b][0]){case DIFF_INSERT:e++;g+=a[b][1];break;case DIFF_DELETE:d++;f+=a[b][1];break;case DIFF_EQUAL:if(1<=d&&1<=e){a.splice(b-d-e,d+e);b=b-d-e;d=this.diff_main(f,g,!1,c);for(e=d.length-1;0<=e;e--)a.splice(b,0,d[e]);b+=\nd.length}d=e=0;g=f=\"\"}b++}a.pop();return a};\ndiff_match_patch.prototype.diff_bisect_=function(a,b,c){for(var d=a.length,e=b.length,f=Math.ceil((d+e)/2),g=2*f,h=Array(g),l=Array(g),k=0;k<g;k++)h[k]=-1,l[k]=-1;h[f+1]=0;l[f+1]=0;k=d-e;for(var m=0!=k%2,p=0,x=0,w=0,q=0,t=0;t<f&&!((new Date).getTime()>c);t++){for(var v=-t+p;v<=t-x;v+=2){var n=f+v;var r=v==-t||v!=t&&h[n-1]<h[n+1]?h[n+1]:h[n-1]+1;for(var y=r-v;r<d&&y<e&&a.charAt(r)==b.charAt(y);)r++,y++;h[n]=r;if(r>d)x+=2;else if(y>e)p+=2;else if(m&&(n=f+k-v,0<=n&&n<g&&-1!=l[n])){var u=d-l[n];if(r>=\nu)return this.diff_bisectSplit_(a,b,r,y,c)}}for(v=-t+w;v<=t-q;v+=2){n=f+v;u=v==-t||v!=t&&l[n-1]<l[n+1]?l[n+1]:l[n-1]+1;for(r=u-v;u<d&&r<e&&a.charAt(d-u-1)==b.charAt(e-r-1);)u++,r++;l[n]=u;if(u>d)q+=2;else if(r>e)w+=2;else if(!m&&(n=f+k-v,0<=n&&n<g&&-1!=h[n]&&(r=h[n],y=f+r-n,u=d-u,r>=u)))return this.diff_bisectSplit_(a,b,r,y,c)}}return[[DIFF_DELETE,a],[DIFF_INSERT,b]]};\ndiff_match_patch.prototype.diff_bisectSplit_=function(a,b,c,d,e){var f=a.substring(0,c),g=b.substring(0,d);a=a.substring(c);b=b.substring(d);f=this.diff_main(f,g,!1,e);e=this.diff_main(a,b,!1,e);return f.concat(e)};\ndiff_match_patch.prototype.diff_linesToChars_=function(a,b){function c(a){for(var b=\"\",c=0,f=-1,g=d.length;f<a.length-1;){f=a.indexOf(\"\\n\",c);-1==f&&(f=a.length-1);var h=a.substring(c,f+1);c=f+1;(e.hasOwnProperty?e.hasOwnProperty(h):void 0!==e[h])?b+=String.fromCharCode(e[h]):(b+=String.fromCharCode(g),e[h]=g,d[g++]=h)}return b}var d=[],e={};d[0]=\"\";var f=c(a),g=c(b);return{chars1:f,chars2:g,lineArray:d}};\ndiff_match_patch.prototype.diff_charsToLines_=function(a,b){for(var c=0;c<a.length;c++){for(var d=a[c][1],e=[],f=0;f<d.length;f++)e[f]=b[d.charCodeAt(f)];a[c][1]=e.join(\"\")}};diff_match_patch.prototype.diff_commonPrefix=function(a,b){if(!a||!b||a.charAt(0)!=b.charAt(0))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(f,e)==b.substring(f,e)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonSuffix=function(a,b){if(!a||!b||a.charAt(a.length-1)!=b.charAt(b.length-1))return 0;for(var c=0,d=Math.min(a.length,b.length),e=d,f=0;c<e;)a.substring(a.length-e,a.length-f)==b.substring(b.length-e,b.length-f)?f=c=e:d=e,e=Math.floor((d-c)/2+c);return e};\ndiff_match_patch.prototype.diff_commonOverlap_=function(a,b){var c=a.length,d=b.length;if(0==c||0==d)return 0;c>d?a=a.substring(c-d):c<d&&(b=b.substring(0,c));c=Math.min(c,d);if(a==b)return c;d=0;for(var e=1;;){var f=a.substring(c-e);f=b.indexOf(f);if(-1==f)return d;e+=f;if(0==f||a.substring(c-e)==b.substring(0,e))d=e,e++}};\ndiff_match_patch.prototype.diff_halfMatch_=function(a,b){function c(a,b,c){for(var d=a.substring(c,c+Math.floor(a.length/4)),e=-1,g=\"\",h,k,l,m;-1!=(e=b.indexOf(d,e+1));){var p=f.diff_commonPrefix(a.substring(c),b.substring(e)),u=f.diff_commonSuffix(a.substring(0,c),b.substring(0,e));g.length<u+p&&(g=b.substring(e-u,e)+b.substring(e,e+p),h=a.substring(0,c-u),k=a.substring(c+p),l=b.substring(0,e-u),m=b.substring(e+p))}return 2*g.length>=a.length?[h,k,l,m,g]:null}if(0>=this.Diff_Timeout)return null;\nvar d=a.length>b.length?a:b,e=a.length>b.length?b:a;if(4>d.length||2*e.length<d.length)return null;var f=this,g=c(d,e,Math.ceil(d.length/4));d=c(d,e,Math.ceil(d.length/2));if(g||d)g=d?g?g[4].length>d[4].length?g:d:d:g;else return null;if(a.length>b.length){d=g[0];e=g[1];var h=g[2];var l=g[3]}else h=g[0],l=g[1],d=g[2],e=g[3];return[d,e,h,l,g[4]]};\ndiff_match_patch.prototype.diff_cleanupSemantic=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=0,h=0,l=0,k=0;f<a.length;)a[f][0]==DIFF_EQUAL?(c[d++]=f,g=l,h=k,k=l=0,e=a[f][1]):(a[f][0]==DIFF_INSERT?l+=a[f][1].length:k+=a[f][1].length,e&&e.length<=Math.max(g,h)&&e.length<=Math.max(l,k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,d--,f=0<d?c[d-1]:-1,k=l=h=g=0,e=null,b=!0)),f++;b&&this.diff_cleanupMerge(a);this.diff_cleanupSemanticLossless(a);for(f=1;f<a.length;){if(a[f-1][0]==\nDIFF_DELETE&&a[f][0]==DIFF_INSERT){b=a[f-1][1];c=a[f][1];d=this.diff_commonOverlap_(b,c);e=this.diff_commonOverlap_(c,b);if(d>=e){if(d>=b.length/2||d>=c.length/2)a.splice(f,0,[DIFF_EQUAL,c.substring(0,d)]),a[f-1][1]=b.substring(0,b.length-d),a[f+1][1]=c.substring(d),f++}else if(e>=b.length/2||e>=c.length/2)a.splice(f,0,[DIFF_EQUAL,b.substring(0,e)]),a[f-1][0]=DIFF_INSERT,a[f-1][1]=c.substring(0,c.length-e),a[f+1][0]=DIFF_DELETE,a[f+1][1]=b.substring(e),f++;f++}f++}};\ndiff_match_patch.prototype.diff_cleanupSemanticLossless=function(a){function b(a,b){if(!a||!b)return 6;var c=a.charAt(a.length-1),d=b.charAt(0),e=c.match(diff_match_patch.nonAlphaNumericRegex_),f=d.match(diff_match_patch.nonAlphaNumericRegex_),g=e&&c.match(diff_match_patch.whitespaceRegex_),h=f&&d.match(diff_match_patch.whitespaceRegex_);c=g&&c.match(diff_match_patch.linebreakRegex_);d=h&&d.match(diff_match_patch.linebreakRegex_);var k=c&&a.match(diff_match_patch.blanklineEndRegex_),l=d&&b.match(diff_match_patch.blanklineStartRegex_);\nreturn k||l?5:c||d?4:e&&!g&&h?3:g||h?2:e||f?1:0}for(var c=1;c<a.length-1;){if(a[c-1][0]==DIFF_EQUAL&&a[c+1][0]==DIFF_EQUAL){var d=a[c-1][1],e=a[c][1],f=a[c+1][1],g=this.diff_commonSuffix(d,e);if(g){var h=e.substring(e.length-g);d=d.substring(0,d.length-g);e=h+e.substring(0,e.length-g);f=h+f}g=d;h=e;for(var l=f,k=b(d,e)+b(e,f);e.charAt(0)===f.charAt(0);){d+=e.charAt(0);e=e.substring(1)+f.charAt(0);f=f.substring(1);var m=b(d,e)+b(e,f);m>=k&&(k=m,g=d,h=e,l=f)}a[c-1][1]!=g&&(g?a[c-1][1]=g:(a.splice(c-\n1,1),c--),a[c][1]=h,l?a[c+1][1]=l:(a.splice(c+1,1),c--))}c++}};diff_match_patch.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/;diff_match_patch.whitespaceRegex_=/\\s/;diff_match_patch.linebreakRegex_=/[\\r\\n]/;diff_match_patch.blanklineEndRegex_=/\\n\\r?\\n$/;diff_match_patch.blanklineStartRegex_=/^\\r?\\n\\r?\\n/;\ndiff_match_patch.prototype.diff_cleanupEfficiency=function(a){for(var b=!1,c=[],d=0,e=null,f=0,g=!1,h=!1,l=!1,k=!1;f<a.length;)a[f][0]==DIFF_EQUAL?(a[f][1].length<this.Diff_EditCost&&(l||k)?(c[d++]=f,g=l,h=k,e=a[f][1]):(d=0,e=null),l=k=!1):(a[f][0]==DIFF_DELETE?k=!0:l=!0,e&&(g&&h&&l&&k||e.length<this.Diff_EditCost/2&&3==g+h+l+k)&&(a.splice(c[d-1],0,[DIFF_DELETE,e]),a[c[d-1]+1][0]=DIFF_INSERT,d--,e=null,g&&h?(l=k=!0,d=0):(d--,f=0<d?c[d-1]:-1,l=k=!1),b=!0)),f++;b&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_cleanupMerge=function(a){a.push([DIFF_EQUAL,\"\"]);for(var b=0,c=0,d=0,e=\"\",f=\"\",g;b<a.length;)switch(a[b][0]){case DIFF_INSERT:d++;f+=a[b][1];b++;break;case DIFF_DELETE:c++;e+=a[b][1];b++;break;case DIFF_EQUAL:1<c+d?(0!==c&&0!==d&&(g=this.diff_commonPrefix(f,e),0!==g&&(0<b-c-d&&a[b-c-d-1][0]==DIFF_EQUAL?a[b-c-d-1][1]+=f.substring(0,g):(a.splice(0,0,[DIFF_EQUAL,f.substring(0,g)]),b++),f=f.substring(g),e=e.substring(g)),g=this.diff_commonSuffix(f,e),0!==g&&(a[b][1]=f.substring(f.length-\ng)+a[b][1],f=f.substring(0,f.length-g),e=e.substring(0,e.length-g))),0===c?a.splice(b-d,c+d,[DIFF_INSERT,f]):0===d?a.splice(b-c,c+d,[DIFF_DELETE,e]):a.splice(b-c-d,c+d,[DIFF_DELETE,e],[DIFF_INSERT,f]),b=b-c-d+(c?1:0)+(d?1:0)+1):0!==b&&a[b-1][0]==DIFF_EQUAL?(a[b-1][1]+=a[b][1],a.splice(b,1)):b++,c=d=0,f=e=\"\"}\"\"===a[a.length-1][1]&&a.pop();c=!1;for(b=1;b<a.length-1;)a[b-1][0]==DIFF_EQUAL&&a[b+1][0]==DIFF_EQUAL&&(a[b][1].substring(a[b][1].length-a[b-1][1].length)==a[b-1][1]?(a[b][1]=a[b-1][1]+a[b][1].substring(0,\na[b][1].length-a[b-1][1].length),a[b+1][1]=a[b-1][1]+a[b+1][1],a.splice(b-1,1),c=!0):a[b][1].substring(0,a[b+1][1].length)==a[b+1][1]&&(a[b-1][1]+=a[b+1][1],a[b][1]=a[b][1].substring(a[b+1][1].length)+a[b+1][1],a.splice(b+1,1),c=!0)),b++;c&&this.diff_cleanupMerge(a)};\ndiff_match_patch.prototype.diff_xIndex=function(a,b){var c=0,d=0,e=0,f=0,g;for(g=0;g<a.length;g++){a[g][0]!==DIFF_INSERT&&(c+=a[g][1].length);a[g][0]!==DIFF_DELETE&&(d+=a[g][1].length);if(c>b)break;e=c;f=d}return a.length!=g&&a[g][0]===DIFF_DELETE?f:f+(b-e)};\ndiff_match_patch.prototype.diff_prettyHtml=function(a){for(var b=[],c=/&/g,d=/</g,e=/>/g,f=/\\n/g,g=0;g<a.length;g++){var h=a[g][0],l=a[g][1].replace(c,\"&amp;\").replace(d,\"&lt;\").replace(e,\"&gt;\").replace(f,\"&para;<br>\");switch(h){case DIFF_INSERT:b[g]='<ins style=\"background:#e6ffe6;\">'+l+\"</ins>\";break;case DIFF_DELETE:b[g]='<del style=\"background:#ffe6e6;\">'+l+\"</del>\";break;case DIFF_EQUAL:b[g]=\"<span>\"+l+\"</span>\"}}return b.join(\"\")};\ndiff_match_patch.prototype.diff_text1=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_INSERT&&(b[c]=a[c][1]);return b.join(\"\")};diff_match_patch.prototype.diff_text2=function(a){for(var b=[],c=0;c<a.length;c++)a[c][0]!==DIFF_DELETE&&(b[c]=a[c][1]);return b.join(\"\")};\ndiff_match_patch.prototype.diff_levenshtein=function(a){for(var b=0,c=0,d=0,e=0;e<a.length;e++){var f=a[e][1];switch(a[e][0]){case DIFF_INSERT:c+=f.length;break;case DIFF_DELETE:d+=f.length;break;case DIFF_EQUAL:b+=Math.max(c,d),d=c=0}}return b+=Math.max(c,d)};\ndiff_match_patch.prototype.diff_toDelta=function(a){for(var b=[],c=0;c<a.length;c++)switch(a[c][0]){case DIFF_INSERT:b[c]=\"+\"+encodeURI(a[c][1]);break;case DIFF_DELETE:b[c]=\"-\"+a[c][1].length;break;case DIFF_EQUAL:b[c]=\"=\"+a[c][1].length}return b.join(\"\\t\").replace(/%20/g,\" \")};\ndiff_match_patch.prototype.diff_fromDelta=function(a,b){for(var c=[],d=0,e=0,f=b.split(/\\t/g),g=0;g<f.length;g++){var h=f[g].substring(1);switch(f[g].charAt(0)){case \"+\":try{c[d++]=[DIFF_INSERT,decodeURI(h)]}catch(k){throw Error(\"Illegal escape in diff_fromDelta: \"+h);}break;case \"-\":case \"=\":var l=parseInt(h,10);if(isNaN(l)||0>l)throw Error(\"Invalid number in diff_fromDelta: \"+h);h=a.substring(e,e+=l);\"=\"==f[g].charAt(0)?c[d++]=[DIFF_EQUAL,h]:c[d++]=[DIFF_DELETE,h];break;default:if(f[g])throw Error(\"Invalid diff operation in diff_fromDelta: \"+\nf[g]);}}if(e!=a.length)throw Error(\"Delta length (\"+e+\") does not equal source text length (\"+a.length+\").\");return c};diff_match_patch.prototype.match_main=function(a,b,c){if(null==a||null==b||null==c)throw Error(\"Null input. (match_main)\");c=Math.max(0,Math.min(c,a.length));return a==b?0:a.length?a.substring(c,c+b.length)==b?c:this.match_bitap_(a,b,c):-1};\ndiff_match_patch.prototype.match_bitap_=function(a,b,c){function d(a,d){var e=a/b.length,g=Math.abs(c-d);return f.Match_Distance?e+g/f.Match_Distance:g?1:e}if(b.length>this.Match_MaxBits)throw Error(\"Pattern too long for this browser.\");var e=this.match_alphabet_(b),f=this,g=this.Match_Threshold,h=a.indexOf(b,c);-1!=h&&(g=Math.min(d(0,h),g),h=a.lastIndexOf(b,c+b.length),-1!=h&&(g=Math.min(d(0,h),g)));var l=1<<b.length-1;h=-1;for(var k,m,p=b.length+a.length,x,w=0;w<b.length;w++){k=0;for(m=p;k<m;)d(w,\nc+m)<=g?k=m:p=m,m=Math.floor((p-k)/2+k);p=m;k=Math.max(1,c-m+1);var q=Math.min(c+m,a.length)+b.length;m=Array(q+2);for(m[q+1]=(1<<w)-1;q>=k;q--){var t=e[a.charAt(q-1)];m[q]=0===w?(m[q+1]<<1|1)&t:(m[q+1]<<1|1)&t|(x[q+1]|x[q])<<1|1|x[q+1];if(m[q]&l&&(t=d(w,q-1),t<=g))if(g=t,h=q-1,h>c)k=Math.max(1,2*c-h);else break}if(d(w+1,c)>g)break;x=m}return h};\ndiff_match_patch.prototype.match_alphabet_=function(a){for(var b={},c=0;c<a.length;c++)b[a.charAt(c)]=0;for(c=0;c<a.length;c++)b[a.charAt(c)]|=1<<a.length-c-1;return b};\ndiff_match_patch.prototype.patch_addContext_=function(a,b){if(0!=b.length){for(var c=b.substring(a.start2,a.start2+a.length1),d=0;b.indexOf(c)!=b.lastIndexOf(c)&&c.length<this.Match_MaxBits-this.Patch_Margin-this.Patch_Margin;)d+=this.Patch_Margin,c=b.substring(a.start2-d,a.start2+a.length1+d);d+=this.Patch_Margin;(c=b.substring(a.start2-d,a.start2))&&a.diffs.unshift([DIFF_EQUAL,c]);(d=b.substring(a.start2+a.length1,a.start2+a.length1+d))&&a.diffs.push([DIFF_EQUAL,d]);a.start1-=c.length;a.start2-=\nc.length;a.length1+=c.length+d.length;a.length2+=c.length+d.length}};\ndiff_match_patch.prototype.patch_make=function(a,b,c){if(\"string\"==typeof a&&\"string\"==typeof b&&\"undefined\"==typeof c){var d=a;b=this.diff_main(d,b,!0);2<b.length&&(this.diff_cleanupSemantic(b),this.diff_cleanupEfficiency(b))}else if(a&&\"object\"==typeof a&&\"undefined\"==typeof b&&\"undefined\"==typeof c)b=a,d=this.diff_text1(b);else if(\"string\"==typeof a&&b&&\"object\"==typeof b&&\"undefined\"==typeof c)d=a;else if(\"string\"==typeof a&&\"string\"==typeof b&&c&&\"object\"==typeof c)d=a,b=c;else throw Error(\"Unknown call format to patch_make.\");\nif(0===b.length)return[];c=[];a=new diff_match_patch.patch_obj;for(var e=0,f=0,g=0,h=d,l=0;l<b.length;l++){var k=b[l][0],m=b[l][1];e||k===DIFF_EQUAL||(a.start1=f,a.start2=g);switch(k){case DIFF_INSERT:a.diffs[e++]=b[l];a.length2+=m.length;d=d.substring(0,g)+m+d.substring(g);break;case DIFF_DELETE:a.length1+=m.length;a.diffs[e++]=b[l];d=d.substring(0,g)+d.substring(g+m.length);break;case DIFF_EQUAL:m.length<=2*this.Patch_Margin&&e&&b.length!=l+1?(a.diffs[e++]=b[l],a.length1+=m.length,a.length2+=m.length):\nm.length>=2*this.Patch_Margin&&e&&(this.patch_addContext_(a,h),c.push(a),a=new diff_match_patch.patch_obj,e=0,h=d,f=g)}k!==DIFF_INSERT&&(f+=m.length);k!==DIFF_DELETE&&(g+=m.length)}e&&(this.patch_addContext_(a,h),c.push(a));return c};\ndiff_match_patch.prototype.patch_deepCopy=function(a){for(var b=[],c=0;c<a.length;c++){var d=a[c],e=new diff_match_patch.patch_obj;e.diffs=[];for(var f=0;f<d.diffs.length;f++)e.diffs[f]=d.diffs[f].slice();e.start1=d.start1;e.start2=d.start2;e.length1=d.length1;e.length2=d.length2;b[c]=e}return b};\ndiff_match_patch.prototype.patch_apply=function(a,b){if(0==a.length)return[b,[]];a=this.patch_deepCopy(a);var c=this.patch_addPadding(a);b=c+b+c;this.patch_splitMax(a);for(var d=0,e=[],f=0;f<a.length;f++){var g=a[f].start2+d,h=this.diff_text1(a[f].diffs),l=-1;if(h.length>this.Match_MaxBits){var k=this.match_main(b,h.substring(0,this.Match_MaxBits),g);-1!=k&&(l=this.match_main(b,h.substring(h.length-this.Match_MaxBits),g+h.length-this.Match_MaxBits),-1==l||k>=l)&&(k=-1)}else k=this.match_main(b,h,\ng);if(-1==k)e[f]=!1,d-=a[f].length2-a[f].length1;else if(e[f]=!0,d=k-g,g=-1==l?b.substring(k,k+h.length):b.substring(k,l+this.Match_MaxBits),h==g)b=b.substring(0,k)+this.diff_text2(a[f].diffs)+b.substring(k+h.length);else if(g=this.diff_main(h,g,!1),h.length>this.Match_MaxBits&&this.diff_levenshtein(g)/h.length>this.Patch_DeleteThreshold)e[f]=!1;else{this.diff_cleanupSemanticLossless(g);h=0;var m;for(l=0;l<a[f].diffs.length;l++){var p=a[f].diffs[l];p[0]!==DIFF_EQUAL&&(m=this.diff_xIndex(g,h));p[0]===\nDIFF_INSERT?b=b.substring(0,k+m)+p[1]+b.substring(k+m):p[0]===DIFF_DELETE&&(b=b.substring(0,k+m)+b.substring(k+this.diff_xIndex(g,h+p[1].length)));p[0]!==DIFF_DELETE&&(h+=p[1].length)}}}b=b.substring(c.length,b.length-c.length);return[b,e]};\ndiff_match_patch.prototype.patch_addPadding=function(a){for(var b=this.Patch_Margin,c=\"\",d=1;d<=b;d++)c+=String.fromCharCode(d);for(d=0;d<a.length;d++)a[d].start1+=b,a[d].start2+=b;d=a[0];var e=d.diffs;if(0==e.length||e[0][0]!=DIFF_EQUAL)e.unshift([DIFF_EQUAL,c]),d.start1-=b,d.start2-=b,d.length1+=b,d.length2+=b;else if(b>e[0][1].length){var f=b-e[0][1].length;e[0][1]=c.substring(e[0][1].length)+e[0][1];d.start1-=f;d.start2-=f;d.length1+=f;d.length2+=f}d=a[a.length-1];e=d.diffs;0==e.length||e[e.length-\n1][0]!=DIFF_EQUAL?(e.push([DIFF_EQUAL,c]),d.length1+=b,d.length2+=b):b>e[e.length-1][1].length&&(f=b-e[e.length-1][1].length,e[e.length-1][1]+=c.substring(0,f),d.length1+=f,d.length2+=f);return c};\ndiff_match_patch.prototype.patch_splitMax=function(a){for(var b=this.Match_MaxBits,c=0;c<a.length;c++)if(!(a[c].length1<=b)){var d=a[c];a.splice(c--,1);for(var e=d.start1,f=d.start2,g=\"\";0!==d.diffs.length;){var h=new diff_match_patch.patch_obj,l=!0;h.start1=e-g.length;h.start2=f-g.length;\"\"!==g&&(h.length1=h.length2=g.length,h.diffs.push([DIFF_EQUAL,g]));for(;0!==d.diffs.length&&h.length1<b-this.Patch_Margin;){g=d.diffs[0][0];var k=d.diffs[0][1];g===DIFF_INSERT?(h.length2+=k.length,f+=k.length,h.diffs.push(d.diffs.shift()),\nl=!1):g===DIFF_DELETE&&1==h.diffs.length&&h.diffs[0][0]==DIFF_EQUAL&&k.length>2*b?(h.length1+=k.length,e+=k.length,l=!1,h.diffs.push([g,k]),d.diffs.shift()):(k=k.substring(0,b-h.length1-this.Patch_Margin),h.length1+=k.length,e+=k.length,g===DIFF_EQUAL?(h.length2+=k.length,f+=k.length):l=!1,h.diffs.push([g,k]),k==d.diffs[0][1]?d.diffs.shift():d.diffs[0][1]=d.diffs[0][1].substring(k.length))}g=this.diff_text2(h.diffs);g=g.substring(g.length-this.Patch_Margin);k=this.diff_text1(d.diffs).substring(0,\nthis.Patch_Margin);\"\"!==k&&(h.length1+=k.length,h.length2+=k.length,0!==h.diffs.length&&h.diffs[h.diffs.length-1][0]===DIFF_EQUAL?h.diffs[h.diffs.length-1][1]+=k:h.diffs.push([DIFF_EQUAL,k]));l||a.splice(++c,0,h)}}};diff_match_patch.prototype.patch_toText=function(a){for(var b=[],c=0;c<a.length;c++)b[c]=a[c];return b.join(\"\")};\ndiff_match_patch.prototype.patch_fromText=function(a){var b=[];if(!a)return b;a=a.split(\"\\n\");for(var c=0,d=/^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;c<a.length;){var e=a[c].match(d);if(!e)throw Error(\"Invalid patch string: \"+a[c]);var f=new diff_match_patch.patch_obj;b.push(f);f.start1=parseInt(e[1],10);\"\"===e[2]?(f.start1--,f.length1=1):\"0\"==e[2]?f.length1=0:(f.start1--,f.length1=parseInt(e[2],10));f.start2=parseInt(e[3],10);\"\"===e[4]?(f.start2--,f.length2=1):\"0\"==e[4]?f.length2=0:(f.start2--,f.length2=\nparseInt(e[4],10));for(c++;c<a.length;){e=a[c].charAt(0);try{var g=decodeURI(a[c].substring(1))}catch(h){throw Error(\"Illegal escape in patch_fromText: \"+g);}if(\"-\"==e)f.diffs.push([DIFF_DELETE,g]);else if(\"+\"==e)f.diffs.push([DIFF_INSERT,g]);else if(\" \"==e)f.diffs.push([DIFF_EQUAL,g]);else if(\"@\"==e)break;else if(\"\"!==e)throw Error('Invalid patch mode \"'+e+'\" in: '+g);c++}}return b};diff_match_patch.patch_obj=function(){this.diffs=[];this.start2=this.start1=null;this.length2=this.length1=0};\ndiff_match_patch.patch_obj.prototype.toString=function(){for(var a=[\"@@ -\"+(0===this.length1?this.start1+\",0\":1==this.length1?this.start1+1:this.start1+1+\",\"+this.length1)+\" +\"+(0===this.length2?this.start2+\",0\":1==this.length2?this.start2+1:this.start2+1+\",\"+this.length2)+\" @@\\n\"],b,c=0;c<this.diffs.length;c++){switch(this.diffs[c][0]){case DIFF_INSERT:b=\"+\";break;case DIFF_DELETE:b=\"-\";break;case DIFF_EQUAL:b=\" \"}a[c+1]=b+encodeURI(this.diffs[c][1])+\"\\n\"}return a.join(\"\").replace(/%20/g,\" \")};\nthis.diff_match_patch=diff_match_patch;this.DIFF_DELETE=DIFF_DELETE;this.DIFF_INSERT=DIFF_INSERT;this.DIFF_EQUAL=DIFF_EQUAL;\n}).call(exports);",
            "type": "application/javascript",
            "title": "$:/core/modules/utils/diff-match-patch/diff_match_patch.js",
            "module-type": "library"
        },
        "$:/core/modules/utils/dom/animations/slide.js": {
            "title": "$:/core/modules/utils/dom/animations/slide.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animations/slide.js\ntype: application/javascript\nmodule-type: animation\n\nA simple slide animation that varies the height of the element\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction slideOpen(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration();\n\t// Get the current height of the domNode\n\tvar computedStyle = window.getComputedStyle(domNode),\n\t\tcurrMarginBottom = parseInt(computedStyle.marginBottom,10),\n\t\tcurrMarginTop = parseInt(computedStyle.marginTop,10),\n\t\tcurrPaddingBottom = parseInt(computedStyle.paddingBottom,10),\n\t\tcurrPaddingTop = parseInt(computedStyle.paddingTop,10),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Reset the margin once the transition is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"none\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginBottom: currMarginBottom + \"px\"},\n\t\t{marginTop: currMarginTop + \"px\"},\n\t\t{paddingBottom: currPaddingBottom + \"px\"},\n\t\t{paddingTop: currPaddingTop + \"px\"},\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n}\n\nfunction slideClosed(domNode,options) {\n\toptions = options || {};\n\tvar duration = options.duration || $tw.utils.getAnimationDuration(),\n\t\tcurrHeight = domNode.offsetHeight;\n\t// Clear the properties we've set when the animation is over\n\tsetTimeout(function() {\n\t\t$tw.utils.setStyle(domNode,[\n\t\t\t{transition: \"none\"},\n\t\t\t{marginBottom: \"\"},\n\t\t\t{marginTop: \"\"},\n\t\t\t{paddingBottom: \"\"},\n\t\t\t{paddingTop: \"\"},\n\t\t\t{height: \"auto\"},\n\t\t\t{opacity: \"\"}\n\t\t]);\n\t\tif(options.callback) {\n\t\t\toptions.callback();\n\t\t}\n\t},duration);\n\t// Set up the initial position of the element\n\t$tw.utils.setStyle(domNode,[\n\t\t{height: currHeight + \"px\"},\n\t\t{opacity: \"1\"}\n\t]);\n\t$tw.utils.forceLayout(domNode);\n\t// Transition to the final position\n\t$tw.utils.setStyle(domNode,[\n\t\t{transition: \"margin-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"margin-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-top \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"padding-bottom \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"height \" + duration + \"ms ease-in-out, \" +\n\t\t\t\t\t\"opacity \" + duration + \"ms ease-in-out\"},\n\t\t{marginTop: \"0px\"},\n\t\t{marginBottom: \"0px\"},\n\t\t{paddingTop: \"0px\"},\n\t\t{paddingBottom: \"0px\"},\n\t\t{height: \"0px\"},\n\t\t{opacity: \"0\"}\n\t]);\n}\n\nexports.slide = {\n\topen: slideOpen,\n\tclose: slideClosed\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "animation"
        },
        "$:/core/modules/utils/dom/animator.js": {
            "title": "$:/core/modules/utils/dom/animator.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/animator.js\ntype: application/javascript\nmodule-type: utils\n\nOrchestrates animations and transitions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Animator() {\n\t// Get the registered animation modules\n\tthis.animations = {};\n\t$tw.modules.applyMethods(\"animation\",this.animations);\n}\n\nAnimator.prototype.perform = function(type,domNode,options) {\n\toptions = options || {};\n\t// Find an animation that can handle this type\n\tvar chosenAnimation;\n\t$tw.utils.each(this.animations,function(animation,name) {\n\t\tif($tw.utils.hop(animation,type)) {\n\t\t\tchosenAnimation = animation[type];\n\t\t}\n\t});\n\tif(!chosenAnimation) {\n\t\tchosenAnimation = function(domNode,options) {\n\t\t\tif(options.callback) {\n\t\t\t\toptions.callback();\n\t\t\t}\n\t\t};\n\t}\n\t// Call the animation\n\tchosenAnimation(domNode,options);\n};\n\nexports.Animator = Animator;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/browser.js": {
            "title": "$:/core/modules/utils/dom/browser.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/browser.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser feature detection\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nSet style properties of an element\n\telement: dom node\n\tstyles: ordered array of {name: value} pairs\n*/\nexports.setStyle = function(element,styles) {\n\tif(element.nodeType === 1) { // Element.ELEMENT_NODE\n\t\tfor(var t=0; t<styles.length; t++) {\n\t\t\tfor(var styleName in styles[t]) {\n\t\t\t\telement.style[$tw.utils.convertStyleNameToPropertyName(styleName)] = styles[t][styleName];\n\t\t\t}\n\t\t}\n\t}\n};\n\n/*\nConverts a standard CSS property name into the local browser-specific equivalent. For example:\n\t\"background-color\" --> \"backgroundColor\"\n\t\"transition\" --> \"webkitTransition\"\n*/\n\nvar styleNameCache = {}; // We'll cache the style name conversions\n\nexports.convertStyleNameToPropertyName = function(styleName) {\n\t// Return from the cache if we can\n\tif(styleNameCache[styleName]) {\n\t\treturn styleNameCache[styleName];\n\t}\n\t// Convert it by first removing any hyphens\n\tvar propertyName = $tw.utils.unHyphenateCss(styleName);\n\t// Then check if it needs a prefix\n\tif($tw.browser && document.body.style[propertyName] === undefined) {\n\t\tvar prefixes = [\"O\",\"MS\",\"Moz\",\"webkit\"];\n\t\tfor(var t=0; t<prefixes.length; t++) {\n\t\t\tvar prefixedName = prefixes[t] + propertyName.substr(0,1).toUpperCase() + propertyName.substr(1);\n\t\t\tif(document.body.style[prefixedName] !== undefined) {\n\t\t\t\tpropertyName = prefixedName;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\t// Put it in the cache too\n\tstyleNameCache[styleName] = propertyName;\n\treturn propertyName;\n};\n\n/*\nConverts a JS format CSS property name back into the dashed form used in CSS declarations. For example:\n\t\"backgroundColor\" --> \"background-color\"\n\t\"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.convertPropertyNameToStyleName = function(propertyName) {\n\t// Rehyphenate the name\n\tvar styleName = $tw.utils.hyphenateCss(propertyName);\n\t// If there's a webkit prefix, add a dash (other browsers have uppercase prefixes, and so get the dash automatically)\n\tif(styleName.indexOf(\"webkit\") === 0) {\n\t\tstyleName = \"-\" + styleName;\n\t} else if(styleName.indexOf(\"-m-s\") === 0) {\n\t\tstyleName = \"-ms\" + styleName.substr(4);\n\t}\n\treturn styleName;\n};\n\n/*\nRound trip a stylename to a property name and back again. For example:\n\t\"transform\" --> \"webkitTransform\" --> \"-webkit-transform\"\n*/\nexports.roundTripPropertyName = function(propertyName) {\n\treturn $tw.utils.convertPropertyNameToStyleName($tw.utils.convertStyleNameToPropertyName(propertyName));\n};\n\n/*\nConverts a standard event name into the local browser specific equivalent. For example:\n\t\"animationEnd\" --> \"webkitAnimationEnd\"\n*/\n\nvar eventNameCache = {}; // We'll cache the conversions\n\nvar eventNameMappings = {\n\t\"transitionEnd\": {\n\t\tcorrespondingCssProperty: \"transition\",\n\t\tmappings: {\n\t\t\ttransition: \"transitionend\",\n\t\t\tOTransition: \"oTransitionEnd\",\n\t\t\tMSTransition: \"msTransitionEnd\",\n\t\t\tMozTransition: \"transitionend\",\n\t\t\twebkitTransition: \"webkitTransitionEnd\"\n\t\t}\n\t},\n\t\"animationEnd\": {\n\t\tcorrespondingCssProperty: \"animation\",\n\t\tmappings: {\n\t\t\tanimation: \"animationend\",\n\t\t\tOAnimation: \"oAnimationEnd\",\n\t\t\tMSAnimation: \"msAnimationEnd\",\n\t\t\tMozAnimation: \"animationend\",\n\t\t\twebkitAnimation: \"webkitAnimationEnd\"\n\t\t}\n\t}\n};\n\nexports.convertEventName = function(eventName) {\n\tif(eventNameCache[eventName]) {\n\t\treturn eventNameCache[eventName];\n\t}\n\tvar newEventName = eventName,\n\t\tmappings = eventNameMappings[eventName];\n\tif(mappings) {\n\t\tvar convertedProperty = $tw.utils.convertStyleNameToPropertyName(mappings.correspondingCssProperty);\n\t\tif(mappings.mappings[convertedProperty]) {\n\t\t\tnewEventName = mappings.mappings[convertedProperty];\n\t\t}\n\t}\n\t// Put it in the cache too\n\teventNameCache[eventName] = newEventName;\n\treturn newEventName;\n};\n\n/*\nReturn the names of the fullscreen APIs\n*/\nexports.getFullScreenApis = function() {\n\tvar d = document,\n\t\tdb = d.body,\n\t\tresult = {\n\t\t\"_requestFullscreen\": db.webkitRequestFullscreen !== undefined ? \"webkitRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.mozRequestFullScreen !== undefined ? \"mozRequestFullScreen\" :\n\t\t\t\t\t\t\tdb.msRequestFullscreen !== undefined ? \"msRequestFullscreen\" :\n\t\t\t\t\t\t\tdb.requestFullscreen !== undefined ? \"requestFullscreen\" : \"\",\n\t\t\"_exitFullscreen\": d.webkitExitFullscreen !== undefined ? \"webkitExitFullscreen\" :\n\t\t\t\t\t\t\td.mozCancelFullScreen !== undefined ? \"mozCancelFullScreen\" :\n\t\t\t\t\t\t\td.msExitFullscreen !== undefined ? \"msExitFullscreen\" :\n\t\t\t\t\t\t\td.exitFullscreen !== undefined ? \"exitFullscreen\" : \"\",\n\t\t\"_fullscreenElement\": d.webkitFullscreenElement !== undefined ? \"webkitFullscreenElement\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozFullScreenElement\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"msFullscreenElement\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenElement\" : \"\",\n\t\t\"_fullscreenChange\": d.webkitFullscreenElement !== undefined ? \"webkitfullscreenchange\" :\n\t\t\t\t\t\t\td.mozFullScreenElement !== undefined ? \"mozfullscreenchange\" :\n\t\t\t\t\t\t\td.msFullscreenElement !== undefined ? \"MSFullscreenChange\" :\n\t\t\t\t\t\t\td.fullscreenElement !== undefined ? \"fullscreenchange\" : \"\"\n\t};\n\tif(!result._requestFullscreen || !result._exitFullscreen || !result._fullscreenElement || !result._fullscreenChange) {\n\t\treturn null;\n\t} else {\n\t\treturn result;\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/csscolorparser.js": {
            "title": "$:/core/modules/utils/dom/csscolorparser.js",
            "text": "// (c) Dean McNamee <dean@gmail.com>, 2012.\n//\n// https://github.com/deanm/css-color-parser-js\n//\n// Permission is hereby granted, free of charge, to any person obtaining a copy\n// of this software and associated documentation files (the \"Software\"), to\n// deal in the Software without restriction, including without limitation the\n// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or\n// sell copies of the Software, and to permit persons to whom the Software is\n// furnished to do so, subject to the following conditions:\n//\n// The above copyright notice and this permission notice shall be included in\n// all copies or substantial portions of the Software.\n//\n// THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS\n// IN THE SOFTWARE.\n\n// http://www.w3.org/TR/css3-color/\nvar kCSSColorTable = {\n  \"transparent\": [0,0,0,0], \"aliceblue\": [240,248,255,1],\n  \"antiquewhite\": [250,235,215,1], \"aqua\": [0,255,255,1],\n  \"aquamarine\": [127,255,212,1], \"azure\": [240,255,255,1],\n  \"beige\": [245,245,220,1], \"bisque\": [255,228,196,1],\n  \"black\": [0,0,0,1], \"blanchedalmond\": [255,235,205,1],\n  \"blue\": [0,0,255,1], \"blueviolet\": [138,43,226,1],\n  \"brown\": [165,42,42,1], \"burlywood\": [222,184,135,1],\n  \"cadetblue\": [95,158,160,1], \"chartreuse\": [127,255,0,1],\n  \"chocolate\": [210,105,30,1], \"coral\": [255,127,80,1],\n  \"cornflowerblue\": [100,149,237,1], \"cornsilk\": [255,248,220,1],\n  \"crimson\": [220,20,60,1], \"cyan\": [0,255,255,1],\n  \"darkblue\": [0,0,139,1], \"darkcyan\": [0,139,139,1],\n  \"darkgoldenrod\": [184,134,11,1], \"darkgray\": [169,169,169,1],\n  \"darkgreen\": [0,100,0,1], \"darkgrey\": [169,169,169,1],\n  \"darkkhaki\": [189,183,107,1], \"darkmagenta\": [139,0,139,1],\n  \"darkolivegreen\": [85,107,47,1], \"darkorange\": [255,140,0,1],\n  \"darkorchid\": [153,50,204,1], \"darkred\": [139,0,0,1],\n  \"darksalmon\": [233,150,122,1], \"darkseagreen\": [143,188,143,1],\n  \"darkslateblue\": [72,61,139,1], \"darkslategray\": [47,79,79,1],\n  \"darkslategrey\": [47,79,79,1], \"darkturquoise\": [0,206,209,1],\n  \"darkviolet\": [148,0,211,1], \"deeppink\": [255,20,147,1],\n  \"deepskyblue\": [0,191,255,1], \"dimgray\": [105,105,105,1],\n  \"dimgrey\": [105,105,105,1], \"dodgerblue\": [30,144,255,1],\n  \"firebrick\": [178,34,34,1], \"floralwhite\": [255,250,240,1],\n  \"forestgreen\": [34,139,34,1], \"fuchsia\": [255,0,255,1],\n  \"gainsboro\": [220,220,220,1], \"ghostwhite\": [248,248,255,1],\n  \"gold\": [255,215,0,1], \"goldenrod\": [218,165,32,1],\n  \"gray\": [128,128,128,1], \"green\": [0,128,0,1],\n  \"greenyellow\": [173,255,47,1], \"grey\": [128,128,128,1],\n  \"honeydew\": [240,255,240,1], \"hotpink\": [255,105,180,1],\n  \"indianred\": [205,92,92,1], \"indigo\": [75,0,130,1],\n  \"ivory\": [255,255,240,1], \"khaki\": [240,230,140,1],\n  \"lavender\": [230,230,250,1], \"lavenderblush\": [255,240,245,1],\n  \"lawngreen\": [124,252,0,1], \"lemonchiffon\": [255,250,205,1],\n  \"lightblue\": [173,216,230,1], \"lightcoral\": [240,128,128,1],\n  \"lightcyan\": [224,255,255,1], \"lightgoldenrodyellow\": [250,250,210,1],\n  \"lightgray\": [211,211,211,1], \"lightgreen\": [144,238,144,1],\n  \"lightgrey\": [211,211,211,1], \"lightpink\": [255,182,193,1],\n  \"lightsalmon\": [255,160,122,1], \"lightseagreen\": [32,178,170,1],\n  \"lightskyblue\": [135,206,250,1], \"lightslategray\": [119,136,153,1],\n  \"lightslategrey\": [119,136,153,1], \"lightsteelblue\": [176,196,222,1],\n  \"lightyellow\": [255,255,224,1], \"lime\": [0,255,0,1],\n  \"limegreen\": [50,205,50,1], \"linen\": [250,240,230,1],\n  \"magenta\": [255,0,255,1], \"maroon\": [128,0,0,1],\n  \"mediumaquamarine\": [102,205,170,1], \"mediumblue\": [0,0,205,1],\n  \"mediumorchid\": [186,85,211,1], \"mediumpurple\": [147,112,219,1],\n  \"mediumseagreen\": [60,179,113,1], \"mediumslateblue\": [123,104,238,1],\n  \"mediumspringgreen\": [0,250,154,1], \"mediumturquoise\": [72,209,204,1],\n  \"mediumvioletred\": [199,21,133,1], \"midnightblue\": [25,25,112,1],\n  \"mintcream\": [245,255,250,1], \"mistyrose\": [255,228,225,1],\n  \"moccasin\": [255,228,181,1], \"navajowhite\": [255,222,173,1],\n  \"navy\": [0,0,128,1], \"oldlace\": [253,245,230,1],\n  \"olive\": [128,128,0,1], \"olivedrab\": [107,142,35,1],\n  \"orange\": [255,165,0,1], \"orangered\": [255,69,0,1],\n  \"orchid\": [218,112,214,1], \"palegoldenrod\": [238,232,170,1],\n  \"palegreen\": [152,251,152,1], \"paleturquoise\": [175,238,238,1],\n  \"palevioletred\": [219,112,147,1], \"papayawhip\": [255,239,213,1],\n  \"peachpuff\": [255,218,185,1], \"peru\": [205,133,63,1],\n  \"pink\": [255,192,203,1], \"plum\": [221,160,221,1],\n  \"powderblue\": [176,224,230,1], \"purple\": [128,0,128,1],\n  \"red\": [255,0,0,1], \"rosybrown\": [188,143,143,1],\n  \"royalblue\": [65,105,225,1], \"saddlebrown\": [139,69,19,1],\n  \"salmon\": [250,128,114,1], \"sandybrown\": [244,164,96,1],\n  \"seagreen\": [46,139,87,1], \"seashell\": [255,245,238,1],\n  \"sienna\": [160,82,45,1], \"silver\": [192,192,192,1],\n  \"skyblue\": [135,206,235,1], \"slateblue\": [106,90,205,1],\n  \"slategray\": [112,128,144,1], \"slategrey\": [112,128,144,1],\n  \"snow\": [255,250,250,1], \"springgreen\": [0,255,127,1],\n  \"steelblue\": [70,130,180,1], \"tan\": [210,180,140,1],\n  \"teal\": [0,128,128,1], \"thistle\": [216,191,216,1],\n  \"tomato\": [255,99,71,1], \"turquoise\": [64,224,208,1],\n  \"violet\": [238,130,238,1], \"wheat\": [245,222,179,1],\n  \"white\": [255,255,255,1], \"whitesmoke\": [245,245,245,1],\n  \"yellow\": [255,255,0,1], \"yellowgreen\": [154,205,50,1]}\n\nfunction clamp_css_byte(i) {  // Clamp to integer 0 .. 255.\n  i = Math.round(i);  // Seems to be what Chrome does (vs truncation).\n  return i < 0 ? 0 : i > 255 ? 255 : i;\n}\n\nfunction clamp_css_float(f) {  // Clamp to float 0.0 .. 1.0.\n  return f < 0 ? 0 : f > 1 ? 1 : f;\n}\n\nfunction parse_css_int(str) {  // int or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_byte(parseFloat(str) / 100 * 255);\n  return clamp_css_byte(parseInt(str));\n}\n\nfunction parse_css_float(str) {  // float or percentage.\n  if (str[str.length - 1] === '%')\n    return clamp_css_float(parseFloat(str) / 100);\n  return clamp_css_float(parseFloat(str));\n}\n\nfunction css_hue_to_rgb(m1, m2, h) {\n  if (h < 0) h += 1;\n  else if (h > 1) h -= 1;\n\n  if (h * 6 < 1) return m1 + (m2 - m1) * h * 6;\n  if (h * 2 < 1) return m2;\n  if (h * 3 < 2) return m1 + (m2 - m1) * (2/3 - h) * 6;\n  return m1;\n}\n\nfunction parseCSSColor(css_str) {\n  // Remove all whitespace, not compliant, but should just be more accepting.\n  var str = css_str.replace(/ /g, '').toLowerCase();\n\n  // Color keywords (and transparent) lookup.\n  if (str in kCSSColorTable) return kCSSColorTable[str].slice();  // dup.\n\n  // #abc and #abc123 syntax.\n  if (str[0] === '#') {\n    if (str.length === 4) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xfff)) return null;  // Covers NaN.\n      return [((iv & 0xf00) >> 4) | ((iv & 0xf00) >> 8),\n              (iv & 0xf0) | ((iv & 0xf0) >> 4),\n              (iv & 0xf) | ((iv & 0xf) << 4),\n              1];\n    } else if (str.length === 7) {\n      var iv = parseInt(str.substr(1), 16);  // TODO(deanm): Stricter parsing.\n      if (!(iv >= 0 && iv <= 0xffffff)) return null;  // Covers NaN.\n      return [(iv & 0xff0000) >> 16,\n              (iv & 0xff00) >> 8,\n              iv & 0xff,\n              1];\n    }\n\n    return null;\n  }\n\n  var op = str.indexOf('('), ep = str.indexOf(')');\n  if (op !== -1 && ep + 1 === str.length) {\n    var fname = str.substr(0, op);\n    var params = str.substr(op+1, ep-(op+1)).split(',');\n    var alpha = 1;  // To allow case fallthrough.\n    switch (fname) {\n      case 'rgba':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'rgb':\n        if (params.length !== 3) return null;\n        return [parse_css_int(params[0]),\n                parse_css_int(params[1]),\n                parse_css_int(params[2]),\n                alpha];\n      case 'hsla':\n        if (params.length !== 4) return null;\n        alpha = parse_css_float(params.pop());\n        // Fall through.\n      case 'hsl':\n        if (params.length !== 3) return null;\n        var h = (((parseFloat(params[0]) % 360) + 360) % 360) / 360;  // 0 .. 1\n        // NOTE(deanm): According to the CSS spec s/l should only be\n        // percentages, but we don't bother and let float or percentage.\n        var s = parse_css_float(params[1]);\n        var l = parse_css_float(params[2]);\n        var m2 = l <= 0.5 ? l * (s + 1) : l + s - l * s;\n        var m1 = l * 2 - m2;\n        return [clamp_css_byte(css_hue_to_rgb(m1, m2, h+1/3) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h) * 255),\n                clamp_css_byte(css_hue_to_rgb(m1, m2, h-1/3) * 255),\n                alpha];\n      default:\n        return null;\n    }\n  }\n\n  return null;\n}\n\ntry { exports.parseCSSColor = parseCSSColor } catch(e) { }\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom.js": {
            "title": "$:/core/modules/utils/dom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static DOM-related utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nDetermines whether element 'a' contains element 'b'\nCode thanks to John Resig, http://ejohn.org/blog/comparing-document-position/\n*/\nexports.domContains = function(a,b) {\n\treturn a.contains ?\n\t\ta !== b && a.contains(b) :\n\t\t!!(a.compareDocumentPosition(b) & 16);\n};\n\nexports.removeChildren = function(node) {\n\twhile(node.hasChildNodes()) {\n\t\tnode.removeChild(node.firstChild);\n\t}\n};\n\nexports.hasClass = function(el,className) {\n\treturn el && el.hasAttribute && el.hasAttribute(\"class\") && el.getAttribute(\"class\").split(\" \").indexOf(className) !== -1;\n};\n\nexports.addClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \");\n\tif(c.indexOf(className) === -1) {\n\t\tc.push(className);\n\t\tel.setAttribute(\"class\",c.join(\" \"));\n\t}\n};\n\nexports.removeClass = function(el,className) {\n\tvar c = (el.getAttribute(\"class\") || \"\").split(\" \"),\n\t\tp = c.indexOf(className);\n\tif(p !== -1) {\n\t\tc.splice(p,1);\n\t\tel.setAttribute(\"class\",c.join(\" \"));\n\t}\n};\n\nexports.toggleClass = function(el,className,status) {\n\tif(status === undefined) {\n\t\tstatus = !exports.hasClass(el,className);\n\t}\n\tif(status) {\n\t\texports.addClass(el,className);\n\t} else {\n\t\texports.removeClass(el,className);\n\t}\n};\n\n/*\nGet the first parent element that has scrollbars or use the body as fallback.\n*/\nexports.getScrollContainer = function(el) {\n\tvar doc = el.ownerDocument;\n\twhile(el.parentNode) {\t\n\t\tel = el.parentNode;\n\t\tif(el.scrollTop) {\n\t\t\treturn el;\n\t\t}\n\t}\n\treturn doc.body;\n};\n\n/*\nGet the scroll position of the viewport\nReturns:\n\t{\n\t\tx: horizontal scroll position in pixels,\n\t\ty: vertical scroll position in pixels\n\t}\n*/\nexports.getScrollPosition = function(srcWindow) {\n\tvar scrollWindow = srcWindow || window;\n\tif(\"scrollX\" in scrollWindow) {\n\t\treturn {x: scrollWindow.scrollX, y: scrollWindow.scrollY};\n\t} else {\n\t\treturn {x: scrollWindow.document.documentElement.scrollLeft, y: scrollWindow.document.documentElement.scrollTop};\n\t}\n};\n\n/*\nAdjust the height of a textarea to fit its content, preserving scroll position, and return the height\n*/\nexports.resizeTextAreaToFit = function(domNode,minHeight) {\n\t// Get the scroll container and register the current scroll position\n\tvar container = $tw.utils.getScrollContainer(domNode),\n\t\tscrollTop = container.scrollTop;\n    // Measure the specified minimum height\n\tdomNode.style.height = minHeight;\n\tvar measuredHeight = domNode.offsetHeight || parseInt(minHeight,10);\n\t// Set its height to auto so that it snaps to the correct height\n\tdomNode.style.height = \"auto\";\n\t// Calculate the revised height\n\tvar newHeight = Math.max(domNode.scrollHeight + domNode.offsetHeight - domNode.clientHeight,measuredHeight);\n\t// Only try to change the height if it has changed\n\tif(newHeight !== domNode.offsetHeight) {\n\t\tdomNode.style.height = newHeight + \"px\";\n\t\t// Make sure that the dimensions of the textarea are recalculated\n\t\t$tw.utils.forceLayout(domNode);\n\t\t// Set the container to the position we registered at the beginning\n\t\tcontainer.scrollTop = scrollTop;\n\t}\n\treturn newHeight;\n};\n\n/*\nGets the bounding rectangle of an element in absolute page coordinates\n*/\nexports.getBoundingPageRect = function(element) {\n\tvar scrollPos = $tw.utils.getScrollPosition(element.ownerDocument.defaultView),\n\t\tclientRect = element.getBoundingClientRect();\n\treturn {\n\t\tleft: clientRect.left + scrollPos.x,\n\t\twidth: clientRect.width,\n\t\tright: clientRect.right + scrollPos.x,\n\t\ttop: clientRect.top + scrollPos.y,\n\t\theight: clientRect.height,\n\t\tbottom: clientRect.bottom + scrollPos.y\n\t};\n};\n\n/*\nSaves a named password in the browser\n*/\nexports.savePassword = function(name,password) {\n\tvar done = false;\n\ttry {\n\t\twindow.localStorage.setItem(\"tw5-password-\" + name,password);\n\t\tdone = true;\n\t} catch(e) {\n\t}\n\tif(!done) {\n\t\t$tw.savedPasswords = $tw.savedPasswords || Object.create(null);\n\t\t$tw.savedPasswords[name] = password;\n\t}\n};\n\n/*\nRetrieve a named password from the browser\n*/\nexports.getPassword = function(name) {\n\tvar value;\n\ttry {\n\t\tvalue = window.localStorage.getItem(\"tw5-password-\" + name);\n\t} catch(e) {\n\t}\n\tif(value !== undefined) {\n\t\treturn value;\n\t} else {\n\t\treturn ($tw.savedPasswords || Object.create(null))[name] || \"\";\n\t}\n};\n\n/*\nForce layout of a dom node and its descendents\n*/\nexports.forceLayout = function(element) {\n\tvar dummy = element.offsetWidth;\n};\n\n/*\nPulse an element for debugging purposes\n*/\nexports.pulseElement = function(element) {\n\t// Event handler to remove the class at the end\n\telement.addEventListener($tw.browser.animationEnd,function handler(event) {\n\t\telement.removeEventListener($tw.browser.animationEnd,handler,false);\n\t\t$tw.utils.removeClass(element,\"pulse\");\n\t},false);\n\t// Apply the pulse class\n\t$tw.utils.removeClass(element,\"pulse\");\n\t$tw.utils.forceLayout(element);\n\t$tw.utils.addClass(element,\"pulse\");\n};\n\n/*\nAttach specified event handlers to a DOM node\ndomNode: where to attach the event handlers\nevents: array of event handlers to be added (see below)\nEach entry in the events array is an object with these properties:\nhandlerFunction: optional event handler function\nhandlerObject: optional event handler object\nhandlerMethod: optionally specifies object handler method name (defaults to `handleEvent`)\n*/\nexports.addEventListeners = function(domNode,events) {\n\t$tw.utils.each(events,function(eventInfo) {\n\t\tvar handler;\n\t\tif(eventInfo.handlerFunction) {\n\t\t\thandler = eventInfo.handlerFunction;\n\t\t} else if(eventInfo.handlerObject) {\n\t\t\tif(eventInfo.handlerMethod) {\n\t\t\t\thandler = function(event) {\n\t\t\t\t\teventInfo.handlerObject[eventInfo.handlerMethod].call(eventInfo.handlerObject,event);\n\t\t\t\t};\t\n\t\t\t} else {\n\t\t\t\thandler = eventInfo.handlerObject;\n\t\t\t}\n\t\t}\n\t\tdomNode.addEventListener(eventInfo.name,handler,false);\n\t});\n};\n\n/*\nGet the computed styles applied to an element as an array of strings of individual CSS properties\n*/\nexports.getComputedStyles = function(domNode) {\n\tvar textAreaStyles = window.getComputedStyle(domNode,null),\n\t\tstyleDefs = [],\n\t\tname;\n\tfor(var t=0; t<textAreaStyles.length; t++) {\n\t\tname = textAreaStyles[t];\n\t\tstyleDefs.push(name + \": \" + textAreaStyles.getPropertyValue(name) + \";\");\n\t}\n\treturn styleDefs;\n};\n\n/*\nApply a set of styles passed as an array of strings of individual CSS properties\n*/\nexports.setStyles = function(domNode,styleDefs) {\n\tdomNode.style.cssText = styleDefs.join(\"\");\n};\n\n/*\nCopy the computed styles from a source element to a destination element\n*/\nexports.copyStyles = function(srcDomNode,dstDomNode) {\n\t$tw.utils.setStyles(dstDomNode,$tw.utils.getComputedStyles(srcDomNode));\n};\n\n/*\nCopy plain text to the clipboard on browsers that support it\n*/\nexports.copyToClipboard = function(text,options) {\n\toptions = options || {};\n\tvar textArea = document.createElement(\"textarea\");\n\ttextArea.style.position = \"fixed\";\n\ttextArea.style.top = 0;\n\ttextArea.style.left = 0;\n\ttextArea.style.fontSize = \"12pt\";\n\ttextArea.style.width = \"2em\";\n\ttextArea.style.height = \"2em\";\n\ttextArea.style.padding = 0;\n\ttextArea.style.border = \"none\";\n\ttextArea.style.outline = \"none\";\n\ttextArea.style.boxShadow = \"none\";\n\ttextArea.style.background = \"transparent\";\n\ttextArea.value = text;\n\tdocument.body.appendChild(textArea);\n\ttextArea.select();\n\ttextArea.setSelectionRange(0,text.length);\n\tvar succeeded = false;\n\ttry {\n\t\tsucceeded = document.execCommand(\"copy\");\n\t} catch (err) {\n\t}\n\tif(!options.doNotNotify) {\n\t\t$tw.notifier.display(succeeded ? \"$:/language/Notifications/CopiedToClipboard/Succeeded\" : \"$:/language/Notifications/CopiedToClipboard/Failed\");\n\t}\n\tdocument.body.removeChild(textArea);\n};\n\nexports.getLocationPath = function() {\n\treturn window.location.toString().split(\"#\")[0];\n};\n\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/dragndrop.js": {
            "title": "$:/core/modules/utils/dom/dragndrop.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/dragndrop.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser data transfer utilities, used with the clipboard and drag and drop\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nOptions:\n\ndomNode: dom node to make draggable\ndragImageType: \"pill\" or \"dom\"\ndragTiddlerFn: optional function to retrieve the title of tiddler to drag\ndragFilterFn: optional function to retreive the filter defining a list of tiddlers to drag\nwidget: widget to use as the contect for the filter\n*/\nexports.makeDraggable = function(options) {\n\tvar dragImageType = options.dragImageType || \"dom\",\n\t\tdragImage,\n\t\tdomNode = options.domNode;\n\t// Make the dom node draggable (not necessary for anchor tags)\n\tif((domNode.tagName || \"\").toLowerCase() !== \"a\") {\n\t\tdomNode.setAttribute(\"draggable\",\"true\");\t\t\n\t}\n\t// Add event handlers\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"dragstart\", handlerFunction: function(event) {\n\t\t\tif(event.dataTransfer === undefined) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// Collect the tiddlers being dragged\n\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \tstartActions = options.startActions;\n\t\t\tif(dragFilter) {\n\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t}\n\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t// Check that we've something to drag\n\t\t\tif(titles.length > 0 && event.target === domNode) {\n\t\t\t\t// Mark the drag in progress\n\t\t\t\t$tw.dragInProgress = domNode;\n\t\t\t\t// Set the dragging class on the element being dragged\n\t\t\t\t$tw.utils.addClass(event.target,\"tc-dragging\");\n\t\t\t\t// Invoke drag-start actions if given\n\t\t\t\tif(startActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(startActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Create the drag image elements\n\t\t\t\tdragImage = options.widget.document.createElement(\"div\");\n\t\t\t\tdragImage.className = \"tc-tiddler-dragger\";\n\t\t\t\tvar inner = options.widget.document.createElement(\"div\");\n\t\t\t\tinner.className = \"tc-tiddler-dragger-inner\";\n\t\t\t\tinner.appendChild(options.widget.document.createTextNode(\n\t\t\t\t\ttitles.length === 1 ? \n\t\t\t\t\t\ttitles[0] :\n\t\t\t\t\t\ttitles.length + \" tiddlers\"\n\t\t\t\t));\n\t\t\t\tdragImage.appendChild(inner);\n\t\t\t\toptions.widget.document.body.appendChild(dragImage);\n\t\t\t\t// Set the data transfer properties\n\t\t\t\tvar dataTransfer = event.dataTransfer;\n\t\t\t\t// Set up the image\n\t\t\t\tdataTransfer.effectAllowed = \"all\";\n\t\t\t\tif(dataTransfer.setDragImage) {\n\t\t\t\t\tif(dragImageType === \"pill\") {\n\t\t\t\t\t\tdataTransfer.setDragImage(dragImage.firstChild,-16,-16);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvar r = domNode.getBoundingClientRect();\n\t\t\t\t\t\tdataTransfer.setDragImage(domNode,event.clientX-r.left,event.clientY-r.top);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Set up the data transfer\n\t\t\t\tif(dataTransfer.clearData) {\n\t\t\t\t\tdataTransfer.clearData();\t\t\t\t\t\n\t\t\t\t}\n\t\t\t\tvar jsonData = [];\n\t\t\t\tif(titles.length > 1) {\n\t\t\t\t\ttitles.forEach(function(title) {\n\t\t\t\t\t\tjsonData.push(options.widget.wiki.getTiddlerAsJson(title));\n\t\t\t\t\t});\n\t\t\t\t\tjsonData = \"[\" + jsonData.join(\",\") + \"]\";\n\t\t\t\t} else {\n\t\t\t\t\tjsonData = options.widget.wiki.getTiddlerAsJson(titles[0]);\n\t\t\t\t}\n\t\t\t\t// IE doesn't like these content types\n\t\t\t\tif(!$tw.browser.isIE) {\n\t\t\t\t\tdataTransfer.setData(\"text/vnd.tiddler\",jsonData);\n\t\t\t\t\tdataTransfer.setData(\"text/plain\",titleString);\n\t\t\t\t\tdataTransfer.setData(\"text/x-moz-url\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\t}\n\t\t\t\tdataTransfer.setData(\"URL\",\"data:text/vnd.tiddler,\" + encodeURIComponent(jsonData));\n\t\t\t\tdataTransfer.setData(\"Text\",titleString);\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn false;\n\t\t}},\n\t\t{name: \"dragend\", handlerFunction: function(event) {\n\t\t\tif(event.target === domNode) {\n\t\t\t\t// Collect the tiddlers being dragged\n\t\t\t\tvar dragTiddler = options.dragTiddlerFn && options.dragTiddlerFn(),\n\t\t\t\t\tdragFilter = options.dragFilterFn && options.dragFilterFn(),\n\t\t\t\t\ttitles = dragTiddler ? [dragTiddler] : [],\n\t\t\t    \t\tendActions = options.endActions;\n\t\t\t\tif(dragFilter) {\n\t\t\t\t\ttitles.push.apply(titles,options.widget.wiki.filterTiddlers(dragFilter,options.widget));\n\t\t\t\t}\n\t\t\t\tvar titleString = $tw.utils.stringifyList(titles);\n\t\t\t\t$tw.dragInProgress = null;\n\t\t\t\t// Invoke drag-end actions if given\n\t\t\t\tif(endActions !== undefined) {\n\t\t\t\t\toptions.widget.invokeActionString(endActions,options.widget,event,{actionTiddler: titleString});\n\t\t\t\t}\n\t\t\t\t// Remove the dragging class on the element being dragged\n\t\t\t\t$tw.utils.removeClass(event.target,\"tc-dragging\");\n\t\t\t\t// Delete the drag image element\n\t\t\t\tif(dragImage) {\n\t\t\t\t\tdragImage.parentNode.removeChild(dragImage);\n\t\t\t\t\tdragImage = null;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t}}\n\t]);\n};\n\nexports.importDataTransfer = function(dataTransfer,fallbackTitle,callback) {\n\t// Try each provided data type in turn\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Available data types:\");\n\t\tfor(var type=0; type<dataTransfer.types.length; type++) {\n\t\t\tconsole.log(\"type\",dataTransfer.types[type],dataTransfer.getData(dataTransfer.types[type]))\n\t\t}\n\t}\n\tfor(var t=0; t<importDataTypes.length; t++) {\n\t\tif(!$tw.browser.isIE || importDataTypes[t].IECompatible) {\n\t\t\t// Get the data\n\t\t\tvar dataType = importDataTypes[t];\n\t\t\t\tvar data = dataTransfer.getData(dataType.type);\n\t\t\t// Import the tiddlers in the data\n\t\t\tif(data !== \"\" && data !== null) {\n\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\tconsole.log(\"Importing data type '\" + dataType.type + \"', data: '\" + data + \"'\")\n\t\t\t\t}\n\t\t\t\tvar tiddlerFields = dataType.toTiddlerFieldsArray(data,fallbackTitle);\n\t\t\t\tcallback(tiddlerFields);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar importDataTypes = [\n\t{type: \"text/vnd.tiddler\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn parseJSONTiddlers(data,fallbackTitle);\n\t}},\n\t{type: \"URL\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/x-moz-url\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\t// Check for tiddler data URI\n\t\tvar match = decodeURIComponent(data).match(/^data\\:text\\/vnd\\.tiddler,(.*)/i);\n\t\tif(match) {\n\t\t\treturn parseJSONTiddlers(match[1],fallbackTitle);\n\t\t} else {\n\t\t\treturn [{title: fallbackTitle, text: data}]; // As URL string\n\t\t}\n\t}},\n\t{type: \"text/html\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/plain\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"Text\", IECompatible: true, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}},\n\t{type: \"text/uri-list\", IECompatible: false, toTiddlerFieldsArray: function(data,fallbackTitle) {\n\t\treturn [{title: fallbackTitle, text: data}];\n\t}}\n];\n\nfunction parseJSONTiddlers(json,fallbackTitle) {\n\tvar data = JSON.parse(json);\n\tif(!$tw.utils.isArray(data)) {\n\t\tdata = [data];\n\t}\n\tdata.forEach(function(fields) {\n\t\tfields.title = fields.title || fallbackTitle;\n\t});\n\treturn data;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/http.js": {
            "title": "$:/core/modules/utils/dom/http.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/http.js\ntype: application/javascript\nmodule-type: utils\n\nBrowser HTTP support\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nA quick and dirty HTTP function; to be refactored later. Options are:\n\turl: URL to retrieve\n\theaders: hashmap of headers to send\n\ttype: GET, PUT, POST etc\n\tcallback: function invoked with (err,data,xhr)\n\treturnProp: string name of the property to return as first argument of callback\n*/\nexports.httpRequest = function(options) {\n\tvar type = options.type || \"GET\",\n\t\turl = options.url,\n\t\theaders = options.headers || {accept: \"application/json\"},\n\t\thasHeader = function(targetHeader) {\n\t\t\ttargetHeader = targetHeader.toLowerCase();\n\t\t\tvar result = false;\n\t\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\t\tif(headerTitle.toLowerCase() === targetHeader) {\n\t\t\t\t\tresult = true;\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn result;\n\t\t},\n\t\treturnProp = options.returnProp || \"responseText\",\n\t\trequest = new XMLHttpRequest(),\n\t\tdata = \"\",\n\t\tf,results;\n\t// Massage the data hashmap into a string\n\tif(options.data) {\n\t\tif(typeof options.data === \"string\") { // Already a string\n\t\t\tdata = options.data;\n\t\t} else { // A hashmap of strings\n\t\t\tresults = [];\n\t\t\t$tw.utils.each(options.data,function(dataItem,dataItemTitle) {\n\t\t\t\tresults.push(dataItemTitle + \"=\" + encodeURIComponent(dataItem));\n\t\t\t});\n\t\t\tif(type === \"GET\" || type === \"HEAD\") {\n\t\t\t\turl += \"?\" + results.join(\"&\");\n\t\t\t} else {\n\t\t\t\tdata = results.join(\"&\");\n\t\t\t}\n\t\t}\n\t}\n\t// Set up the state change handler\n\trequest.onreadystatechange = function() {\n\t\tif(this.readyState === 4) {\n\t\t\tif(this.status === 200 || this.status === 201 || this.status === 204) {\n\t\t\t\t// Success!\n\t\t\t\toptions.callback(null,this[returnProp],this);\n\t\t\t\treturn;\n\t\t\t}\n\t\t// Something went wrong\n\t\toptions.callback($tw.language.getString(\"Error/XMLHttpRequest\") + \": \" + this.status,null,this);\n\t\t}\n\t};\n\t// Make the request\n\trequest.open(type,url,true);\n\tif(headers) {\n\t\t$tw.utils.each(headers,function(header,headerTitle,object) {\n\t\t\trequest.setRequestHeader(headerTitle,header);\n\t\t});\n\t}\n\tif(data && !hasHeader(\"Content-Type\")) {\n\t\trequest.setRequestHeader(\"Content-Type\",\"application/x-www-form-urlencoded; charset=UTF-8\");\n\t}\n\tif(!hasHeader(\"X-Requested-With\")) {\n\t\trequest.setRequestHeader(\"X-Requested-With\",\"TiddlyWiki\");\n\t}\n\ttry {\n\t\trequest.send(data);\n\t} catch(e) {\n\t\toptions.callback(e,null,this);\n\t}\n\treturn request;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/keyboard.js": {
            "title": "$:/core/modules/utils/dom/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/keyboard.js\ntype: application/javascript\nmodule-type: utils\n\nKeyboard utilities; now deprecated. Instead, use $tw.keyboardManager\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n[\"parseKeyDescriptor\",\"checkKeyDescriptor\"].forEach(function(method) {\n\texports[method] = function() {\n\t\tif($tw.keyboardManager) {\n\t\t\treturn $tw.keyboardManager[method].apply($tw.keyboardManager,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\treturn null\n\t\t}\n\t};\n});\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/modal.js": {
            "title": "$:/core/modules/utils/dom/modal.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/modal.js\ntype: application/javascript\nmodule-type: utils\n\nModal message mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\nvar navigator = require(\"$:/core/modules/widgets/navigator.js\");\n\nvar Modal = function(wiki) {\n\tthis.wiki = wiki;\n\tthis.modalCount = 0;\n};\n\n/*\nDisplay a modal dialogue\n\ttitle: Title of tiddler to display\n\toptions: see below\nOptions include:\n\tdownloadLink: Text of a big download link to include\n*/\nModal.prototype.display = function(title,options) {\n\toptions = options || {};\n\tthis.srcDocument = options.variables && (options.variables.rootwindow === \"true\" ||\n\t\t\t\toptions.variables.rootwindow === \"yes\") ? document :\n\t\t\t\t(options.event.event && options.event.event.target ? options.event.event.target.ownerDocument : document);\n\tthis.srcWindow = this.srcDocument.defaultView;\n\tvar self = this,\n\t\trefreshHandler,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\ttiddler = this.wiki.getTiddler(title);\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Create the variables\n\tvar variables = $tw.utils.extend({\n\t\t\tcurrentTiddler: title,\n\t\t\t\"tv-story-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-story-list\") : \"\"),\n\t\t\t\"tv-history-list\": (options.event && options.event.widget ? options.event.widget.getVariable(\"tv-history-list\") : \"\")\n\t\t},options.variables);\n\n\t// Create the wrapper divs\n\tvar wrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalBackdrop = this.srcDocument.createElement(\"div\"),\n\t\tmodalWrapper = this.srcDocument.createElement(\"div\"),\n\t\tmodalHeader = this.srcDocument.createElement(\"div\"),\n\t\theaderTitle = this.srcDocument.createElement(\"h3\"),\n\t\tmodalBody = this.srcDocument.createElement(\"div\"),\n\t\tmodalLink = this.srcDocument.createElement(\"a\"),\n\t\tmodalFooter = this.srcDocument.createElement(\"div\"),\n\t\tmodalFooterHelp = this.srcDocument.createElement(\"span\"),\n\t\tmodalFooterButtons = this.srcDocument.createElement(\"span\");\n\t// Up the modal count and adjust the body class\n\tthis.modalCount++;\n\tthis.adjustPageClass();\n\t// Add classes\n\t$tw.utils.addClass(wrapper,\"tc-modal-wrapper\");\n\tif(tiddler.fields && tiddler.fields.class) {\n\t\t$tw.utils.addClass(wrapper,tiddler.fields.class);\n\t}\n\t$tw.utils.addClass(modalBackdrop,\"tc-modal-backdrop\");\n\t$tw.utils.addClass(modalWrapper,\"tc-modal\");\n\t$tw.utils.addClass(modalHeader,\"tc-modal-header\");\n\t$tw.utils.addClass(modalBody,\"tc-modal-body\");\n\t$tw.utils.addClass(modalFooter,\"tc-modal-footer\");\n\t// Join them together\n\twrapper.appendChild(modalBackdrop);\n\twrapper.appendChild(modalWrapper);\n\tmodalHeader.appendChild(headerTitle);\n\tmodalWrapper.appendChild(modalHeader);\n\tmodalWrapper.appendChild(modalBody);\n\tmodalFooter.appendChild(modalFooterHelp);\n\tmodalFooter.appendChild(modalFooterButtons);\n\tmodalWrapper.appendChild(modalFooter);\n\tvar navigatorTree = {\n\t\t\"type\": \"navigator\",\n\t\t\"attributes\": {\n\t\t\t\"story\": {\n\t\t\t\t\"name\": \"story\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-story-list\"]\n\t\t\t},\n\t\t\t\"history\": {\n\t\t\t\t\"name\": \"history\",\n\t\t\t\t\"type\": \"string\",\n\t\t\t\t\"value\": variables[\"tv-history-list\"]\n\t\t\t}\n\t\t},\n\t\t\"tag\": \"$navigator\",\n\t\t\"isBlock\": true,\n\t\t\"children\": []\n\t};\n\tvar navigatorWidgetNode = new navigator.navigator(navigatorTree, {\n\t\twiki: this.wiki,\n\t\tdocument : this.srcDocument,\n\t\tparentWidget: $tw.rootWidget\n\t});\n\tnavigatorWidgetNode.render(modalBody,null);\n\t\n\t// Render the title of the message\n\tvar headerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"subtitle\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"text\",\n\t\t\tattributes: {\n\t\t\t\ttext: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t}}}],\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\theaderWidgetNode.render(headerTitle,null);\n\t// Render the body of the message\n\tvar bodyWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\n\tbodyWidgetNode.render(modalBody,null);\n\t// Setup the link if present\n\tif(options.downloadLink) {\n\t\tmodalLink.href = options.downloadLink;\n\t\tmodalLink.appendChild(this.srcDocument.createTextNode(\"Right-click to save changes\"));\n\t\tmodalBody.appendChild(modalLink);\n\t}\n\t// Render the footer of the message\n\tif(tiddler.fields && tiddler.fields.help) {\n\t\tvar link = this.srcDocument.createElement(\"a\");\n\t\tlink.setAttribute(\"href\",tiddler.fields.help);\n\t\tlink.setAttribute(\"target\",\"_blank\");\n\t\tlink.setAttribute(\"rel\",\"noopener noreferrer\");\n\t\tlink.appendChild(this.srcDocument.createTextNode(\"Help\"));\n\t\tmodalFooterHelp.appendChild(link);\n\t\tmodalFooterHelp.style.float = \"left\";\n\t}\n\tvar footerWidgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tfield: \"footer\",\n\t\tmode: \"inline\",\n\t\tchildren: [{\n\t\t\ttype: \"button\",\n\t\t\tattributes: {\n\t\t\t\tmessage: {\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: \"tm-close-tiddler\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tchildren: [{\n\t\t\t\ttype: \"text\",\n\t\t\t\tattributes: {\n\t\t\t\t\ttext: {\n\t\t\t\t\t\ttype: \"string\",\n\t\t\t\t\t\tvalue: $tw.language.getString(\"Buttons/Close/Caption\")\n\t\t\t}}}\n\t\t]}],\n\t\tparentWidget: navigatorWidgetNode,\n\t\tdocument: this.srcDocument,\n\t\tvariables: variables,\n\t\timportPageMacros: true\n\t});\n\tfooterWidgetNode.render(modalFooterButtons,null);\n\t// Set up the refresh handler\n\trefreshHandler = function(changes) {\n\t\theaderWidgetNode.refresh(changes,modalHeader,null);\n\t\tbodyWidgetNode.refresh(changes,modalBody,null);\n\t\tfooterWidgetNode.refresh(changes,modalFooterButtons,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Add the close event handler\n\tvar closeHandler = function(event) {\n\t\t// Remove our refresh handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Decrease the modal count and adjust the body class\n\t\tself.modalCount--;\n\t\tself.adjustPageClass();\n\t\t// Force layout and animate the modal message away\n\t\t$tw.utils.forceLayout(modalBackdrop);\n\t\t$tw.utils.forceLayout(modalWrapper);\n\t\t$tw.utils.setStyle(modalBackdrop,[\n\t\t\t{opacity: \"0\"}\n\t\t]);\n\t\t$tw.utils.setStyle(modalWrapper,[\n\t\t\t{transform: \"translateY(\" + self.srcWindow.innerHeight + \"px)\"}\n\t\t]);\n\t\t// Set up an event for the transition end\n\t\tself.srcWindow.setTimeout(function() {\n\t\t\tif(wrapper.parentNode) {\n\t\t\t\t// Remove the modal message from the DOM\n\t\t\t\tself.srcDocument.body.removeChild(wrapper);\n\t\t\t}\n\t\t},duration);\n\t\t// Don't let anyone else handle the tm-close-tiddler message\n\t\treturn false;\n\t};\n\theaderWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tbodyWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\tfooterWidgetNode.addEventListener(\"tm-close-tiddler\",closeHandler,false);\n\t// Set the initial styles for the message\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-this.srcWindow.innerHeight) + \"px)\"}\n\t]);\n\t// Put the message into the document\n\tthis.srcDocument.body.appendChild(wrapper);\n\t// Set up animation for the styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{transition: \"opacity \" + duration + \"ms ease-out\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transition: $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Force layout\n\t$tw.utils.forceLayout(modalBackdrop);\n\t$tw.utils.forceLayout(modalWrapper);\n\t// Set final animated styles\n\t$tw.utils.setStyle(modalBackdrop,[\n\t\t{opacity: \"0.7\"}\n\t]);\n\t$tw.utils.setStyle(modalWrapper,[\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n};\n\nModal.prototype.adjustPageClass = function() {\n\tvar windowContainer = $tw.pageContainer ? ($tw.pageContainer === this.srcDocument.body.firstChild ? $tw.pageContainer : this.srcDocument.body.firstChild) : null;\n\tif(windowContainer) {\n\t\t$tw.utils.toggleClass(windowContainer,\"tc-modal-displayed\",this.modalCount > 0);\n\t}\n};\n\nexports.Modal = Modal;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/notifier.js": {
            "title": "$:/core/modules/utils/dom/notifier.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/notifier.js\ntype: application/javascript\nmodule-type: utils\n\nNotifier mechanism\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar Notifier = function(wiki) {\n\tthis.wiki = wiki;\n};\n\n/*\nDisplay a notification\n\ttitle: Title of tiddler containing the notification text\n\toptions: see below\nOptions include:\n*/\nNotifier.prototype.display = function(title,options) {\n\toptions = options || {};\n\t// Create the wrapper divs\n\tvar self = this,\n\t\tnotification = document.createElement(\"div\"),\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t\trefreshHandler;\n\t// Don't do anything if the tiddler doesn't exist\n\tif(!tiddler) {\n\t\treturn;\n\t}\n\t// Add classes\n\t$tw.utils.addClass(notification,\"tc-notification\");\n\t// Create the variables\n\tvar variables = $tw.utils.extend({currentTiddler: title},options.variables);\n\t// Render the body of the notification\n\tvar widgetNode = this.wiki.makeTranscludeWidget(title,{\n\t\tparentWidget: $tw.rootWidget,\n\t\tdocument: document,\n\t\tvariables: variables,\n\t\timportPageMacros: true});\n\twidgetNode.render(notification,null);\n\trefreshHandler = function(changes) {\n\t\twidgetNode.refresh(changes,notification,null);\n\t};\n\tthis.wiki.addEventListener(\"change\",refreshHandler);\n\t// Set the initial styles for the notification\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"0\"},\n\t\t{transformOrigin: \"0% 0%\"},\n\t\t{transform: \"translateY(\" + (-window.innerHeight) + \"px)\"},\n\t\t{transition: \"opacity \" + duration + \"ms ease-out, \" + $tw.utils.roundTripPropertyName(\"transform\") + \" \" + duration + \"ms ease-in-out\"}\n\t]);\n\t// Add the notification to the DOM\n\tdocument.body.appendChild(notification);\n\t// Force layout\n\t$tw.utils.forceLayout(notification);\n\t// Set final animated styles\n\t$tw.utils.setStyle(notification,[\n\t\t{opacity: \"1.0\"},\n\t\t{transform: \"translateY(0px)\"}\n\t]);\n\t// Set a timer to remove the notification\n\twindow.setTimeout(function() {\n\t\t// Remove our change event handler\n\t\tself.wiki.removeEventListener(\"change\",refreshHandler);\n\t\t// Force layout and animate the notification away\n\t\t$tw.utils.forceLayout(notification);\n\t\t$tw.utils.setStyle(notification,[\n\t\t\t{opacity: \"0.0\"},\n\t\t\t{transform: \"translateX(\" + (notification.offsetWidth) + \"px)\"}\n\t\t]);\n\t\t// Remove the modal message from the DOM once the transition ends\n\t\tsetTimeout(function() {\n\t\t\tif(notification.parentNode) {\n\t\t\t\tdocument.body.removeChild(notification);\n\t\t\t}\n\t\t},duration);\n\t},$tw.config.preferences.notificationDuration);\n};\n\nexports.Notifier = Notifier;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/popup.js": {
            "title": "$:/core/modules/utils/dom/popup.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/popup.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Popup object prototype that manages popups in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreates a Popup object with these options:\n\trootElement: the DOM element to which the popup zapper should be attached\n*/\nvar Popup = function(options) {\n\toptions = options || {};\n\tthis.rootElement = options.rootElement || document.documentElement;\n\tthis.popups = []; // Array of {title:,wiki:,domNode:} objects\n};\n\n/*\nTrigger a popup open or closed. Parameters are in a hashmap:\n\ttitle: title of the tiddler where the popup details are stored\n\tdomNode: dom node to which the popup will be positioned (one of domNode or domNodeRect is required)\n\tdomNodeRect: rectangle to which the popup will be positioned\n\twiki: wiki\n\tforce: if specified, forces the popup state to true or false (instead of toggling it)\n\tfloating: if true, skips registering the popup, meaning that it will need manually clearing\n*/\nPopup.prototype.triggerPopup = function(options) {\n\t// Check if this popup is already active\n\tvar index = this.findPopup(options.title);\n\t// Compute the new state\n\tvar state = index === -1;\n\tif(options.force !== undefined) {\n\t\tstate = options.force;\n\t}\n\t// Show or cancel the popup according to the new state\n\tif(state) {\n\t\tthis.show(options);\n\t} else {\n\t\tthis.cancel(index);\n\t}\n};\n\nPopup.prototype.findPopup = function(title) {\n\tvar index = -1;\n\tfor(var t=0; t<this.popups.length; t++) {\n\t\tif(this.popups[t].title === title) {\n\t\t\tindex = t;\n\t\t}\n\t}\n\treturn index;\n};\n\nPopup.prototype.handleEvent = function(event) {\n\tif(event.type === \"click\") {\n\t\t// Find out what was clicked on\n\t\tvar info = this.popupInfo(event.target),\n\t\t\tcancelLevel = info.popupLevel - 1;\n\t\t// Don't remove the level that was clicked on if we clicked on a handle\n\t\tif(info.isHandle) {\n\t\t\tcancelLevel++;\n\t\t}\n\t\t// Cancel\n\t\tthis.cancel(cancelLevel);\n\t}\n};\n\n/*\nFind the popup level containing a DOM node. Returns:\npopupLevel: count of the number of nested popups containing the specified element\nisHandle: true if the specified element is within a popup handle\n*/\nPopup.prototype.popupInfo = function(domNode) {\n\tvar isHandle = false,\n\t\tpopupCount = 0,\n\t\tnode = domNode;\n\t// First check ancestors to see if we're within a popup handle\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup-handle\")) {\n\t\t\tisHandle = true;\n\t\t\tpopupCount++;\n\t\t}\n\t\tif($tw.utils.hasClass(node,\"tc-popup-keep\")) {\n\t\t\tisHandle = true;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\t// Then count the number of ancestor popups\n\tnode = domNode;\n\twhile(node) {\n\t\tif($tw.utils.hasClass(node,\"tc-popup\")) {\n\t\t\tpopupCount++;\n\t\t}\n\t\tnode = node.parentNode;\n\t}\n\tvar info = {\n\t\tpopupLevel: popupCount,\n\t\tisHandle: isHandle\n\t};\n\treturn info;\n};\n\n/*\nDisplay a popup by adding it to the stack\n*/\nPopup.prototype.show = function(options) {\n\t// Find out what was clicked on\n\tvar info = this.popupInfo(options.domNode);\n\t// Cancel any higher level popups\n\tthis.cancel(info.popupLevel);\n\n\t// Store the popup details if not already there\n\tif(!options.floating && this.findPopup(options.title) === -1) {\n\t\tthis.popups.push({\n\t\t\ttitle: options.title,\n\t\t\twiki: options.wiki,\n\t\t\tdomNode: options.domNode,\n\t\t\tnoStateReference: options.noStateReference\n\t\t});\n\t}\n\t// Set the state tiddler\n\tvar rect;\n\tif(options.domNodeRect) {\n\t\trect = options.domNodeRect;\n\t} else {\n\t\trect = {\n\t\t\tleft: options.domNode.offsetLeft,\n\t\t\ttop: options.domNode.offsetTop,\n\t\t\twidth: options.domNode.offsetWidth,\n\t\t\theight: options.domNode.offsetHeight\n\t\t};\n\t}\n\tvar popupRect = \"(\" + rect.left + \",\" + rect.top + \",\" + \n\t\t\t\trect.width + \",\" + rect.height + \")\";\n\tif(options.noStateReference) {\n\t\toptions.wiki.setText(options.title,\"text\",undefined,popupRect);\n\t} else {\n\t\toptions.wiki.setTextReference(options.title,popupRect);\n\t}\n\t// Add the click handler if we have any popups\n\tif(this.popups.length > 0) {\n\t\tthis.rootElement.addEventListener(\"click\",this,true);\t\t\n\t}\n};\n\n/*\nCancel all popups at or above a specified level or DOM node\nlevel: popup level to cancel (0 cancels all popups)\n*/\nPopup.prototype.cancel = function(level) {\n\tvar numPopups = this.popups.length;\n\tlevel = Math.max(0,Math.min(level,numPopups));\n\tfor(var t=level; t<numPopups; t++) {\n\t\tvar popup = this.popups.pop();\n\t\tif(popup.title) {\n\t\t\tif(popup.noStateReference) {\n\t\t\t\tpopup.wiki.deleteTiddler(popup.title);\n\t\t\t} else {\n\t\t\t\tpopup.wiki.deleteTiddler($tw.utils.parseTextReference(popup.title).title);\n        \t\t}\n\t\t}\n\t}\n\tif(this.popups.length === 0) {\n\t\tthis.rootElement.removeEventListener(\"click\",this,false);\n\t}\n};\n\n/*\nReturns true if the specified title and text identifies an active popup\n*/\nPopup.prototype.readPopupState = function(text) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/;\n\treturn popupLocationRegExp.test(text);\n};\n\nexports.Popup = Popup;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/dom/scroller.js": {
            "title": "$:/core/modules/utils/dom/scroller.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/dom/scroller.js\ntype: application/javascript\nmodule-type: utils\n\nModule that creates a $tw.utils.Scroller object prototype that manages scrolling in the browser\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nEvent handler for when the `tm-scroll` event hits the document body\n*/\nvar PageScroller = function() {\n\tthis.idRequestFrame = null;\n\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\twindow.webkitRequestAnimationFrame ||\n\t\twindow.mozRequestAnimationFrame ||\n\t\tfunction(callback) {\n\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t};\n\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\twindow.webkitCancelAnimationFrame ||\n\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\twindow.mozCancelAnimationFrame ||\n\t\twindow.mozCancelRequestAnimationFrame ||\n\t\tfunction(id) {\n\t\t\twindow.clearTimeout(id);\n\t\t};\n};\n\nPageScroller.prototype.isScrolling = function() {\n\treturn this.idRequestFrame !== null;\n}\n\nPageScroller.prototype.cancelScroll = function(srcWindow) {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(srcWindow,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle an event\n*/\nPageScroller.prototype.handleEvent = function(event) {\n\tif(event.type === \"tm-scroll\") {\n\t\tif(event.paramObject && event.paramObject.selector) {\n\t\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t\t} else {\n\t\t\tthis.scrollIntoView(event.target);\t\t\t\n\t\t}\n\t\treturn false; // Event was handled\n\t}\n\treturn true;\n};\n\n/*\nHandle a scroll event hitting the page document\n*/\nPageScroller.prototype.scrollIntoView = function(element,callback) {\n\tvar self = this,\n\t\tduration = $tw.utils.getAnimationDuration(),\n\t    srcWindow = element ? element.ownerDocument.defaultView : window;\n\t// Now get ready to scroll the body\n\tthis.cancelScroll(srcWindow);\n\tthis.startTime = Date.now();\n\t// Get the height of any position:fixed toolbars\n\tvar toolbar = srcWindow.document.querySelector(\".tc-adjust-top-of-scroll\"),\n\t\toffset = 0;\n\tif(toolbar) {\n\t\toffset = toolbar.offsetHeight;\n\t}\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar getBounds = function() {\n\t\t\tvar clientBounds = typeof callback === 'function' ? callback() : element.getBoundingClientRect(),\n\t\t\t\tscrollPosition = $tw.utils.getScrollPosition(srcWindow);\n\t\t\treturn {\n\t\t\t\tleft: clientBounds.left + scrollPosition.x,\n\t\t\t\ttop: clientBounds.top + scrollPosition.y - offset,\n\t\t\t\twidth: clientBounds.width,\n\t\t\t\theight: clientBounds.height\n\t\t\t};\n\t\t},\n\t\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\t\t// targetPos/targetSize - position and size of the target element\n\t\t// currentPos/currentSize - position and size of the current scroll viewport\n\t\t// returns: new position of the scroll viewport\n\t\tgetEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\tvar newPos = targetPos;\n\t\t\t// If we are scrolling within 50 pixels of the top/left then snap to zero\n\t\t\tif(newPos < 50) {\n\t\t\t\tnewPos = 0;\n\t\t\t}\n\t\t\treturn newPos;\n\t\t},\n\t\tdrawFrame = function drawFrame() {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll(srcWindow);\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tvar scrollPosition = $tw.utils.getScrollPosition(srcWindow),\n\t\t\t\tbounds = getBounds(),\n\t\t\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,srcWindow.innerWidth),\n\t\t\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,srcWindow.innerHeight);\n\t\t\tsrcWindow.scrollTo(scrollPosition.x + (endX - scrollPosition.x) * t,scrollPosition.y + (endY - scrollPosition.y) * t);\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\tdrawFrame();\n};\n\nPageScroller.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\n};\n\nexports.PageScroller = PageScroller;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/edition-info.js": {
            "title": "$:/core/modules/utils/edition-info.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/edition-info.js\ntype: application/javascript\nmodule-type: utils-node\n\nInformation about the available editions\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\nvar editionInfo;\n\nexports.getEditionInfo = function() {\n\tif(!editionInfo) {\n\t\t// Enumerate the edition paths\n\t\tvar editionPaths = $tw.getLibraryItemSearchPaths($tw.config.editionsPath,$tw.config.editionsEnvVar);\n\t\teditionInfo = {};\n\t\tfor(var editionIndex=0; editionIndex<editionPaths.length; editionIndex++) {\n\t\t\tvar editionPath = editionPaths[editionIndex];\n\t\t\t// Enumerate the folders\n\t\t\tvar entries = fs.readdirSync(editionPath);\n\t\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\t\tvar entry = entries[entryIndex];\n\t\t\t\t// Check if directories have a valid tiddlywiki.info\n\t\t\t\tif(!editionInfo[entry] && $tw.utils.isDirectory(path.resolve(editionPath,entry))) {\n\t\t\t\t\tvar info;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tinfo = JSON.parse(fs.readFileSync(path.resolve(editionPath,entry,\"tiddlywiki.info\"),\"utf8\"));\n\t\t\t\t\t} catch(ex) {\n\t\t\t\t\t}\n\t\t\t\t\tif(info) {\n\t\t\t\t\t\teditionInfo[entry] = info;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\treturn editionInfo;\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/fakedom.js": {
            "title": "$:/core/modules/utils/fakedom.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/fakedom.js\ntype: application/javascript\nmodule-type: global\n\nA barebones implementation of DOM interfaces needed by the rendering mechanism.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Sequence number used to enable us to track objects for testing\nvar sequenceNumber = null;\n\nvar bumpSequenceNumber = function(object) {\n\tif(sequenceNumber !== null) {\n\t\tobject.sequenceNumber = sequenceNumber++;\n\t}\n};\n\nvar TW_Node = function (){\n\tthrow TypeError(\"Illegal constructor\");\n};\n\nObject.defineProperty(TW_Node.prototype, 'ELEMENT_NODE', {\n\tget: function() {\n\t\treturn 1;\n\t}\n});\n\nObject.defineProperty(TW_Node.prototype, 'TEXT_NODE', {\n\tget: function() {\n\t\treturn 3;\n\t}\n});\n\nvar TW_TextNode = function(text) {\n\tbumpSequenceNumber(this);\n\tthis.textContent = text + \"\";\n};\n\nTW_TextNode.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_TextNode.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.TEXT_NODE;\n\t}\n});\n\nObject.defineProperty(TW_TextNode.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\treturn this.textContent.replace(/(\\r?\\n)/g,\"\");\n\t}\n});\n\nvar TW_Element = function(tag,namespace) {\n\tbumpSequenceNumber(this);\n\tthis.isTiddlyWikiFakeDom = true;\n\tthis.tag = tag;\n\tthis.attributes = {};\n\tthis.isRaw = false;\n\tthis.children = [];\n\tthis._style = {};\n\tthis.namespaceURI = namespace || \"http://www.w3.org/1999/xhtml\";\n};\n\nTW_Element.prototype = Object.create(TW_Node.prototype);\n\nObject.defineProperty(TW_Element.prototype, \"style\", {\n\tget: function() {\n\t\treturn this._style;\n\t},\n\tset: function(str) {\n\t\tvar self = this;\n\t\tstr = str || \"\";\n\t\t$tw.utils.each(str.split(\";\"),function(declaration) {\n\t\t\tvar parts = declaration.split(\":\"),\n\t\t\t\tname = $tw.utils.trim(parts[0]),\n\t\t\t\tvalue = $tw.utils.trim(parts[1]);\n\t\t\tif(name && value) {\n\t\t\t\tself._style[$tw.utils.convertStyleNameToPropertyName(name)] = value;\n\t\t\t}\n\t\t});\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"nodeType\", {\n\tget: function() {\n\t\treturn this.ELEMENT_NODE;\n\t}\n});\n\nTW_Element.prototype.getAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot getAttribute on a raw TW_Element\";\n\t}\n\treturn this.attributes[name];\n};\n\nTW_Element.prototype.setAttribute = function(name,value) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot setAttribute on a raw TW_Element\";\n\t}\n\tthis.attributes[name] = value + \"\";\n};\n\nTW_Element.prototype.setAttributeNS = function(namespace,name,value) {\n\tthis.setAttribute(name,value);\n};\n\nTW_Element.prototype.removeAttribute = function(name) {\n\tif(this.isRaw) {\n\t\tthrow \"Cannot removeAttribute on a raw TW_Element\";\n\t}\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\tdelete this.attributes[name];\n\t}\n};\n\nTW_Element.prototype.appendChild = function(node) {\n\tthis.children.push(node);\n\tnode.parentNode = this;\n};\n\nTW_Element.prototype.insertBefore = function(node,nextSibling) {\n\tif(nextSibling) {\n\t\tvar p = this.children.indexOf(nextSibling);\n\t\tif(p !== -1) {\n\t\t\tthis.children.splice(p,0,node);\n\t\t\tnode.parentNode = this;\n\t\t} else {\n\t\t\tthis.appendChild(node);\n\t\t}\n\t} else {\n\t\tthis.appendChild(node);\n\t}\n};\n\nTW_Element.prototype.removeChild = function(node) {\n\tvar p = this.children.indexOf(node);\n\tif(p !== -1) {\n\t\tthis.children.splice(p,1);\n\t}\n};\n\nTW_Element.prototype.hasChildNodes = function() {\n\treturn !!this.children.length;\n};\n\nObject.defineProperty(TW_Element.prototype, \"childNodes\", {\n\tget: function() {\n\t\treturn this.children;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"firstChild\", {\n\tget: function() {\n\t\treturn this.children[0];\n\t}\n});\n\nTW_Element.prototype.addEventListener = function(type,listener,useCapture) {\n\t// Do nothing\n};\n\nObject.defineProperty(TW_Element.prototype, \"tagName\", {\n\tget: function() {\n\t\treturn this.tag || \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"className\", {\n\tget: function() {\n\t\treturn this.attributes[\"class\"] || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes[\"class\"] = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"value\", {\n\tget: function() {\n\t\treturn this.attributes.value || \"\";\n\t},\n\tset: function(value) {\n\t\tthis.attributes.value = value + \"\";\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"outerHTML\", {\n\tget: function() {\n\t\tvar output = [],attr,a,v;\n\t\toutput.push(\"<\",this.tag);\n\t\tif(this.attributes) {\n\t\t\tattr = [];\n\t\t\tfor(a in this.attributes) {\n\t\t\t\tattr.push(a);\n\t\t\t}\n\t\t\tattr.sort();\n\t\t\tfor(a=0; a<attr.length; a++) {\n\t\t\t\tv = this.attributes[attr[a]];\n\t\t\t\tif(v !== undefined) {\n\t\t\t\t\toutput.push(\" \",attr[a],\"=\\\"\",$tw.utils.htmlEncode(v),\"\\\"\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif(this._style) {\n\t\t\tvar style = [];\n\t\t\tfor(var s in this._style) {\n\t\t\t\tstyle.push($tw.utils.convertPropertyNameToStyleName(s) + \":\" + this._style[s] + \";\");\n\t\t\t}\n\t\t\tif(style.length > 0) {\n\t\t\t\toutput.push(\" style=\\\"\",style.join(\"\"),\"\\\"\");\n\t\t\t}\n\t\t}\n\t\toutput.push(\">\");\n\t\tif($tw.config.htmlVoidElements.indexOf(this.tag) === -1) {\n\t\t\toutput.push(this.innerHTML);\n\t\t\toutput.push(\"</\",this.tag,\">\");\n\t\t}\n\t\treturn output.join(\"\");\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"innerHTML\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn this.rawHTML;\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tif(node instanceof TW_Element) {\n\t\t\t\t\tb.push(node.outerHTML);\n\t\t\t\t} else if(node instanceof TW_TextNode) {\n\t\t\t\t\tb.push($tw.utils.htmlEncode(node.textContent));\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.isRaw = true;\n\t\tthis.rawHTML = value;\n\t\tthis.rawTextContent = null;\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textInnerHTML\", {\n\tset: function(value) {\n\t\tif(this.isRaw) {\n\t\t\tthis.rawTextContent = value;\n\t\t} else {\n\t\t\tthrow \"Cannot set textInnerHTML of a non-raw TW_Element\";\n\t\t}\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"textContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\tif(this.rawTextContent === null) {\n\t\t\t\treturn \"\";\n\t\t\t} else {\n\t\t\t\treturn this.rawTextContent;\n\t\t\t}\n\t\t} else {\n\t\t\tvar b = [];\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.textContent);\n\t\t\t});\n\t\t\treturn b.join(\"\");\n\t\t}\n\t},\n\tset: function(value) {\n\t\tthis.children = [new TW_TextNode(value)];\n\t}\n});\n\nObject.defineProperty(TW_Element.prototype, \"formattedTextContent\", {\n\tget: function() {\n\t\tif(this.isRaw) {\n\t\t\treturn \"\";\n\t\t} else {\n\t\t\tvar b = [],\n\t\t\t\tisBlock = $tw.config.htmlBlockElements.indexOf(this.tag) !== -1;\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\tif(this.tag === \"li\") {\n\t\t\t\tb.push(\"* \");\n\t\t\t}\n\t\t\t$tw.utils.each(this.children,function(node) {\n\t\t\t\tb.push(node.formattedTextContent);\n\t\t\t});\n\t\t\tif(isBlock) {\n\t\t\t\tb.push(\"\\n\");\n\t\t\t}\n\t\t\treturn b.join(\"\");\n\t\t}\n\t}\n});\n\nvar document = {\n\tsetSequenceNumber: function(value) {\n\t\tsequenceNumber = value;\n\t},\n\tcreateElementNS: function(namespace,tag) {\n\t\treturn new TW_Element(tag,namespace);\n\t},\n\tcreateElement: function(tag) {\n\t\treturn new TW_Element(tag);\n\t},\n\tcreateTextNode: function(text) {\n\t\treturn new TW_TextNode(text);\n\t},\n\tcompatMode: \"CSS1Compat\", // For KaTeX to know that we're not a browser in quirks mode\n\tisTiddlyWikiFakeDom: true\n};\n\nexports.fakeDocument = document;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/filesystem.js": {
            "title": "$:/core/modules/utils/filesystem.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/filesystem.js\ntype: application/javascript\nmodule-type: utils-node\n\nFile system utilities\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar fs = require(\"fs\"),\n\tpath = require(\"path\");\n\n/*\nReturn the subdirectories of a path\n*/\nexports.getSubdirectories = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn null;\n\t}\n\tvar subdirs = [];\n\t$tw.utils.each(fs.readdirSync(dirPath),function(item) {\n\t\tif($tw.utils.isDirectory(path.resolve(dirPath,item))) {\n\t\t\tsubdirs.push(item);\n\t\t}\n\t});\n\treturn subdirs;\n}\n\n/*\nRecursively (and synchronously) copy a directory and all its content\n*/\nexports.copyDirectory = function(srcPath,dstPath) {\n\t// Remove any trailing path separators\n\tsrcPath = path.resolve($tw.utils.removeTrailingSeparator(srcPath));\n\tdstPath = path.resolve($tw.utils.removeTrailingSeparator(dstPath));\n\t// Check that neither director is within the other\n\tif(srcPath.substring(0,dstPath.length) === dstPath || dstPath.substring(0,srcPath.length) === srcPath) {\n\t\treturn \"Cannot copy nested directories\";\n\t}\n\t// Create the destination directory\n\tvar err = $tw.utils.createDirectory(dstPath);\n\tif(err) {\n\t\treturn err;\n\t}\n\t// Function to copy a folder full of files\n\tvar copy = function(srcPath,dstPath) {\n\t\tvar srcStats = fs.lstatSync(srcPath),\n\t\t\tdstExists = fs.existsSync(dstPath);\n\t\tif(srcStats.isFile()) {\n\t\t\t$tw.utils.copyFile(srcPath,dstPath);\n\t\t} else if(srcStats.isDirectory()) {\n\t\t\tvar items = fs.readdirSync(srcPath);\n\t\t\tfor(var t=0; t<items.length; t++) {\n\t\t\t\tvar item = items[t],\n\t\t\t\t\terr = copy(srcPath + path.sep + item,dstPath + path.sep + item);\n\t\t\t\tif(err) {\n\t\t\t\t\treturn err;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n\tcopy(srcPath,dstPath);\n\treturn null;\n};\n\n/*\nCopy a file\n*/\nvar FILE_BUFFER_LENGTH = 64 * 1024,\n\tfileBuffer;\n\nexports.copyFile = function(srcPath,dstPath) {\n\t// Create buffer if required\n\tif(!fileBuffer) {\n\t\tfileBuffer = Buffer.alloc(FILE_BUFFER_LENGTH);\n\t}\n\t// Create any directories in the destination\n\t$tw.utils.createDirectory(path.dirname(dstPath));\n\t// Copy the file\n\tvar srcFile = fs.openSync(srcPath,\"r\"),\n\t\tdstFile = fs.openSync(dstPath,\"w\"),\n\t\tbytesRead = 1,\n\t\tpos = 0;\n\twhile (bytesRead > 0) {\n\t\tbytesRead = fs.readSync(srcFile,fileBuffer,0,FILE_BUFFER_LENGTH,pos);\n\t\tfs.writeSync(dstFile,fileBuffer,0,bytesRead);\n\t\tpos += bytesRead;\n\t}\n\tfs.closeSync(srcFile);\n\tfs.closeSync(dstFile);\n\treturn null;\n};\n\n/*\nRemove trailing path separator\n*/\nexports.removeTrailingSeparator = function(dirPath) {\n\tvar len = dirPath.length;\n\tif(dirPath.charAt(len-1) === path.sep) {\n\t\tdirPath = dirPath.substr(0,len-1);\n\t}\n\treturn dirPath;\n};\n\n/*\nRecursively create a directory\n*/\nexports.createDirectory = function(dirPath) {\n\tif(dirPath.substr(dirPath.length-1,1) !== path.sep) {\n\t\tdirPath = dirPath + path.sep;\n\t}\n\tvar pos = 1;\n\tpos = dirPath.indexOf(path.sep,pos);\n\twhile(pos !== -1) {\n\t\tvar subDirPath = dirPath.substr(0,pos);\n\t\tif(!$tw.utils.isDirectory(subDirPath)) {\n\t\t\ttry {\n\t\t\t\tfs.mkdirSync(subDirPath);\n\t\t\t} catch(e) {\n\t\t\t\treturn \"Error creating directory '\" + subDirPath + \"'\";\n\t\t\t}\n\t\t}\n\t\tpos = dirPath.indexOf(path.sep,pos + 1);\n\t}\n\treturn null;\n};\n\n/*\nRecursively create directories needed to contain a specified file\n*/\nexports.createFileDirectories = function(filePath) {\n\treturn $tw.utils.createDirectory(path.dirname(filePath));\n};\n\n/*\nRecursively delete a directory\n*/\nexports.deleteDirectory = function(dirPath) {\n\tif(fs.existsSync(dirPath)) {\n\t\tvar entries = fs.readdirSync(dirPath);\n\t\tfor(var entryIndex=0; entryIndex<entries.length; entryIndex++) {\n\t\t\tvar currPath = dirPath + path.sep + entries[entryIndex];\n\t\t\tif(fs.lstatSync(currPath).isDirectory()) {\n\t\t\t\t$tw.utils.deleteDirectory(currPath);\n\t\t\t} else {\n\t\t\t\tfs.unlinkSync(currPath);\n\t\t\t}\n\t\t}\n\tfs.rmdirSync(dirPath);\n\t}\n\treturn null;\n};\n\n/*\nCheck if a path identifies a directory\n*/\nexports.isDirectory = function(dirPath) {\n\treturn fs.existsSync(dirPath) && fs.statSync(dirPath).isDirectory();\n};\n\n/*\nCheck if a path identifies a directory that is empty\n*/\nexports.isDirectoryEmpty = function(dirPath) {\n\tif(!$tw.utils.isDirectory(dirPath)) {\n\t\treturn false;\n\t}\n\tvar files = fs.readdirSync(dirPath),\n\t\tempty = true;\n\t$tw.utils.each(files,function(file,index) {\n\t\tif(file.charAt(0) !== \".\") {\n\t\t\tempty = false;\n\t\t}\n\t});\n\treturn empty;\n};\n\n/*\nRecursively delete a tree of empty directories\n*/\nexports.deleteEmptyDirs = function(dirpath,callback) {\n\tvar self = this;\n\tfs.readdir(dirpath,function(err,files) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\n\t\tif(files.length > 0) {\n\t\t\treturn callback(null);\n\t\t}\n\t\tfs.rmdir(dirpath,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tself.deleteEmptyDirs(path.dirname(dirpath),callback);\n\t\t});\n\t});\n};\n\n/*\nCreate a fileInfo object for saving a tiddler:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file on disk (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n\tisEditableFile: true if the tiddler was loaded via non-standard options & marked editable\nOptions include:\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\textFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters,\n\tfileInfo: an existing fileInfo to check against\n\toriginalpath: a preferred filepath if no pathFilters match\n*/\nexports.generateTiddlerFileInfo = function(tiddler,options) {\n\tvar fileInfo = {}, metaExt;\n\t// Propagate the isEditableFile flag\n\tif(options.fileInfo) {\n\t\tfileInfo.isEditableFile = options.fileInfo.isEditableFile || false;\n\t}\n\t// Check if the tiddler has any unsafe fields that can't be expressed in a .tid or .meta file: containing control characters, or leading/trailing whitespace\n\tvar hasUnsafeFields = false;\n\t$tw.utils.each(tiddler.getFieldStrings(),function(value,fieldName) {\n\t\tif(fieldName !== \"text\") {\n\t\t\thasUnsafeFields = hasUnsafeFields || /[\\x00-\\x1F]/mg.test(value);\n\t\t\thasUnsafeFields = hasUnsafeFields || ($tw.utils.trim(value) !== value);\n\t\t}\n\t});\n\t// Check for field values \n\tif(hasUnsafeFields) {\n\t\t// Save as a JSON file\n\t\tfileInfo.type = \"application/json\";\n\t\tfileInfo.hasMetaFile = false;\n\t} else {\n\t\t// Save as a .tid or a text/binary file plus a .meta file\n\t\tvar tiddlerType = tiddler.fields.type || \"text/vnd.tiddlywiki\";\n\t\tif(tiddlerType === \"text/vnd.tiddlywiki\") {\n\t\t\t// Save as a .tid file\n\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\tfileInfo.hasMetaFile = false;\n\t\t} else {\n\t\t\t// Save as a text/binary file and a .meta file\n\t\t\tfileInfo.type = tiddlerType;\n\t\t\tfileInfo.hasMetaFile = true;\n\t\t}\n\t\tif(options.extFilters) {\n\t\t\t// Check for extension override\n\t\t\tmetaExt = $tw.utils.generateTiddlerExtension(tiddler.fields.title,{\n\t\t\t\textFilters: options.extFilters,\n\t\t\t\twiki: options.wiki\n\t\t\t});\n\t\t\tif(metaExt){\n\t\t\t\tif(metaExt === \".tid\") {\n\t\t\t\t\t// Overriding to the .tid extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/x-tiddler\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else if (metaExt === \".json\") {\n\t\t\t\t\t// Overriding to the .json extension needs special handling\n\t\t\t\t\tfileInfo.type = \"application/json\";\n\t\t\t\t\tfileInfo.hasMetaFile = false;\n\t\t\t\t} else {\n\t\t\t\t\t//If the new type matches a known extention, use that MIME type's encoding\n\t\t\t\t\tvar extInfo = $tw.utils.getFileExtensionInfo(metaExt);\n\t\t\t\t\tfileInfo.type = extInfo ? extInfo.type : null;\n\t\t\t\t\tfileInfo.encoding = $tw.utils.getTypeEncoding(metaExt);\n\t\t\t\t\tfileInfo.hasMetaFile = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t// Take the file extension from the tiddler content type or metaExt\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[fileInfo.type] || {extension: \"\"};\n\t// Generate the filepath\n\tfileInfo.filepath = $tw.utils.generateTiddlerFilepath(tiddler.fields.title,{\n\t\textension: metaExt || contentTypeInfo.extension,\n\t\tdirectory: options.directory,\n\t\tpathFilters: options.pathFilters,\n\t\twiki: options.wiki,\n\t\tfileInfo: options.fileInfo,\n\t\toriginalpath: options.originalpath\n\t});\n\treturn fileInfo;\n};\n\n/*\nGenerate the file extension for saving a tiddler\nOptions include:\n\textFilters: optional array of filters to be used to generate the extention\n\twiki: optional wiki for evaluating the extFilters\n*/\nexports.generateTiddlerExtension = function(title,options) {\n\tvar self = this,\n\t\textension;\n\t// Check if any of the extFilters applies\n\tif(options.extFilters && options.wiki) { \n\t\t$tw.utils.each(options.extFilters,function(filter) {\n\t\t\tif(!extension) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\textension = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\treturn extension;\n};\n\n/*\nGenerate the filepath for saving a tiddler\nOptions include:\n\textension: file extension to be added the finished filepath\n\tdirectory: absolute path of root directory to which we are saving\n\tpathFilters: optional array of filters to be used to generate the base path\n\twiki: optional wiki for evaluating the pathFilters\n\tfileInfo: an existing fileInfo object to check against\n*/\nexports.generateTiddlerFilepath = function(title,options) {\n\tvar self = this,\n\t\tdirectory = options.directory || \"\",\n\t\textension = options.extension || \"\",\n\t\toriginalpath = options.originalpath || \"\",\n\t\tfilepath;\t\n\t// Check if any of the pathFilters applies\n\tif(options.pathFilters && options.wiki) {\n\t\t$tw.utils.each(options.pathFilters,function(filter) {\n\t\t\tif(!filepath) {\n\t\t\t\tvar source = options.wiki.makeTiddlerIterator([title]),\n\t\t\t\t\tresult = options.wiki.filterTiddlers(filter,null,source);\n\t\t\t\tif(result.length > 0) {\n\t\t\t\t\tfilepath = result[0];\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\tif(!filepath && originalpath !== \"\") {\n\t\t//Use the originalpath without the extension\n\t\tvar ext = path.extname(originalpath);\n\t\tfilepath = originalpath.substring(0,originalpath.length - ext.length);\n\t} else if(!filepath) {\n\t\tfilepath = title;\n\t\t// If the filepath already ends in the extension then remove it\n\t\tif(filepath.substring(filepath.length - extension.length) === extension) {\n\t\t\tfilepath = filepath.substring(0,filepath.length - extension.length);\n\t\t}\n\t\t// Remove any forward or backward slashes so we don't create directories\n\t\tfilepath = filepath.replace(/\\/|\\\\/g,\"_\");\n\t}\n\t//If the path does not start with \".\" or \"..\" and a path seperator, then\n\tif(!/^\\.{1,2}[/\\\\]/g.test(filepath)) {\n\t\t// Don't let the filename start with any dots because such files are invisible on *nix\n\t\tfilepath = filepath.replace(/^\\.+/g,\"_\");\n\t}\n\t// Remove any characters that can't be used in cross-platform filenames\n\tfilepath = $tw.utils.transliterate(filepath.replace(/<|>|~|\\:|\\\"|\\||\\?|\\*|\\^/g,\"_\"));\n\t// Truncate the filename if it is too long\n\tif(filepath.length > 200) {\n\t\tfilepath = filepath.substr(0,200);\n\t}\n\t// If the resulting filename is blank (eg because the title is just punctuation characters)\n\tif(!filepath) {\n\t\t// ...then just use the character codes of the title\n\t\tfilepath = \"\";\t\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tif(filepath) {\n\t\t\t\tfilepath += \"-\";\n\t\t\t}\n\t\t\tfilepath += char.charCodeAt(0).toString();\n\t\t});\n\t}\n\t// Add a uniquifier if the file already exists\n\tvar fullPath, oldPath = (options.fileInfo) ? options.fileInfo.filepath : undefined,\n\t\tcount = 0;\n\tdo {\n\t\tfullPath = path.resolve(directory,filepath + (count ? \"_\" + count : \"\") + extension);\n\t\tif(oldPath && oldPath == fullPath) {\n\t\t\tbreak;\n\t\t}\n\t\tcount++;\n\t} while(fs.existsSync(fullPath));\n\t// If the last write failed with an error, or if path does not start with:\n\t//\tthe resolved options.directory, the resolved wikiPath directory, or the wikiTiddlersPath directory, \n\t//\tthen encodeURIComponent() and resolve to tiddler directory\n\tvar newPath = fullPath,\n\t\tencode = (options.fileInfo || {writeError: false}).writeError == true;\n\tif(!encode){\n\t\tencode = !(fullPath.indexOf(path.resolve(directory)) == 0 ||\n\t\t\tfullPath.indexOf(path.resolve($tw.boot.wikiPath)) == 0 ||\n\t\t\tfullPath.indexOf($tw.boot.wikiTiddlersPath) == 0);\n\t\t}\n\tif(encode){\n\t\tfullPath = path.resolve(directory, encodeURIComponent(fullPath));\n\t}\n\t// Call hook to allow plugins to modify the final path\n\tfullPath = $tw.hooks.invokeHook(\"th-make-tiddler-path\", newPath, fullPath);\n\t// Return the full path to the file\n\treturn fullPath;\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFile = function(tiddler,fileInfo,callback) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFile(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding,function(err) {\n\t\t\tif(err) {\n\t\t\t\treturn callback(err);\n\t\t\t}\n\t\t\tfs.writeFile(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\",callback);\n\t\t});\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFile(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\",callback);\n\t\t} else {\n\t\t\tfs.writeFile(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\",callback);\n\t\t}\n\t}\n};\n\n/*\nSave a tiddler to a file described by the fileInfo:\n\tfilepath: the absolute path to the file containing the tiddler\n\ttype: the type of the tiddler file (NOT the type of the tiddler)\n\thasMetaFile: true if the file also has a companion .meta file\n*/\nexports.saveTiddlerToFileSync = function(tiddler,fileInfo) {\n\t$tw.utils.createDirectory(path.dirname(fileInfo.filepath));\n\tif(fileInfo.hasMetaFile) {\n\t\t// Save the tiddler as a separate body and meta file\n\t\tvar typeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/plain\"] || {encoding: \"utf8\"};\n\t\tfs.writeFileSync(fileInfo.filepath,tiddler.fields.text,typeInfo.encoding);\n\t\tfs.writeFileSync(fileInfo.filepath + \".meta\",tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}),\"utf8\");\n\t} else {\n\t\t// Save the tiddler as a self contained templated file\n\t\tif(fileInfo.type === \"application/x-tiddler\") {\n\t\t\tfs.writeFileSync(fileInfo.filepath,tiddler.getFieldStringBlock({exclude: [\"text\",\"bag\"]}) + (!!tiddler.fields.text ? \"\\n\\n\" + tiddler.fields.text : \"\"),\"utf8\");\n\t\t} else {\n\t\t\tfs.writeFileSync(fileInfo.filepath,JSON.stringify([tiddler.getFieldStrings({exclude: [\"bag\"]})],null,$tw.config.preferences.jsonSpaces),\"utf8\");\n\t\t}\n\t}\n};\n\n/*\nDelete a file described by the fileInfo if it exits\n*/\nexports.deleteTiddlerFile = function(fileInfo, callback) {\n\t//Only attempt to delete files that exist on disk\n\tif(!fileInfo.filepath || !fs.existsSync(fileInfo.filepath)) {\n\t\treturn callback(null);\n\t}\n\t// Delete the file\n\tfs.unlink(fileInfo.filepath,function(err) {\n\t\tif(err) {\n\t\t\treturn callback(err);\n\t\t}\t\n\t\t// Delete the metafile if present\n\t\tif(fileInfo.hasMetaFile && fs.existsSync(fileInfo.filepath + \".meta\")) {\n\t\t\tfs.unlink(fileInfo.filepath + \".meta\",function(err) {\n\t\t\t\tif(err) {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),callback);\n\t\t\t});\n\t\t} else {\n\t\t\treturn $tw.utils.deleteEmptyDirs(path.dirname(fileInfo.filepath),callback);\n\t\t}\n\t});\n};\n\n/*\nCleanup old files on disk, by comparing the options values:\n\tadaptorInfo from $tw.syncer.tiddlerInfo\n\tbootInfo from $tw.boot.files\n*/\nexports.cleanupTiddlerFiles = function(options, callback) {\n\tvar adaptorInfo = options.adaptorInfo || {},\n\tbootInfo = options.bootInfo || {},\n\ttitle = options.title || \"undefined\";\n\tif(adaptorInfo.filepath && bootInfo.filepath && adaptorInfo.filepath !== bootInfo.filepath) {\n\t\treturn $tw.utils.deleteTiddlerFile(adaptorInfo, function(err){\n\t\t\tif(err) {\n\t\t\t\tif ((err.code == \"EPERM\" || err.code == \"EACCES\") && err.syscall == \"unlink\") {\n\t\t\t\t\t// Error deleting the previous file on disk, should fail gracefully\n\t\t\t\t\t$tw.syncer.displayError(\"Server desynchronized. Error cleaning up previous file for tiddler: \"+title, err);\n\t\t\t\t\treturn callback(null);\n\t\t\t\t} else {\n\t\t\t\t\treturn callback(err);\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn callback(null);\n\t\t});\n\t} else {\n\t\treturn callback(null);\n\t}\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils-node"
        },
        "$:/core/modules/utils/linkedlist.js": {
            "title": "$:/core/modules/utils/linkedlist.js",
            "text": "/*\\\nmodule-type: utils\ntitle: $:/core/modules/utils/linkedlist.js\ntype: application/javascript\n\nThis is a doubly-linked indexed list intended for manipulation, particularly\npushTop, which it does with significantly better performance than an array.\n\n\\*/\n(function(){\n\nfunction LinkedList() {\n\tthis.clear();\n};\n\nLinkedList.prototype.clear = function() {\n\tthis.index = Object.create(null);\n\t// LinkedList performs the duty of both the head and tail node\n\tthis.next = this;\n\tthis.prev = this;\n\tthis.length = 0;\n};\n\nLinkedList.prototype.remove = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t} else {\n\t\t_removeOne(this,value);\n\t}\n};\n\nLinkedList.prototype.push = function(/* values */) {\n\tfor(var i = 0; i < arguments.length; i++) {\n\t\tvar value = arguments[i];\n\t\tvar node = {value: value};\n\t\tvar preexistingNode = this.index[value];\n\t\t_linkToEnd(this,node);\n\t\tif(preexistingNode) {\n\t\t\t// We want to keep pointing to the first instance, but we want\n\t\t\t// to have that instance (or chain of instances) point to the\n\t\t\t// new one.\n\t\t\twhile (preexistingNode.copy) {\n\t\t\t\tpreexistingNode = preexistingNode.copy;\n\t\t\t}\n\t\t\tpreexistingNode.copy = node;\n\t\t} else {\n\t\t\tthis.index[value] = node;\n\t\t}\n\t}\n};\n\nLinkedList.prototype.pushTop = function(value) {\n\tif($tw.utils.isArray(value)) {\n\t\tfor(var t=0; t<value.length; t++) {\n\t\t\t_removeOne(this,value[t]);\n\t\t}\n\t\tthis.push.apply(this,value);\n\t} else {\n\t\tvar node = _removeOne(this,value);\n\t\tif(!node) {\n\t\t\tnode = {value: value};\n\t\t\tthis.index[value] = node;\n\t\t} else {\n\t\t\t// Put this node at the end of the copy chain.\n\t\t\tvar preexistingNode = node;\n\t\t\twhile(preexistingNode.copy) {\n\t\t\t\tpreexistingNode = preexistingNode.copy;\n\t\t\t}\n\t\t\t// The order of these three statements is important,\n\t\t\t// because sometimes preexistingNode == node.\n\t\t\tpreexistingNode.copy = node;\n\t\t\tthis.index[value] = node.copy;\n\t\t\tnode.copy = undefined;\n\t\t}\n\t\t_linkToEnd(this,node);\n\t}\n};\n\nLinkedList.prototype.each = function(callback) {\n\tfor(var ptr = this.next; ptr !== this; ptr = ptr.next) {\n\t\tcallback(ptr.value);\n\t}\n};\n\nLinkedList.prototype.toArray = function() {\n\tvar output = [];\n\tfor(var ptr = this.next; ptr !== this; ptr = ptr.next) {\n\t\toutput.push(ptr.value);\n\t}\n\treturn output;\n};\n\nfunction _removeOne(list,value) {\n\tvar node = list.index[value];\n\tif(node) {\n\t\tnode.prev.next = node.next;\n\t\tnode.next.prev = node.prev;\n\t\tlist.length -= 1;\n\t\t// Point index to the next instance of the same value, maybe nothing.\n\t\tlist.index[value] = node.copy;\n\t}\n\treturn node;\n};\n\nfunction _linkToEnd(list,node) {\n\t// Sticks the given node onto the end of the list.\n\tlist.prev.next = node;\n\tnode.prev = list.prev;\n\tlist.prev = node;\n\tnode.next = list;\n\tlist.length += 1;\n};\n\nexports.LinkedList = LinkedList;\n\n})();\n",
            "module-type": "utils",
            "type": "application/javascript"
        },
        "$:/core/modules/utils/logger.js": {
            "title": "$:/core/modules/utils/logger.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/logger.js\ntype: application/javascript\nmodule-type: utils\n\nA basic logging implementation\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar ALERT_TAG = \"$:/tags/Alert\";\n\n/*\nMake a new logger\n*/\nfunction Logger(componentName,options) {\n\toptions = options || {};\n\tthis.componentName = componentName || \"\";\n\tthis.colour = options.colour || \"white\";\n\tthis.enable = \"enable\" in options ? options.enable : true;\n\tthis.save = \"save\" in options ? options.save : true;\n\tthis.saveLimit = options.saveLimit || 100 * 1024;\n\tthis.saveBufferLogger = this;\n\tthis.buffer = \"\";\n\tthis.alertCount = 0;\n}\n\nLogger.prototype.setSaveBuffer = function(logger) {\n\tthis.saveBufferLogger = logger;\n};\n\n/*\nLog a message\n*/\nLogger.prototype.log = function(/* args */) {\n\tvar self = this;\n\tif(this.enable) {\n\t\tif(this.saveBufferLogger.save) {\n\t\t\tthis.saveBufferLogger.buffer += $tw.utils.formatDateString(new Date(),\"YYYY MM DD 0hh:0mm:0ss.0XXX\") + \":\";\n\t\t\t$tw.utils.each(Array.prototype.slice.call(arguments,0),function(arg,index) {\n\t\t\t\tself.saveBufferLogger.buffer += \" \" + arg;\n\t\t\t});\n\t\t\tthis.saveBufferLogger.buffer += \"\\n\";\n\t\t\tthis.saveBufferLogger.buffer = this.saveBufferLogger.buffer.slice(-this.saveBufferLogger.saveLimit);\t\t\t\n\t\t}\n\t\tif(console !== undefined && console.log !== undefined) {\n\t\t\treturn Function.apply.call(console.log, console, [$tw.utils.terminalColour(this.colour),this.componentName + \":\"].concat(Array.prototype.slice.call(arguments,0)).concat($tw.utils.terminalColour()));\n\t\t}\n\t} \n};\n\n/*\nRead the message buffer\n*/\nLogger.prototype.getBuffer = function() {\n\treturn this.saveBufferLogger.buffer;\n};\n\n/*\nLog a structure as a table\n*/\nLogger.prototype.table = function(value) {\n\t(console.table || console.log)(value);\n};\n\n/*\nAlert a message\n*/\nLogger.prototype.alert = function(/* args */) {\n\tif(this.enable) {\n\t\t// Prepare the text of the alert\n\t\tvar text = Array.prototype.join.call(arguments,\" \");\n\t\t// Create alert tiddlers in the browser\n\t\tif($tw.browser) {\n\t\t\t// Check if there is an existing alert with the same text and the same component\n\t\t\tvar existingAlerts = $tw.wiki.getTiddlersWithTag(ALERT_TAG),\n\t\t\t\talertFields,\n\t\t\t\texistingCount,\n\t\t\t\tself = this;\n\t\t\t$tw.utils.each(existingAlerts,function(title) {\n\t\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\t\tif(tiddler.fields.text === text && tiddler.fields.component === self.componentName && tiddler.fields.modified && (!alertFields || tiddler.fields.modified < alertFields.modified)) {\n\t\t\t\t\t\talertFields = $tw.utils.extend({},tiddler.fields);\n\t\t\t\t}\n\t\t\t});\n\t\t\tif(alertFields) {\n\t\t\t\texistingCount = alertFields.count || 1;\n\t\t\t} else {\n\t\t\t\talertFields = {\n\t\t\t\t\ttitle: $tw.wiki.generateNewTitle(\"$:/temp/alerts/alert\",{prefix: \"\"}),\n\t\t\t\t\ttext: text,\n\t\t\t\t\ttags: [ALERT_TAG],\n\t\t\t\t\tcomponent: this.componentName\n\t\t\t\t};\n\t\t\t\texistingCount = 0;\n\t\t\t\tthis.alertCount += 1;\n\t\t\t}\n\t\t\talertFields.modified = new Date();\n\t\t\tif(++existingCount > 1) {\n\t\t\t\talertFields.count = existingCount;\n\t\t\t} else {\n\t\t\t\talertFields.count = undefined;\n\t\t\t}\n\t\t\t$tw.wiki.addTiddler(new $tw.Tiddler(alertFields));\n\t\t\t// Log the alert as well\n\t\t\tthis.log.apply(this,Array.prototype.slice.call(arguments,0));\n\t\t} else {\n\t\t\t// Print an orange message to the console if not in the browser\n\t\t\tconsole.error(\"\\x1b[1;33m\" + text + \"\\x1b[0m\");\n\t\t}\t\t\n\t}\n};\n\n/*\nClear outstanding alerts\n*/\nLogger.prototype.clearAlerts = function() {\n\tvar self = this;\n\tif($tw.browser && this.alertCount > 0) {\n\t\t$tw.utils.each($tw.wiki.getTiddlersWithTag(ALERT_TAG),function(title) {\n\t\t\tvar tiddler = $tw.wiki.getTiddler(title);\n\t\t\tif(tiddler.fields.component === self.componentName) {\n\t\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t\t}\n\t\t});\n\t\tthis.alertCount = 0;\n\t}\n};\n\nexports.Logger = Logger;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/parsetree.js": {
            "title": "$:/core/modules/utils/parsetree.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/parsetree.js\ntype: application/javascript\nmodule-type: utils\n\nParse tree utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.addAttributeToParseTreeNode = function(node,name,value) {\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[name] = {type: \"string\", value: value};\n};\n\nexports.getAttributeValueFromParseTreeNode = function(node,name,defaultValue) {\n\tif(node.attributes && node.attributes[name] && node.attributes[name].value !== undefined) {\n\t\treturn node.attributes[name].value;\n\t}\n\treturn defaultValue;\n};\n\nexports.addClassToParseTreeNode = function(node,classString) {\n\tvar classes = [];\n\tnode.attributes = node.attributes || {};\n\tnode.attributes[\"class\"] = node.attributes[\"class\"] || {type: \"string\", value: \"\"};\n\tif(node.attributes[\"class\"].type === \"string\") {\n\t\tif(node.attributes[\"class\"].value !== \"\") {\n\t\t\tclasses = node.attributes[\"class\"].value.split(\" \");\n\t\t}\n\t\tif(classString !== \"\") {\n\t\t\t$tw.utils.pushTop(classes,classString.split(\" \"));\n\t\t}\n\t\tnode.attributes[\"class\"].value = classes.join(\" \");\n\t}\n};\n\nexports.addStyleToParseTreeNode = function(node,name,value) {\n\t\tnode.attributes = node.attributes || {};\n\t\tnode.attributes.style = node.attributes.style || {type: \"string\", value: \"\"};\n\t\tif(node.attributes.style.type === \"string\") {\n\t\t\tnode.attributes.style.value += name + \":\" + value + \";\";\n\t\t}\n};\n\nexports.findParseTreeNode = function(nodeArray,search) {\n\tfor(var t=0; t<nodeArray.length; t++) {\n\t\tif(nodeArray[t].type === search.type && nodeArray[t].tag === search.tag) {\n\t\t\treturn nodeArray[t];\n\t\t}\n\t}\n\treturn undefined;\n};\n\n/*\nHelper to get the text of a parse tree node or array of nodes\n*/\nexports.getParseTreeText = function getParseTreeText(tree) {\n\tvar output = [];\n\tif($tw.utils.isArray(tree)) {\n\t\t$tw.utils.each(tree,function(node) {\n\t\t\toutput.push(getParseTreeText(node));\n\t\t});\n\t} else {\n\t\tif(tree.type === \"text\") {\n\t\t\toutput.push(tree.text);\n\t\t}\n\t\tif(tree.children) {\n\t\t\treturn getParseTreeText(tree.children);\n\t\t}\n\t}\n\treturn output.join(\"\");\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/performance.js": {
            "title": "$:/core/modules/utils/performance.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/performance.js\ntype: application/javascript\nmodule-type: global\n\nPerformance measurement.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nfunction Performance(enabled) {\n\tthis.enabled = !!enabled;\n\tthis.measures = {}; // Hashmap by measurement name of {time:, invocations:}\n\tthis.logger = new $tw.utils.Logger(\"performance\");\n\tthis.showGreeting();\n}\n\nPerformance.prototype.showGreeting = function() {\n\tif($tw.browser) {\n\t\tthis.logger.log(\"Execute $tw.perf.log(); to see filter execution timings\");\t\t\n\t}\n};\n\n/*\nWrap performance reporting around a top level function\n*/\nPerformance.prototype.report = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tself.logger.log(name + \": \" + $tw.utils.timer(startTime).toFixed(2) + \"ms\");\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nPerformance.prototype.log = function() {\n\tvar self = this,\n\t\ttotalTime = 0,\n\t\torderedMeasures = Object.keys(this.measures).sort(function(a,b) {\n\t\t\tif(self.measures[a].time > self.measures[b].time) {\n\t\t\t\treturn -1;\n\t\t\t} else if (self.measures[a].time < self.measures[b].time) {\n\t\t\t\treturn + 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t});\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\ttotalTime += self.measures[name].time;\n\t});\n\tvar results = []\n\t$tw.utils.each(orderedMeasures,function(name) {\n\t\tvar measure = self.measures[name];\n\t\tresults.push({name: name,invocations: measure.invocations, avgTime: measure.time / measure.invocations, totalTime: measure.time, percentTime: (measure.time / totalTime) * 100})\n\t});\n\tself.logger.table(results);\n};\n\n/*\nWrap performance measurements around a subfunction\n*/\nPerformance.prototype.measure = function(name,fn) {\n\tvar self = this;\n\tif(this.enabled) {\n\t\treturn function() {\n\t\t\tvar startTime = $tw.utils.timer(),\n\t\t\t\tresult = fn.apply(this,arguments);\n\t\t\tif(!(name in self.measures)) {\n\t\t\t\tself.measures[name] = {time: 0, invocations: 0};\n\t\t\t}\n\t\t\tself.measures[name].time += $tw.utils.timer(startTime);\n\t\t\tself.measures[name].invocations++;\n\t\t\treturn result;\n\t\t};\n\t} else {\n\t\treturn fn;\n\t}\n};\n\nexports.Performance = Performance;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "global"
        },
        "$:/core/modules/utils/pluginmaker.js": {
            "title": "$:/core/modules/utils/pluginmaker.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/pluginmaker.js\ntype: application/javascript\nmodule-type: utils\n\nA quick and dirty way to pack up plugins within the browser.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRepack a plugin, and then delete any non-shadow payload tiddlers\n*/\nexports.repackPlugin = function(title,additionalTiddlers,excludeTiddlers) {\n\tadditionalTiddlers = additionalTiddlers || [];\n\texcludeTiddlers = excludeTiddlers || [];\n\t// Get the plugin tiddler\n\tvar pluginTiddler = $tw.wiki.getTiddler(title);\n\tif(!pluginTiddler) {\n\t\tthrow \"No such tiddler as \" + title;\n\t}\n\t// Extract the JSON\n\tvar jsonPluginTiddler;\n\ttry {\n\t\tjsonPluginTiddler = JSON.parse(pluginTiddler.fields.text);\n\t} catch(e) {\n\t\tthrow \"Cannot parse plugin tiddler \" + title + \"\\n\" + $tw.language.getString(\"Error/Caption\") + \": \" + e;\n\t}\n\t// Get the list of tiddlers\n\tvar tiddlers = Object.keys(jsonPluginTiddler.tiddlers);\n\t// Add the additional tiddlers\n\t$tw.utils.pushTop(tiddlers,additionalTiddlers);\n\t// Remove any excluded tiddlers\n\tfor(var t=tiddlers.length-1; t>=0; t--) {\n\t\tif(excludeTiddlers.indexOf(tiddlers[t]) !== -1) {\n\t\t\ttiddlers.splice(t,1);\n\t\t}\n\t}\n\t// Pack up the tiddlers into a block of JSON\n\tvar plugins = {};\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = $tw.wiki.getTiddler(title),\n\t\t\tfields = {};\n\t\t$tw.utils.each(tiddler.fields,function (value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\tplugins[title] = fields;\n\t});\n\t// Retrieve and bump the version number\n\tvar pluginVersion = $tw.utils.parseVersion(pluginTiddler.getFieldString(\"version\") || \"0.0.0\") || {\n\t\t\tmajor: \"0\",\n\t\t\tminor: \"0\",\n\t\t\tpatch: \"0\"\n\t\t};\n\tpluginVersion.patch++;\n\tvar version = pluginVersion.major + \".\" + pluginVersion.minor + \".\" + pluginVersion.patch;\n\tif(pluginVersion.prerelease) {\n\t\tversion += \"-\" + pluginVersion.prerelease;\n\t}\n\tif(pluginVersion.build) {\n\t\tversion += \"+\" + pluginVersion.build;\n\t}\n\t// Save the tiddler\n\t$tw.wiki.addTiddler(new $tw.Tiddler(pluginTiddler,{text: JSON.stringify({tiddlers: plugins},null,4), version: version}));\n\t// Delete any non-shadow constituent tiddlers\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tif($tw.wiki.tiddlerExists(title)) {\n\t\t\t$tw.wiki.deleteTiddler(title);\n\t\t}\n\t});\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t// Return a heartwarming confirmation\n\treturn \"Plugin \" + title + \" successfully saved\";\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/transliterate.js": {
            "title": "$:/core/modules/utils/transliterate.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/transliterate.js\ntype: application/javascript\nmodule-type: utils\n\nTransliteration static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nTransliterate string to ASCII\n\n(Some pairs taken from http://semplicewebsites.com/removing-accents-javascript)\n*/\nexports.transliterationPairs = {\n\t\"Á\":\"A\",\n\t\"Ă\":\"A\",\n\t\"Ắ\":\"A\",\n\t\"Ặ\":\"A\",\n\t\"Ằ\":\"A\",\n\t\"Ẳ\":\"A\",\n\t\"Ẵ\":\"A\",\n\t\"Ǎ\":\"A\",\n\t\"Â\":\"A\",\n\t\"Ấ\":\"A\",\n\t\"Ậ\":\"A\",\n\t\"Ầ\":\"A\",\n\t\"Ẩ\":\"A\",\n\t\"Ẫ\":\"A\",\n\t\"Ä\":\"A\",\n\t\"Ǟ\":\"A\",\n\t\"Ȧ\":\"A\",\n\t\"Ǡ\":\"A\",\n\t\"Ạ\":\"A\",\n\t\"Ȁ\":\"A\",\n\t\"À\":\"A\",\n\t\"Ả\":\"A\",\n\t\"Ȃ\":\"A\",\n\t\"Ā\":\"A\",\n\t\"Ą\":\"A\",\n\t\"Å\":\"A\",\n\t\"Ǻ\":\"A\",\n\t\"Ḁ\":\"A\",\n\t\"Ⱥ\":\"A\",\n\t\"Ã\":\"A\",\n\t\"Ꜳ\":\"AA\",\n\t\"Æ\":\"AE\",\n\t\"Ǽ\":\"AE\",\n\t\"Ǣ\":\"AE\",\n\t\"Ꜵ\":\"AO\",\n\t\"Ꜷ\":\"AU\",\n\t\"Ꜹ\":\"AV\",\n\t\"Ꜻ\":\"AV\",\n\t\"Ꜽ\":\"AY\",\n\t\"Ḃ\":\"B\",\n\t\"Ḅ\":\"B\",\n\t\"Ɓ\":\"B\",\n\t\"Ḇ\":\"B\",\n\t\"Ƀ\":\"B\",\n\t\"Ƃ\":\"B\",\n\t\"Ć\":\"C\",\n\t\"Č\":\"C\",\n\t\"Ç\":\"C\",\n\t\"Ḉ\":\"C\",\n\t\"Ĉ\":\"C\",\n\t\"Ċ\":\"C\",\n\t\"Ƈ\":\"C\",\n\t\"Ȼ\":\"C\",\n\t\"Ď\":\"D\",\n\t\"Ḑ\":\"D\",\n\t\"Ḓ\":\"D\",\n\t\"Ḋ\":\"D\",\n\t\"Ḍ\":\"D\",\n\t\"Ɗ\":\"D\",\n\t\"Ḏ\":\"D\",\n\t\"Dz\":\"D\",\n\t\"Dž\":\"D\",\n\t\"Đ\":\"D\",\n\t\"Ƌ\":\"D\",\n\t\"DZ\":\"DZ\",\n\t\"DŽ\":\"DZ\",\n\t\"É\":\"E\",\n\t\"Ĕ\":\"E\",\n\t\"Ě\":\"E\",\n\t\"Ȩ\":\"E\",\n\t\"Ḝ\":\"E\",\n\t\"Ê\":\"E\",\n\t\"Ế\":\"E\",\n\t\"Ệ\":\"E\",\n\t\"Ề\":\"E\",\n\t\"Ể\":\"E\",\n\t\"Ễ\":\"E\",\n\t\"Ḙ\":\"E\",\n\t\"Ë\":\"E\",\n\t\"Ė\":\"E\",\n\t\"Ẹ\":\"E\",\n\t\"Ȅ\":\"E\",\n\t\"È\":\"E\",\n\t\"Ẻ\":\"E\",\n\t\"Ȇ\":\"E\",\n\t\"Ē\":\"E\",\n\t\"Ḗ\":\"E\",\n\t\"Ḕ\":\"E\",\n\t\"Ę\":\"E\",\n\t\"Ɇ\":\"E\",\n\t\"Ẽ\":\"E\",\n\t\"Ḛ\":\"E\",\n\t\"Ꝫ\":\"ET\",\n\t\"Ḟ\":\"F\",\n\t\"Ƒ\":\"F\",\n\t\"Ǵ\":\"G\",\n\t\"Ğ\":\"G\",\n\t\"Ǧ\":\"G\",\n\t\"Ģ\":\"G\",\n\t\"Ĝ\":\"G\",\n\t\"Ġ\":\"G\",\n\t\"Ɠ\":\"G\",\n\t\"Ḡ\":\"G\",\n\t\"Ǥ\":\"G\",\n\t\"Ḫ\":\"H\",\n\t\"Ȟ\":\"H\",\n\t\"Ḩ\":\"H\",\n\t\"Ĥ\":\"H\",\n\t\"Ⱨ\":\"H\",\n\t\"Ḧ\":\"H\",\n\t\"Ḣ\":\"H\",\n\t\"Ḥ\":\"H\",\n\t\"Ħ\":\"H\",\n\t\"Í\":\"I\",\n\t\"Ĭ\":\"I\",\n\t\"Ǐ\":\"I\",\n\t\"Î\":\"I\",\n\t\"Ï\":\"I\",\n\t\"Ḯ\":\"I\",\n\t\"İ\":\"I\",\n\t\"Ị\":\"I\",\n\t\"Ȉ\":\"I\",\n\t\"Ì\":\"I\",\n\t\"Ỉ\":\"I\",\n\t\"Ȋ\":\"I\",\n\t\"Ī\":\"I\",\n\t\"Į\":\"I\",\n\t\"Ɨ\":\"I\",\n\t\"Ĩ\":\"I\",\n\t\"Ḭ\":\"I\",\n\t\"Ꝺ\":\"D\",\n\t\"Ꝼ\":\"F\",\n\t\"Ᵹ\":\"G\",\n\t\"Ꞃ\":\"R\",\n\t\"Ꞅ\":\"S\",\n\t\"Ꞇ\":\"T\",\n\t\"Ꝭ\":\"IS\",\n\t\"Ĵ\":\"J\",\n\t\"Ɉ\":\"J\",\n\t\"Ḱ\":\"K\",\n\t\"Ǩ\":\"K\",\n\t\"Ķ\":\"K\",\n\t\"Ⱪ\":\"K\",\n\t\"Ꝃ\":\"K\",\n\t\"Ḳ\":\"K\",\n\t\"Ƙ\":\"K\",\n\t\"Ḵ\":\"K\",\n\t\"Ꝁ\":\"K\",\n\t\"Ꝅ\":\"K\",\n\t\"Ĺ\":\"L\",\n\t\"Ƚ\":\"L\",\n\t\"Ľ\":\"L\",\n\t\"Ļ\":\"L\",\n\t\"Ḽ\":\"L\",\n\t\"Ḷ\":\"L\",\n\t\"Ḹ\":\"L\",\n\t\"Ⱡ\":\"L\",\n\t\"Ꝉ\":\"L\",\n\t\"Ḻ\":\"L\",\n\t\"Ŀ\":\"L\",\n\t\"Ɫ\":\"L\",\n\t\"Lj\":\"L\",\n\t\"Ł\":\"L\",\n\t\"LJ\":\"LJ\",\n\t\"Ḿ\":\"M\",\n\t\"Ṁ\":\"M\",\n\t\"Ṃ\":\"M\",\n\t\"Ɱ\":\"M\",\n\t\"Ń\":\"N\",\n\t\"Ň\":\"N\",\n\t\"Ņ\":\"N\",\n\t\"Ṋ\":\"N\",\n\t\"Ṅ\":\"N\",\n\t\"Ṇ\":\"N\",\n\t\"Ǹ\":\"N\",\n\t\"Ɲ\":\"N\",\n\t\"Ṉ\":\"N\",\n\t\"Ƞ\":\"N\",\n\t\"Nj\":\"N\",\n\t\"Ñ\":\"N\",\n\t\"NJ\":\"NJ\",\n\t\"Ó\":\"O\",\n\t\"Ŏ\":\"O\",\n\t\"Ǒ\":\"O\",\n\t\"Ô\":\"O\",\n\t\"Ố\":\"O\",\n\t\"Ộ\":\"O\",\n\t\"Ồ\":\"O\",\n\t\"Ổ\":\"O\",\n\t\"Ỗ\":\"O\",\n\t\"Ö\":\"O\",\n\t\"Ȫ\":\"O\",\n\t\"Ȯ\":\"O\",\n\t\"Ȱ\":\"O\",\n\t\"Ọ\":\"O\",\n\t\"Ő\":\"O\",\n\t\"Ȍ\":\"O\",\n\t\"Ò\":\"O\",\n\t\"Ỏ\":\"O\",\n\t\"Ơ\":\"O\",\n\t\"Ớ\":\"O\",\n\t\"Ợ\":\"O\",\n\t\"Ờ\":\"O\",\n\t\"Ở\":\"O\",\n\t\"Ỡ\":\"O\",\n\t\"Ȏ\":\"O\",\n\t\"Ꝋ\":\"O\",\n\t\"Ꝍ\":\"O\",\n\t\"Ō\":\"O\",\n\t\"Ṓ\":\"O\",\n\t\"Ṑ\":\"O\",\n\t\"Ɵ\":\"O\",\n\t\"Ǫ\":\"O\",\n\t\"Ǭ\":\"O\",\n\t\"Ø\":\"O\",\n\t\"Ǿ\":\"O\",\n\t\"Õ\":\"O\",\n\t\"Ṍ\":\"O\",\n\t\"Ṏ\":\"O\",\n\t\"Ȭ\":\"O\",\n\t\"Ƣ\":\"OI\",\n\t\"Ꝏ\":\"OO\",\n\t\"Ɛ\":\"E\",\n\t\"Ɔ\":\"O\",\n\t\"Ȣ\":\"OU\",\n\t\"Ṕ\":\"P\",\n\t\"Ṗ\":\"P\",\n\t\"Ꝓ\":\"P\",\n\t\"Ƥ\":\"P\",\n\t\"Ꝕ\":\"P\",\n\t\"Ᵽ\":\"P\",\n\t\"Ꝑ\":\"P\",\n\t\"Ꝙ\":\"Q\",\n\t\"Ꝗ\":\"Q\",\n\t\"Ŕ\":\"R\",\n\t\"Ř\":\"R\",\n\t\"Ŗ\":\"R\",\n\t\"Ṙ\":\"R\",\n\t\"Ṛ\":\"R\",\n\t\"Ṝ\":\"R\",\n\t\"Ȑ\":\"R\",\n\t\"Ȓ\":\"R\",\n\t\"Ṟ\":\"R\",\n\t\"Ɍ\":\"R\",\n\t\"Ɽ\":\"R\",\n\t\"Ꜿ\":\"C\",\n\t\"Ǝ\":\"E\",\n\t\"Ś\":\"S\",\n\t\"Ṥ\":\"S\",\n\t\"Š\":\"S\",\n\t\"Ṧ\":\"S\",\n\t\"Ş\":\"S\",\n\t\"Ŝ\":\"S\",\n\t\"Ș\":\"S\",\n\t\"Ṡ\":\"S\",\n\t\"Ṣ\":\"S\",\n\t\"Ṩ\":\"S\",\n\t\"Ť\":\"T\",\n\t\"Ţ\":\"T\",\n\t\"Ṱ\":\"T\",\n\t\"Ț\":\"T\",\n\t\"Ⱦ\":\"T\",\n\t\"Ṫ\":\"T\",\n\t\"Ṭ\":\"T\",\n\t\"Ƭ\":\"T\",\n\t\"Ṯ\":\"T\",\n\t\"Ʈ\":\"T\",\n\t\"Ŧ\":\"T\",\n\t\"Ɐ\":\"A\",\n\t\"Ꞁ\":\"L\",\n\t\"Ɯ\":\"M\",\n\t\"Ʌ\":\"V\",\n\t\"Ꜩ\":\"TZ\",\n\t\"Ú\":\"U\",\n\t\"Ŭ\":\"U\",\n\t\"Ǔ\":\"U\",\n\t\"Û\":\"U\",\n\t\"Ṷ\":\"U\",\n\t\"Ü\":\"U\",\n\t\"Ǘ\":\"U\",\n\t\"Ǚ\":\"U\",\n\t\"Ǜ\":\"U\",\n\t\"Ǖ\":\"U\",\n\t\"Ṳ\":\"U\",\n\t\"Ụ\":\"U\",\n\t\"Ű\":\"U\",\n\t\"Ȕ\":\"U\",\n\t\"Ù\":\"U\",\n\t\"Ủ\":\"U\",\n\t\"Ư\":\"U\",\n\t\"Ứ\":\"U\",\n\t\"Ự\":\"U\",\n\t\"Ừ\":\"U\",\n\t\"Ử\":\"U\",\n\t\"Ữ\":\"U\",\n\t\"Ȗ\":\"U\",\n\t\"Ū\":\"U\",\n\t\"Ṻ\":\"U\",\n\t\"Ų\":\"U\",\n\t\"Ů\":\"U\",\n\t\"Ũ\":\"U\",\n\t\"Ṹ\":\"U\",\n\t\"Ṵ\":\"U\",\n\t\"Ꝟ\":\"V\",\n\t\"Ṿ\":\"V\",\n\t\"Ʋ\":\"V\",\n\t\"Ṽ\":\"V\",\n\t\"Ꝡ\":\"VY\",\n\t\"Ẃ\":\"W\",\n\t\"Ŵ\":\"W\",\n\t\"Ẅ\":\"W\",\n\t\"Ẇ\":\"W\",\n\t\"Ẉ\":\"W\",\n\t\"Ẁ\":\"W\",\n\t\"Ⱳ\":\"W\",\n\t\"Ẍ\":\"X\",\n\t\"Ẋ\":\"X\",\n\t\"Ý\":\"Y\",\n\t\"Ŷ\":\"Y\",\n\t\"Ÿ\":\"Y\",\n\t\"Ẏ\":\"Y\",\n\t\"Ỵ\":\"Y\",\n\t\"Ỳ\":\"Y\",\n\t\"Ƴ\":\"Y\",\n\t\"Ỷ\":\"Y\",\n\t\"Ỿ\":\"Y\",\n\t\"Ȳ\":\"Y\",\n\t\"Ɏ\":\"Y\",\n\t\"Ỹ\":\"Y\",\n\t\"Ź\":\"Z\",\n\t\"Ž\":\"Z\",\n\t\"Ẑ\":\"Z\",\n\t\"Ⱬ\":\"Z\",\n\t\"Ż\":\"Z\",\n\t\"Ẓ\":\"Z\",\n\t\"Ȥ\":\"Z\",\n\t\"Ẕ\":\"Z\",\n\t\"Ƶ\":\"Z\",\n\t\"IJ\":\"IJ\",\n\t\"Œ\":\"OE\",\n\t\"ᴀ\":\"A\",\n\t\"ᴁ\":\"AE\",\n\t\"ʙ\":\"B\",\n\t\"ᴃ\":\"B\",\n\t\"ᴄ\":\"C\",\n\t\"ᴅ\":\"D\",\n\t\"ᴇ\":\"E\",\n\t\"ꜰ\":\"F\",\n\t\"ɢ\":\"G\",\n\t\"ʛ\":\"G\",\n\t\"ʜ\":\"H\",\n\t\"ɪ\":\"I\",\n\t\"ʁ\":\"R\",\n\t\"ᴊ\":\"J\",\n\t\"ᴋ\":\"K\",\n\t\"ʟ\":\"L\",\n\t\"ᴌ\":\"L\",\n\t\"ᴍ\":\"M\",\n\t\"ɴ\":\"N\",\n\t\"ᴏ\":\"O\",\n\t\"ɶ\":\"OE\",\n\t\"ᴐ\":\"O\",\n\t\"ᴕ\":\"OU\",\n\t\"ᴘ\":\"P\",\n\t\"ʀ\":\"R\",\n\t\"ᴎ\":\"N\",\n\t\"ᴙ\":\"R\",\n\t\"ꜱ\":\"S\",\n\t\"ᴛ\":\"T\",\n\t\"ⱻ\":\"E\",\n\t\"ᴚ\":\"R\",\n\t\"ᴜ\":\"U\",\n\t\"ᴠ\":\"V\",\n\t\"ᴡ\":\"W\",\n\t\"ʏ\":\"Y\",\n\t\"ᴢ\":\"Z\",\n\t\"á\":\"a\",\n\t\"ă\":\"a\",\n\t\"ắ\":\"a\",\n\t\"ặ\":\"a\",\n\t\"ằ\":\"a\",\n\t\"ẳ\":\"a\",\n\t\"ẵ\":\"a\",\n\t\"ǎ\":\"a\",\n\t\"â\":\"a\",\n\t\"ấ\":\"a\",\n\t\"ậ\":\"a\",\n\t\"ầ\":\"a\",\n\t\"ẩ\":\"a\",\n\t\"ẫ\":\"a\",\n\t\"ä\":\"a\",\n\t\"ǟ\":\"a\",\n\t\"ȧ\":\"a\",\n\t\"ǡ\":\"a\",\n\t\"ạ\":\"a\",\n\t\"ȁ\":\"a\",\n\t\"à\":\"a\",\n\t\"ả\":\"a\",\n\t\"ȃ\":\"a\",\n\t\"ā\":\"a\",\n\t\"ą\":\"a\",\n\t\"ᶏ\":\"a\",\n\t\"ẚ\":\"a\",\n\t\"å\":\"a\",\n\t\"ǻ\":\"a\",\n\t\"ḁ\":\"a\",\n\t\"ⱥ\":\"a\",\n\t\"ã\":\"a\",\n\t\"ꜳ\":\"aa\",\n\t\"æ\":\"ae\",\n\t\"ǽ\":\"ae\",\n\t\"ǣ\":\"ae\",\n\t\"ꜵ\":\"ao\",\n\t\"ꜷ\":\"au\",\n\t\"ꜹ\":\"av\",\n\t\"ꜻ\":\"av\",\n\t\"ꜽ\":\"ay\",\n\t\"ḃ\":\"b\",\n\t\"ḅ\":\"b\",\n\t\"ɓ\":\"b\",\n\t\"ḇ\":\"b\",\n\t\"ᵬ\":\"b\",\n\t\"ᶀ\":\"b\",\n\t\"ƀ\":\"b\",\n\t\"ƃ\":\"b\",\n\t\"ɵ\":\"o\",\n\t\"ć\":\"c\",\n\t\"č\":\"c\",\n\t\"ç\":\"c\",\n\t\"ḉ\":\"c\",\n\t\"ĉ\":\"c\",\n\t\"ɕ\":\"c\",\n\t\"ċ\":\"c\",\n\t\"ƈ\":\"c\",\n\t\"ȼ\":\"c\",\n\t\"ď\":\"d\",\n\t\"ḑ\":\"d\",\n\t\"ḓ\":\"d\",\n\t\"ȡ\":\"d\",\n\t\"ḋ\":\"d\",\n\t\"ḍ\":\"d\",\n\t\"ɗ\":\"d\",\n\t\"ᶑ\":\"d\",\n\t\"ḏ\":\"d\",\n\t\"ᵭ\":\"d\",\n\t\"ᶁ\":\"d\",\n\t\"đ\":\"d\",\n\t\"ɖ\":\"d\",\n\t\"ƌ\":\"d\",\n\t\"ı\":\"i\",\n\t\"ȷ\":\"j\",\n\t\"ɟ\":\"j\",\n\t\"ʄ\":\"j\",\n\t\"dz\":\"dz\",\n\t\"dž\":\"dz\",\n\t\"é\":\"e\",\n\t\"ĕ\":\"e\",\n\t\"ě\":\"e\",\n\t\"ȩ\":\"e\",\n\t\"ḝ\":\"e\",\n\t\"ê\":\"e\",\n\t\"ế\":\"e\",\n\t\"ệ\":\"e\",\n\t\"ề\":\"e\",\n\t\"ể\":\"e\",\n\t\"ễ\":\"e\",\n\t\"ḙ\":\"e\",\n\t\"ë\":\"e\",\n\t\"ė\":\"e\",\n\t\"ẹ\":\"e\",\n\t\"ȅ\":\"e\",\n\t\"è\":\"e\",\n\t\"ẻ\":\"e\",\n\t\"ȇ\":\"e\",\n\t\"ē\":\"e\",\n\t\"ḗ\":\"e\",\n\t\"ḕ\":\"e\",\n\t\"ⱸ\":\"e\",\n\t\"ę\":\"e\",\n\t\"ᶒ\":\"e\",\n\t\"ɇ\":\"e\",\n\t\"ẽ\":\"e\",\n\t\"ḛ\":\"e\",\n\t\"ꝫ\":\"et\",\n\t\"ḟ\":\"f\",\n\t\"ƒ\":\"f\",\n\t\"ᵮ\":\"f\",\n\t\"ᶂ\":\"f\",\n\t\"ǵ\":\"g\",\n\t\"ğ\":\"g\",\n\t\"ǧ\":\"g\",\n\t\"ģ\":\"g\",\n\t\"ĝ\":\"g\",\n\t\"ġ\":\"g\",\n\t\"ɠ\":\"g\",\n\t\"ḡ\":\"g\",\n\t\"ᶃ\":\"g\",\n\t\"ǥ\":\"g\",\n\t\"ḫ\":\"h\",\n\t\"ȟ\":\"h\",\n\t\"ḩ\":\"h\",\n\t\"ĥ\":\"h\",\n\t\"ⱨ\":\"h\",\n\t\"ḧ\":\"h\",\n\t\"ḣ\":\"h\",\n\t\"ḥ\":\"h\",\n\t\"ɦ\":\"h\",\n\t\"ẖ\":\"h\",\n\t\"ħ\":\"h\",\n\t\"ƕ\":\"hv\",\n\t\"í\":\"i\",\n\t\"ĭ\":\"i\",\n\t\"ǐ\":\"i\",\n\t\"î\":\"i\",\n\t\"ï\":\"i\",\n\t\"ḯ\":\"i\",\n\t\"ị\":\"i\",\n\t\"ȉ\":\"i\",\n\t\"ì\":\"i\",\n\t\"ỉ\":\"i\",\n\t\"ȋ\":\"i\",\n\t\"ī\":\"i\",\n\t\"į\":\"i\",\n\t\"ᶖ\":\"i\",\n\t\"ɨ\":\"i\",\n\t\"ĩ\":\"i\",\n\t\"ḭ\":\"i\",\n\t\"ꝺ\":\"d\",\n\t\"ꝼ\":\"f\",\n\t\"ᵹ\":\"g\",\n\t\"ꞃ\":\"r\",\n\t\"ꞅ\":\"s\",\n\t\"ꞇ\":\"t\",\n\t\"ꝭ\":\"is\",\n\t\"ǰ\":\"j\",\n\t\"ĵ\":\"j\",\n\t\"ʝ\":\"j\",\n\t\"ɉ\":\"j\",\n\t\"ḱ\":\"k\",\n\t\"ǩ\":\"k\",\n\t\"ķ\":\"k\",\n\t\"ⱪ\":\"k\",\n\t\"ꝃ\":\"k\",\n\t\"ḳ\":\"k\",\n\t\"ƙ\":\"k\",\n\t\"ḵ\":\"k\",\n\t\"ᶄ\":\"k\",\n\t\"ꝁ\":\"k\",\n\t\"ꝅ\":\"k\",\n\t\"ĺ\":\"l\",\n\t\"ƚ\":\"l\",\n\t\"ɬ\":\"l\",\n\t\"ľ\":\"l\",\n\t\"ļ\":\"l\",\n\t\"ḽ\":\"l\",\n\t\"ȴ\":\"l\",\n\t\"ḷ\":\"l\",\n\t\"ḹ\":\"l\",\n\t\"ⱡ\":\"l\",\n\t\"ꝉ\":\"l\",\n\t\"ḻ\":\"l\",\n\t\"ŀ\":\"l\",\n\t\"ɫ\":\"l\",\n\t\"ᶅ\":\"l\",\n\t\"ɭ\":\"l\",\n\t\"ł\":\"l\",\n\t\"lj\":\"lj\",\n\t\"ſ\":\"s\",\n\t\"ẜ\":\"s\",\n\t\"ẛ\":\"s\",\n\t\"ẝ\":\"s\",\n\t\"ḿ\":\"m\",\n\t\"ṁ\":\"m\",\n\t\"ṃ\":\"m\",\n\t\"ɱ\":\"m\",\n\t\"ᵯ\":\"m\",\n\t\"ᶆ\":\"m\",\n\t\"ń\":\"n\",\n\t\"ň\":\"n\",\n\t\"ņ\":\"n\",\n\t\"ṋ\":\"n\",\n\t\"ȵ\":\"n\",\n\t\"ṅ\":\"n\",\n\t\"ṇ\":\"n\",\n\t\"ǹ\":\"n\",\n\t\"ɲ\":\"n\",\n\t\"ṉ\":\"n\",\n\t\"ƞ\":\"n\",\n\t\"ᵰ\":\"n\",\n\t\"ᶇ\":\"n\",\n\t\"ɳ\":\"n\",\n\t\"ñ\":\"n\",\n\t\"nj\":\"nj\",\n\t\"ó\":\"o\",\n\t\"ŏ\":\"o\",\n\t\"ǒ\":\"o\",\n\t\"ô\":\"o\",\n\t\"ố\":\"o\",\n\t\"ộ\":\"o\",\n\t\"ồ\":\"o\",\n\t\"ổ\":\"o\",\n\t\"ỗ\":\"o\",\n\t\"ö\":\"o\",\n\t\"ȫ\":\"o\",\n\t\"ȯ\":\"o\",\n\t\"ȱ\":\"o\",\n\t\"ọ\":\"o\",\n\t\"ő\":\"o\",\n\t\"ȍ\":\"o\",\n\t\"ò\":\"o\",\n\t\"ỏ\":\"o\",\n\t\"ơ\":\"o\",\n\t\"ớ\":\"o\",\n\t\"ợ\":\"o\",\n\t\"ờ\":\"o\",\n\t\"ở\":\"o\",\n\t\"ỡ\":\"o\",\n\t\"ȏ\":\"o\",\n\t\"ꝋ\":\"o\",\n\t\"ꝍ\":\"o\",\n\t\"ⱺ\":\"o\",\n\t\"ō\":\"o\",\n\t\"ṓ\":\"o\",\n\t\"ṑ\":\"o\",\n\t\"ǫ\":\"o\",\n\t\"ǭ\":\"o\",\n\t\"ø\":\"o\",\n\t\"ǿ\":\"o\",\n\t\"õ\":\"o\",\n\t\"ṍ\":\"o\",\n\t\"ṏ\":\"o\",\n\t\"ȭ\":\"o\",\n\t\"ƣ\":\"oi\",\n\t\"ꝏ\":\"oo\",\n\t\"ɛ\":\"e\",\n\t\"ᶓ\":\"e\",\n\t\"ɔ\":\"o\",\n\t\"ᶗ\":\"o\",\n\t\"ȣ\":\"ou\",\n\t\"ṕ\":\"p\",\n\t\"ṗ\":\"p\",\n\t\"ꝓ\":\"p\",\n\t\"ƥ\":\"p\",\n\t\"ᵱ\":\"p\",\n\t\"ᶈ\":\"p\",\n\t\"ꝕ\":\"p\",\n\t\"ᵽ\":\"p\",\n\t\"ꝑ\":\"p\",\n\t\"ꝙ\":\"q\",\n\t\"ʠ\":\"q\",\n\t\"ɋ\":\"q\",\n\t\"ꝗ\":\"q\",\n\t\"ŕ\":\"r\",\n\t\"ř\":\"r\",\n\t\"ŗ\":\"r\",\n\t\"ṙ\":\"r\",\n\t\"ṛ\":\"r\",\n\t\"ṝ\":\"r\",\n\t\"ȑ\":\"r\",\n\t\"ɾ\":\"r\",\n\t\"ᵳ\":\"r\",\n\t\"ȓ\":\"r\",\n\t\"ṟ\":\"r\",\n\t\"ɼ\":\"r\",\n\t\"ᵲ\":\"r\",\n\t\"ᶉ\":\"r\",\n\t\"ɍ\":\"r\",\n\t\"ɽ\":\"r\",\n\t\"ↄ\":\"c\",\n\t\"ꜿ\":\"c\",\n\t\"ɘ\":\"e\",\n\t\"ɿ\":\"r\",\n\t\"ś\":\"s\",\n\t\"ṥ\":\"s\",\n\t\"š\":\"s\",\n\t\"ṧ\":\"s\",\n\t\"ş\":\"s\",\n\t\"ŝ\":\"s\",\n\t\"ș\":\"s\",\n\t\"ṡ\":\"s\",\n\t\"ṣ\":\"s\",\n\t\"ṩ\":\"s\",\n\t\"ʂ\":\"s\",\n\t\"ᵴ\":\"s\",\n\t\"ᶊ\":\"s\",\n\t\"ȿ\":\"s\",\n\t\"ɡ\":\"g\",\n\t\"ᴑ\":\"o\",\n\t\"ᴓ\":\"o\",\n\t\"ᴝ\":\"u\",\n\t\"ť\":\"t\",\n\t\"ţ\":\"t\",\n\t\"ṱ\":\"t\",\n\t\"ț\":\"t\",\n\t\"ȶ\":\"t\",\n\t\"ẗ\":\"t\",\n\t\"ⱦ\":\"t\",\n\t\"ṫ\":\"t\",\n\t\"ṭ\":\"t\",\n\t\"ƭ\":\"t\",\n\t\"ṯ\":\"t\",\n\t\"ᵵ\":\"t\",\n\t\"ƫ\":\"t\",\n\t\"ʈ\":\"t\",\n\t\"ŧ\":\"t\",\n\t\"ᵺ\":\"th\",\n\t\"ɐ\":\"a\",\n\t\"ᴂ\":\"ae\",\n\t\"ǝ\":\"e\",\n\t\"ᵷ\":\"g\",\n\t\"ɥ\":\"h\",\n\t\"ʮ\":\"h\",\n\t\"ʯ\":\"h\",\n\t\"ᴉ\":\"i\",\n\t\"ʞ\":\"k\",\n\t\"ꞁ\":\"l\",\n\t\"ɯ\":\"m\",\n\t\"ɰ\":\"m\",\n\t\"ᴔ\":\"oe\",\n\t\"ɹ\":\"r\",\n\t\"ɻ\":\"r\",\n\t\"ɺ\":\"r\",\n\t\"ⱹ\":\"r\",\n\t\"ʇ\":\"t\",\n\t\"ʌ\":\"v\",\n\t\"ʍ\":\"w\",\n\t\"ʎ\":\"y\",\n\t\"ꜩ\":\"tz\",\n\t\"ú\":\"u\",\n\t\"ŭ\":\"u\",\n\t\"ǔ\":\"u\",\n\t\"û\":\"u\",\n\t\"ṷ\":\"u\",\n\t\"ü\":\"u\",\n\t\"ǘ\":\"u\",\n\t\"ǚ\":\"u\",\n\t\"ǜ\":\"u\",\n\t\"ǖ\":\"u\",\n\t\"ṳ\":\"u\",\n\t\"ụ\":\"u\",\n\t\"ű\":\"u\",\n\t\"ȕ\":\"u\",\n\t\"ù\":\"u\",\n\t\"ủ\":\"u\",\n\t\"ư\":\"u\",\n\t\"ứ\":\"u\",\n\t\"ự\":\"u\",\n\t\"ừ\":\"u\",\n\t\"ử\":\"u\",\n\t\"ữ\":\"u\",\n\t\"ȗ\":\"u\",\n\t\"ū\":\"u\",\n\t\"ṻ\":\"u\",\n\t\"ų\":\"u\",\n\t\"ᶙ\":\"u\",\n\t\"ů\":\"u\",\n\t\"ũ\":\"u\",\n\t\"ṹ\":\"u\",\n\t\"ṵ\":\"u\",\n\t\"ᵫ\":\"ue\",\n\t\"ꝸ\":\"um\",\n\t\"ⱴ\":\"v\",\n\t\"ꝟ\":\"v\",\n\t\"ṿ\":\"v\",\n\t\"ʋ\":\"v\",\n\t\"ᶌ\":\"v\",\n\t\"ⱱ\":\"v\",\n\t\"ṽ\":\"v\",\n\t\"ꝡ\":\"vy\",\n\t\"ẃ\":\"w\",\n\t\"ŵ\":\"w\",\n\t\"ẅ\":\"w\",\n\t\"ẇ\":\"w\",\n\t\"ẉ\":\"w\",\n\t\"ẁ\":\"w\",\n\t\"ⱳ\":\"w\",\n\t\"ẘ\":\"w\",\n\t\"ẍ\":\"x\",\n\t\"ẋ\":\"x\",\n\t\"ᶍ\":\"x\",\n\t\"ý\":\"y\",\n\t\"ŷ\":\"y\",\n\t\"ÿ\":\"y\",\n\t\"ẏ\":\"y\",\n\t\"ỵ\":\"y\",\n\t\"ỳ\":\"y\",\n\t\"ƴ\":\"y\",\n\t\"ỷ\":\"y\",\n\t\"ỿ\":\"y\",\n\t\"ȳ\":\"y\",\n\t\"ẙ\":\"y\",\n\t\"ɏ\":\"y\",\n\t\"ỹ\":\"y\",\n\t\"ź\":\"z\",\n\t\"ž\":\"z\",\n\t\"ẑ\":\"z\",\n\t\"ʑ\":\"z\",\n\t\"ⱬ\":\"z\",\n\t\"ż\":\"z\",\n\t\"ẓ\":\"z\",\n\t\"ȥ\":\"z\",\n\t\"ẕ\":\"z\",\n\t\"ᵶ\":\"z\",\n\t\"ᶎ\":\"z\",\n\t\"ʐ\":\"z\",\n\t\"ƶ\":\"z\",\n\t\"ɀ\":\"z\",\n\t\"ff\":\"ff\",\n\t\"ffi\":\"ffi\",\n\t\"ffl\":\"ffl\",\n\t\"fi\":\"fi\",\n\t\"fl\":\"fl\",\n\t\"ij\":\"ij\",\n\t\"œ\":\"oe\",\n\t\"st\":\"st\",\n\t\"ₐ\":\"a\",\n\t\"ₑ\":\"e\",\n\t\"ᵢ\":\"i\",\n\t\"ⱼ\":\"j\",\n\t\"ₒ\":\"o\",\n\t\"ᵣ\":\"r\",\n\t\"ᵤ\":\"u\",\n\t\"ᵥ\":\"v\",\n\t\"ₓ\":\"x\",\n\t\"Ё\":\"YO\",\n\t\"Й\":\"I\",\n\t\"Ц\":\"TS\",\n\t\"У\":\"U\",\n\t\"К\":\"K\",\n\t\"Е\":\"E\",\n\t\"Н\":\"N\",\n\t\"Г\":\"G\",\n\t\"Ш\":\"SH\",\n\t\"Щ\":\"SCH\",\n\t\"З\":\"Z\",\n\t\"Х\":\"H\",\n\t\"Ъ\":\"'\",\n\t\"ё\":\"yo\",\n\t\"й\":\"i\",\n\t\"ц\":\"ts\",\n\t\"у\":\"u\",\n\t\"к\":\"k\",\n\t\"е\":\"e\",\n\t\"н\":\"n\",\n\t\"г\":\"g\",\n\t\"ш\":\"sh\",\n\t\"щ\":\"sch\",\n\t\"з\":\"z\",\n\t\"х\":\"h\",\n\t\"ъ\":\"'\",\n\t\"Ф\":\"F\",\n\t\"Ы\":\"I\",\n\t\"В\":\"V\",\n\t\"А\":\"a\",\n\t\"П\":\"P\",\n\t\"Р\":\"R\",\n\t\"О\":\"O\",\n\t\"Л\":\"L\",\n\t\"Д\":\"D\",\n\t\"Ж\":\"ZH\",\n\t\"Э\":\"E\",\n\t\"ф\":\"f\",\n\t\"ы\":\"i\",\n\t\"в\":\"v\",\n\t\"а\":\"a\",\n\t\"п\":\"p\",\n\t\"р\":\"r\",\n\t\"о\":\"o\",\n\t\"л\":\"l\",\n\t\"д\":\"d\",\n\t\"ж\":\"zh\",\n\t\"э\":\"e\",\n\t\"Я\":\"Ya\",\n\t\"Ч\":\"CH\",\n\t\"С\":\"S\",\n\t\"М\":\"M\",\n\t\"И\":\"I\",\n\t\"Т\":\"T\",\n\t\"Ь\":\"'\",\n\t\"Б\":\"B\",\n\t\"Ю\":\"YU\",\n\t\"я\":\"ya\",\n\t\"ч\":\"ch\",\n\t\"с\":\"s\",\n\t\"м\":\"m\",\n\t\"и\":\"i\",\n\t\"т\":\"t\",\n\t\"ь\":\"'\",\n\t\"б\":\"b\",\n\t\"ю\":\"yu\"\n};\n\nexports.transliterate = function(str) {\n\treturn str.replace(/[^A-Za-z0-9\\[\\] ]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || ch\n\t});\n};\n\nexports.transliterateToSafeASCII = function(str) {\n\treturn str.replace(/[^\\x00-\\x7F]/g,function(ch) {\n\t\treturn exports.transliterationPairs[ch] || \"\"\n\t});\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/utils/utils.js": {
            "title": "$:/core/modules/utils/utils.js",
            "text": "/*\\\ntitle: $:/core/modules/utils/utils.js\ntype: application/javascript\nmodule-type: utils\n\nVarious static utility functions.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar base64utf8 = require(\"$:/core/modules/utils/base64-utf8/base64-utf8.module.js\");\n\n/*\nDisplay a message, in colour if we're on a terminal\n*/\nexports.log = function(text,colour) {\n\tconsole.log($tw.node ? exports.terminalColour(colour) + text + exports.terminalColour() : text);\n};\n\nexports.terminalColour = function(colour) {\n\tif(!$tw.browser && $tw.node && process.stdout.isTTY) {\n\t\tif(colour) {\n\t\t\tvar code = exports.terminalColourLookup[colour];\n\t\t\tif(code) {\n\t\t\t\treturn \"\\x1b[\" + code + \"m\";\n\t\t\t}\n\t\t} else {\n\t\t\treturn \"\\x1b[0m\"; // Cancel colour\n\t\t}\n\t}\n\treturn \"\";\n};\n\nexports.terminalColourLookup = {\n\t\"black\": \"0;30\",\n\t\"red\": \"0;31\",\n\t\"green\": \"0;32\",\n\t\"brown/orange\": \"0;33\",\n\t\"blue\": \"0;34\",\n\t\"purple\": \"0;35\",\n\t\"cyan\": \"0;36\",\n\t\"light gray\": \"0;37\"\n};\n\n/*\nDisplay a warning, in colour if we're on a terminal\n*/\nexports.warning = function(text) {\n\texports.log(text,\"brown/orange\");\n};\n\n/*\nLog a table of name: value pairs\n*/\nexports.logTable = function(data) {\n\tif(console.table) {\n\t\tconsole.table(data);\n\t} else {\n\t\t$tw.utils.each(data,function(value,name) {\n\t\t\tconsole.log(name + \": \" + value);\n\t\t});\n\t}\n}\n\n/*\nReturn the integer represented by the str (string).\nReturn the dflt (default) parameter if str is not a base-10 number.\n*/\nexports.getInt = function(str,deflt) {\n\tvar i = parseInt(str,10);\n\treturn isNaN(i) ? deflt : i;\n}\n\n/*\nRepeatedly replaces a substring within a string. Like String.prototype.replace, but without any of the default special handling of $ sequences in the replace string\n*/\nexports.replaceString = function(text,search,replace) {\n\treturn text.replace(search,function() {\n\t\treturn replace;\n\t});\n};\n\n/*\nRepeats a string\n*/\nexports.repeat = function(str,count) {\n\tvar result = \"\";\n\tfor(var t=0;t<count;t++) {\n\t\tresult += str;\n\t}\n\treturn result;\n};\n\n/*\nTrim whitespace from the start and end of a string\nThanks to Steven Levithan, http://blog.stevenlevithan.com/archives/faster-trim-javascript\n*/\nexports.trim = function(str) {\n\tif(typeof str === \"string\") {\n\t\treturn str.replace(/^\\s\\s*/, '').replace(/\\s\\s*$/, '');\n\t} else {\n\t\treturn str;\n\t}\n};\n\nexports.trimPrefix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/^\\s\\s*/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('^(' + unwanted + ')+');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\nexports.trimSuffix = function(str,unwanted) {\n\tif(typeof str === \"string\" && typeof unwanted === \"string\") {\n\t\tif(unwanted === \"\") {\n\t\t\treturn str.replace(/\\s\\s*$/, '');\n\t\t} else {\n\t\t\t// Safely regexp-escape the unwanted text\n\t\t\tunwanted = unwanted.replace(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\t\t\tvar regex = new RegExp('(' + unwanted + ')+$');\n\t\t\treturn str.replace(regex, '');\n\t\t}\n\t} else {\n\t\treturn str;\n\t}\n};\n\n/*\nConvert a string to sentence case (ie capitalise first letter)\n*/\nexports.toSentenceCase = function(str) {\n\treturn (str || \"\").replace(/^\\S/, function(c) {return c.toUpperCase();});\n}\n\n/*\nConvert a string to title case (ie capitalise each initial letter)\n*/\nexports.toTitleCase = function(str) {\n\treturn (str || \"\").replace(/(^|\\s)\\S/g, function(c) {return c.toUpperCase();});\n}\n\t\n/*\nFind the line break preceding a given position in a string\nReturns position immediately after that line break, or the start of the string\n*/\nexports.findPrecedingLineBreak = function(text,pos) {\n\tvar result = text.lastIndexOf(\"\\n\",pos - 1);\n\tif(result === -1) {\n\t\tresult = 0;\n\t} else {\n\t\tresult++;\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nFind the line break following a given position in a string\n*/\nexports.findFollowingLineBreak = function(text,pos) {\n\t// Cut to just past the following line break, or to the end of the text\n\tvar result = text.indexOf(\"\\n\",pos);\n\tif(result === -1) {\n\t\tresult = text.length;\n\t} else {\n\t\tif(text.charAt(result) === \"\\r\") {\n\t\t\tresult++;\n\t\t}\n\t}\n\treturn result;\n};\n\n/*\nReturn the number of keys in an object\n*/\nexports.count = function(object) {\n\treturn Object.keys(object || {}).length;\n};\n\n/*\nDetermine whether an array-item is an object-property\n*/\nexports.hopArray = function(object,array) {\n\tfor(var i=0; i<array.length; i++) {\n\t\tif($tw.utils.hop(object,array[i])) {\n\t\t\treturn true;\n\t\t}\n\t}\n\treturn false;\n};\n\n/*\nRemove entries from an array\n\tarray: array to modify\n\tvalue: a single value to remove, or an array of values to remove\n*/\nexports.removeArrayEntries = function(array,value) {\n\tvar t,p;\n\tif($tw.utils.isArray(value)) {\n\t\tfor(t=0; t<value.length; t++) {\n\t\t\tp = array.indexOf(value[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tarray.splice(p,1);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tp = array.indexOf(value);\n\t\tif(p !== -1) {\n\t\t\tarray.splice(p,1);\n\t\t}\n\t}\n};\n\n/*\nCheck whether any members of a hashmap are present in another hashmap\n*/\nexports.checkDependencies = function(dependencies,changes) {\n\tvar hit = false;\n\t$tw.utils.each(changes,function(change,title) {\n\t\tif($tw.utils.hop(dependencies,title)) {\n\t\t\thit = true;\n\t\t}\n\t});\n\treturn hit;\n};\n\nexports.extend = function(object /* [, src] */) {\n\t$tw.utils.each(Array.prototype.slice.call(arguments, 1), function(source) {\n\t\tif(source) {\n\t\t\tfor(var property in source) {\n\t\t\t\tobject[property] = source[property];\n\t\t\t}\n\t\t}\n\t});\n\treturn object;\n};\n\nexports.deepCopy = function(object) {\n\tvar result,t;\n\tif($tw.utils.isArray(object)) {\n\t\t// Copy arrays\n\t\tresult = object.slice(0);\n\t} else if(typeof object === \"object\") {\n\t\tresult = {};\n\t\tfor(t in object) {\n\t\t\tif(object[t] !== undefined) {\n\t\t\t\tresult[t] = $tw.utils.deepCopy(object[t]);\n\t\t\t}\n\t\t}\n\t} else {\n\t\tresult = object;\n\t}\n\treturn result;\n};\n\nexports.extendDeepCopy = function(object,extendedProperties) {\n\tvar result = $tw.utils.deepCopy(object),t;\n\tfor(t in extendedProperties) {\n\t\tif(extendedProperties[t] !== undefined) {\n\t\t\tresult[t] = $tw.utils.deepCopy(extendedProperties[t]);\n\t\t}\n\t}\n\treturn result;\n};\n\nexports.deepFreeze = function deepFreeze(object) {\n\tvar property, key;\n\tif(object) {\n\t\tObject.freeze(object);\n\t\tfor(key in object) {\n\t\t\tproperty = object[key];\n\t\t\tif($tw.utils.hop(object,key) && (typeof property === \"object\") && !Object.isFrozen(property)) {\n\t\t\t\tdeepFreeze(property);\n\t\t\t}\n\t\t}\n\t}\n};\n\nexports.slowInSlowOut = function(t) {\n\treturn (1 - ((Math.cos(t * Math.PI) + 1) / 2));\n};\n\nexports.formatDateString = function(date,template) {\n\tvar result = \"\",\n\t\tt = template,\n\t\tmatches = [\n\t\t\t[/^0hh12/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getHours12(date));\n\t\t\t}],\n\t\t\t[/^wYYYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date),4);\n\t\t\t}],\n\t\t\t[/^hh12/, function() {\n\t\t\t\treturn $tw.utils.getHours12(date);\n\t\t\t}],\n\t\t\t[/^DDth/, function() {\n\t\t\t\treturn date.getDate() + $tw.utils.getDaySuffix(date);\n\t\t\t}],\n\t\t\t[/^YYYY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear(),4);\n\t\t\t}],\n\t\t\t[/^aYYYY/, function() {\n\t\t\t\treturn $tw.utils.pad(Math.abs(date.getFullYear()),4);\n\t\t\t}],\n\t\t\t[/^\\{era:([^,\\|}]*)\\|([^}\\|]*)\\|([^}]*)\\}/, function(match) {\n\t\t\t\tvar year = date.getFullYear();\n\t\t\t\treturn year === 0 ? match[2] : (year < 0 ? match[1] : match[3]);\n\t\t\t}],\n\t\t\t[/^0hh/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getHours());\n\t\t\t}],\n\t\t\t[/^0mm/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMinutes());\n\t\t\t}],\n\t\t\t[/^0ss/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getSeconds());\n\t\t\t}],\n\t\t\t[/^0XXX/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMilliseconds(),3);\n\t\t\t}],\n\t\t\t[/^0DD/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getDate());\n\t\t\t}],\n\t\t\t[/^0MM/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getMonth()+1);\n\t\t\t}],\n\t\t\t[/^0WW/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getWeek(date));\n\t\t\t}],\n\t\t\t[/^ddd/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^mmm/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Short/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^DDD/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Day/\" + date.getDay());\n\t\t\t}],\n\t\t\t[/^MMM/, function() {\n\t\t\t\treturn $tw.language.getString(\"Date/Long/Month/\" + (date.getMonth() + 1));\n\t\t\t}],\n\t\t\t[/^TZD/, function() {\n\t\t\t\tvar tz = date.getTimezoneOffset(),\n\t\t\t\tatz = Math.abs(tz);\n\t\t\t\treturn (tz < 0 ? '+' : '-') + $tw.utils.pad(Math.floor(atz / 60)) + ':' + $tw.utils.pad(atz % 60);\n\t\t\t}],\n\t\t\t[/^wYY/, function() {\n\t\t\t\treturn $tw.utils.pad($tw.utils.getYearForWeekNo(date) - 2000);\n\t\t\t}],\n\t\t\t[/^[ap]m/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toLowerCase();\n\t\t\t}],\n\t\t\t[/^hh/, function() {\n\t\t\t\treturn date.getHours();\n\t\t\t}],\n\t\t\t[/^mm/, function() {\n\t\t\t\treturn date.getMinutes();\n\t\t\t}],\n\t\t\t[/^ss/, function() {\n\t\t\t\treturn date.getSeconds();\n\t\t\t}],\n\t\t\t[/^XXX/, function() {\n\t\t\t\treturn date.getMilliseconds();\n\t\t\t}],\n\t\t\t[/^[AP]M/, function() {\n\t\t\t\treturn $tw.utils.getAmPm(date).toUpperCase();\n\t\t\t}],\n\t\t\t[/^DD/, function() {\n\t\t\t\treturn date.getDate();\n\t\t\t}],\n\t\t\t[/^MM/, function() {\n\t\t\t\treturn date.getMonth() + 1;\n\t\t\t}],\n\t\t\t[/^WW/, function() {\n\t\t\t\treturn $tw.utils.getWeek(date);\n\t\t\t}],\n\t\t\t[/^YY/, function() {\n\t\t\t\treturn $tw.utils.pad(date.getFullYear() - 2000);\n\t\t\t}]\n\t\t];\n\t// If the user wants everything in UTC, shift the datestamp\n\t// Optimize for format string that essentially means\n\t// 'return raw UTC (tiddlywiki style) date string.'\n\tif(t.indexOf(\"[UTC]\") == 0 ) {\n\t\tif(t == \"[UTC]YYYY0MM0DD0hh0mm0ssXXX\")\n\t\t\treturn $tw.utils.stringifyDate(new Date());\n\t\tvar offset = date.getTimezoneOffset() ; // in minutes\n\t\tdate = new Date(date.getTime()+offset*60*1000) ;\n\t\tt = t.substr(5) ;\n\t}\n\twhile(t.length){\n\t\tvar matchString = \"\";\n\t\t$tw.utils.each(matches, function(m) {\n\t\t\tvar match = m[0].exec(t);\n\t\t\tif(match) {\n\t\t\t\tmatchString = m[1].call(null,match);\n\t\t\t\tt = t.substr(match[0].length);\n\t\t\t\treturn false;\n\t\t\t}\n\t\t});\n\t\tif(matchString) {\n\t\t\tresult += matchString;\n\t\t} else {\n\t\t\tresult += t.charAt(0);\n\t\t\tt = t.substr(1);\n\t\t}\n\t}\n\tresult = result.replace(/\\\\(.)/g,\"$1\");\n\treturn result;\n};\n\nexports.getAmPm = function(date) {\n\treturn $tw.language.getString(\"Date/Period/\" + (date.getHours() >= 12 ? \"pm\" : \"am\"));\n};\n\nexports.getDaySuffix = function(date) {\n\treturn $tw.language.getString(\"Date/DaySuffix/\" + date.getDate());\n};\n\nexports.getWeek = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week to calculate weekNo\n\tvar x = new Date(dt.getFullYear(),0,1);\n\tvar n = Math.floor((dt.getTime() - x.getTime()) / 86400000);\n\treturn Math.floor(n / 7) + 1;\n};\n\nexports.getYearForWeekNo = function(date) {\n\tvar dt = new Date(date.getTime());\n\tvar d = dt.getDay();\n\tif(d === 0) {\n\t\td = 7; // JavaScript Sun=0, ISO Sun=7\n\t}\n\tdt.setTime(dt.getTime() + (4 - d) * 86400000);// shift day to Thurs of same week\n\treturn dt.getFullYear();\n};\n\nexports.getHours12 = function(date) {\n\tvar h = date.getHours();\n\treturn h > 12 ? h-12 : ( h > 0 ? h : 12 );\n};\n\n/*\nConvert a date delta in milliseconds into a string representation of \"23 seconds ago\", \"27 minutes ago\" etc.\n\tdelta: delta in milliseconds\nReturns an object with these members:\n\tdescription: string describing the delta period\n\tupdatePeriod: time in millisecond until the string will be inaccurate\n*/\nexports.getRelativeDate = function(delta) {\n\tvar futurep = false;\n\tif(delta < 0) {\n\t\tdelta = -1 * delta;\n\t\tfuturep = true;\n\t}\n\tvar units = [\n\t\t{name: \"Years\",   duration:      365 * 24 * 60 * 60 * 1000},\n\t\t{name: \"Months\",  duration: (365/12) * 24 * 60 * 60 * 1000},\n\t\t{name: \"Days\",    duration:            24 * 60 * 60 * 1000},\n\t\t{name: \"Hours\",   duration:                 60 * 60 * 1000},\n\t\t{name: \"Minutes\", duration:                      60 * 1000},\n\t\t{name: \"Seconds\", duration:                           1000}\n\t];\n\tfor(var t=0; t<units.length; t++) {\n\t\tvar result = Math.floor(delta / units[t].duration);\n\t\tif(result >= 2) {\n\t\t\treturn {\n\t\t\t\tdelta: delta,\n\t\t\t\tdescription: $tw.language.getString(\n\t\t\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/\" + units[t].name,\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{period: result.toString()}\n\t\t\t\t\t}\n\t\t\t\t),\n\t\t\t\tupdatePeriod: units[t].duration\n\t\t\t};\n\t\t}\n\t}\n\treturn {\n\t\tdelta: delta,\n\t\tdescription: $tw.language.getString(\n\t\t\t\"RelativeDate/\" + (futurep ? \"Future\" : \"Past\") + \"/Second\",\n\t\t\t{variables:\n\t\t\t\t{period: \"1\"}\n\t\t\t}\n\t\t),\n\t\tupdatePeriod: 1000\n\t};\n};\n\n// Convert & to \"&amp;\", < to \"&lt;\", > to \"&gt;\", \" to \"&quot;\"\nexports.htmlEncode = function(s) {\n\tif(s) {\n\t\treturn s.toString().replace(/&/mg,\"&amp;\").replace(/</mg,\"&lt;\").replace(/>/mg,\"&gt;\").replace(/\\\"/mg,\"&quot;\");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n// Converts all HTML entities to their character equivalents\nexports.entityDecode = function(s) {\n\tvar converter = String.fromCodePoint || String.fromCharCode,\n\t\te = s.substr(1,s.length-2), // Strip the & and the ;\n\t\tc;\n\tif(e.charAt(0) === \"#\") {\n\t\tif(e.charAt(1) === \"x\" || e.charAt(1) === \"X\") {\n\t\t\tc = parseInt(e.substr(2),16);\n\t\t} else {\n\t\t\tc = parseInt(e.substr(1),10);\n\t\t}\n\t\tif(isNaN(c)) {\n\t\t\treturn s;\n\t\t} else {\n\t\t\treturn converter(c);\n\t\t}\n\t} else {\n\t\tc = $tw.config.htmlEntities[e];\n\t\tif(c) {\n\t\t\treturn converter(c);\n\t\t} else {\n\t\t\treturn s; // Couldn't convert it as an entity, just return it raw\n\t\t}\n\t}\n};\n\nexports.unescapeLineBreaks = function(s) {\n\treturn s.replace(/\\\\n/mg,\"\\n\").replace(/\\\\b/mg,\" \").replace(/\\\\s/mg,\"\\\\\").replace(/\\r/mg,\"\");\n};\n\n/*\n * Returns an escape sequence for given character. Uses \\x for characters <=\n * 0xFF to save space, \\u for the rest.\n *\n * The code needs to be in sync with th code template in the compilation\n * function for \"action\" nodes.\n */\n// Copied from peg.js, thanks to David Majda\nexports.escape = function(ch) {\n\tvar charCode = ch.charCodeAt(0);\n\tif(charCode <= 0xFF) {\n\t\treturn '\\\\x' + $tw.utils.pad(charCode.toString(16).toUpperCase());\n\t} else {\n\t\treturn '\\\\u' + $tw.utils.pad(charCode.toString(16).toUpperCase(),4);\n\t}\n};\n\n// Turns a string into a legal JavaScript string\n// Copied from peg.js, thanks to David Majda\nexports.stringify = function(s, rawUnicode) {\n\t/*\n\t* ECMA-262, 5th ed., 7.8.4: All characters may appear literally in a string\n\t* literal except for the closing quote character, backslash, carriage return,\n\t* line separator, paragraph separator, and line feed. Any character may\n\t* appear in the form of an escape sequence.\n\t*\n\t* For portability, we also escape all non-ASCII characters.\n\t*/\n\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/'/g, \"\\\\'\")              // single quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(regex, exports.escape);   // non-ASCII characters\n};\n\n// Turns a string into a legal JSON string\n// Derived from peg.js, thanks to David Majda\nexports.jsonStringify = function(s, rawUnicode) {\n\t// See http://www.json.org/\n\tvar regex = rawUnicode ? /[\\x00-\\x1f]/g : /[\\x00-\\x1f\\x80-\\uFFFF]/g;\n\treturn (s || \"\")\n\t\t.replace(/\\\\/g, '\\\\\\\\')            // backslash\n\t\t.replace(/\"/g, '\\\\\"')              // double quote character\n\t\t.replace(/\\r/g, '\\\\r')             // carriage return\n\t\t.replace(/\\n/g, '\\\\n')             // line feed\n\t\t.replace(/\\x08/g, '\\\\b')           // backspace\n\t\t.replace(/\\x0c/g, '\\\\f')           // formfeed\n\t\t.replace(/\\t/g, '\\\\t')             // tab\n\t\t.replace(regex,function(s) {\n\t\t\treturn '\\\\u' + $tw.utils.pad(s.charCodeAt(0).toString(16).toUpperCase(),4);\n\t\t}); // non-ASCII characters\n};\n\n/*\nEscape the RegExp special characters with a preceding backslash\n*/\nexports.escapeRegExp = function(s) {\n    return s.replace(/[\\-\\/\\\\\\^\\$\\*\\+\\?\\.\\(\\)\\|\\[\\]\\{\\}]/g, '\\\\$&');\n};\n\n// Checks whether a link target is external, i.e. not a tiddler title\nexports.isLinkExternal = function(to) {\n\tvar externalRegExp = /^(?:file|http|https|mailto|ftp|irc|news|data|skype):[^\\s<>{}\\[\\]`|\"\\\\^]+(?:\\/|\\b)/i;\n\treturn externalRegExp.test(to);\n};\n\nexports.nextTick = function(fn) {\n/*global window: false */\n\tif(typeof process === \"undefined\") {\n\t\t// Apparently it would be faster to use postMessage - http://dbaron.org/log/20100309-faster-timeouts\n\t\twindow.setTimeout(fn,4);\n\t} else {\n\t\tprocess.nextTick(fn);\n\t}\n};\n\n/*\nConvert a hyphenated CSS property name into a camel case one\n*/\nexports.unHyphenateCss = function(propName) {\n\treturn propName.replace(/-([a-z])/gi, function(match0,match1) {\n\t\treturn match1.toUpperCase();\n\t});\n};\n\n/*\nConvert a camelcase CSS property name into a dashed one (\"backgroundColor\" --> \"background-color\")\n*/\nexports.hyphenateCss = function(propName) {\n\treturn propName.replace(/([A-Z])/g, function(match0,match1) {\n\t\treturn \"-\" + match1.toLowerCase();\n\t});\n};\n\n/*\nParse a text reference of one of these forms:\n* title\n* !!field\n* title!!field\n* title##index\n* etc\nReturns an object with the following fields, all optional:\n* title: tiddler title\n* field: tiddler field name\n* index: JSON property index\n*/\nexports.parseTextReference = function(textRef) {\n\t// Separate out the title, field name and/or JSON indices\n\tvar reTextRef = /(?:(.*?)!!(.+))|(?:(.*?)##(.+))|(.*)/mg,\n\t\tmatch = reTextRef.exec(textRef),\n\t\tresult = {};\n\tif(match && reTextRef.lastIndex === textRef.length) {\n\t\t// Return the parts\n\t\tif(match[1]) {\n\t\t\tresult.title = match[1];\n\t\t}\n\t\tif(match[2]) {\n\t\t\tresult.field = match[2];\n\t\t}\n\t\tif(match[3]) {\n\t\t\tresult.title = match[3];\n\t\t}\n\t\tif(match[4]) {\n\t\t\tresult.index = match[4];\n\t\t}\n\t\tif(match[5]) {\n\t\t\tresult.title = match[5];\n\t\t}\n\t} else {\n\t\t// If we couldn't parse it\n\t\tresult.title = textRef\n\t}\n\treturn result;\n};\n\n/*\nChecks whether a string is a valid fieldname\n*/\nexports.isValidFieldName = function(name) {\n\tif(!name || typeof name !== \"string\") {\n\t\treturn false;\n\t}\n\tname = name.toLowerCase().trim();\n\tvar fieldValidatorRegEx = /^[a-z0-9\\-\\._]+$/mg;\n\treturn fieldValidatorRegEx.test(name);\n};\n\n/*\nExtract the version number from the meta tag or from the boot file\n*/\n\n// Browser version\nexports.extractVersionInfo = function() {\n\tif($tw.packageInfo) {\n\t\treturn $tw.packageInfo.version;\n\t} else {\n\t\tvar metatags = document.getElementsByTagName(\"meta\");\n\t\tfor(var t=0; t<metatags.length; t++) {\n\t\t\tvar m = metatags[t];\n\t\t\tif(m.name === \"tiddlywiki-version\") {\n\t\t\t\treturn m.content;\n\t\t\t}\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the animation duration in ms\n*/\nexports.getAnimationDuration = function() {\n\treturn parseInt($tw.wiki.getTiddlerText(\"$:/config/AnimationDuration\",\"400\"),10) || 0;\n};\n\n/*\nHash a string to a number\nDerived from http://stackoverflow.com/a/15710692\n*/\nexports.hashString = function(str) {\n\treturn str.split(\"\").reduce(function(a,b) {\n\t\ta = ((a << 5) - a) + b.charCodeAt(0);\n\t\treturn a & a;\n\t},0);\n};\n\n/*\nDecode a base64 string\n*/\nexports.base64Decode = function(string64) {\n\treturn base64utf8.base64.decode.call(base64utf8,string64);\n};\n\n/*\nEncode a string to base64\n*/\nexports.base64Encode = function(string64) {\n\treturn base64utf8.base64.encode.call(base64utf8,string64);\n};\n\n/*\nConvert a hashmap into a tiddler dictionary format sequence of name:value pairs\n*/\nexports.makeTiddlerDictionary = function(data) {\n\tvar output = [];\n\tfor(var name in data) {\n\t\toutput.push(name + \": \" + data[name]);\n\t}\n\treturn output.join(\"\\n\");\n};\n\n/*\nHigh resolution microsecond timer for profiling\n*/\nexports.timer = function(base) {\n\tvar m;\n\tif($tw.node) {\n\t\tvar r = process.hrtime();\n\t\tm =  r[0] * 1e3 + (r[1] / 1e6);\n\t} else if(window.performance) {\n\t\tm = performance.now();\n\t} else {\n\t\tm = Date.now();\n\t}\n\tif(typeof base !== \"undefined\") {\n\t\tm = m - base;\n\t}\n\treturn m;\n};\n\n/*\nConvert text and content type to a data URI\n*/\nexports.makeDataUri = function(text,type,_canonical_uri) {\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar typeInfo = $tw.config.contentTypeInfo[type] || $tw.config.contentTypeInfo[\"text/plain\"],\n\t\tisBase64 = typeInfo.encoding === \"base64\",\n\t\tparts = [];\n\tif(_canonical_uri) {\n\t\tparts.push(_canonical_uri);\n\t} else {\n\t\tparts.push(\"data:\");\n\t\tparts.push(type);\n\t\tparts.push(isBase64 ? \";base64\" : \"\");\n\t\tparts.push(\",\");\n\t\tparts.push(isBase64 ? text : encodeURIComponent(text));\t\t\n\t}\n\treturn parts.join(\"\");\n};\n\n/*\nUseful for finding out the fully escaped CSS selector equivalent to a given tag. For example:\n\n$tw.utils.tagToCssSelector(\"$:/tags/Stylesheet\") --> tc-tagged-\\%24\\%3A\\%2Ftags\\%2FStylesheet\n*/\nexports.tagToCssSelector = function(tagName) {\n\treturn \"tc-tagged-\" + encodeURIComponent(tagName).replace(/[!\"#$%&'()*+,\\-./:;<=>?@[\\\\\\]^`{\\|}~,]/mg,function(c) {\n\t\treturn \"\\\\\" + c;\n\t});\n};\n\n/*\nIE does not have sign function\n*/\nexports.sign = Math.sign || function(x) {\n\tx = +x; // convert to a number\n\tif (x === 0 || isNaN(x)) {\n\t\treturn x;\n\t}\n\treturn x > 0 ? 1 : -1;\n};\n\n/*\nIE does not have an endsWith function\n*/\nexports.strEndsWith = function(str,ending,position) {\n\tif(str.endsWith) {\n\t\treturn str.endsWith(ending,position);\n\t} else {\n\t\tif (typeof position !== 'number' || !isFinite(position) || Math.floor(position) !== position || position > str.length) {\n\t\t\tposition = str.length;\n\t\t}\n\t\tposition -= ending.length;\n\t\tvar lastIndex = str.indexOf(ending, position);\n\t\treturn lastIndex !== -1 && lastIndex === position;\n\t}\n};\n\n/*\nReturn system information useful for debugging\n*/\nexports.getSystemInfo = function(str,ending,position) {\n\tvar results = [],\n\t\tsave = function(desc,value) {\n\t\t\tresults.push(desc + \": \" + value);\n\t\t};\n\tif($tw.browser) {\n\t\tsave(\"User Agent\",navigator.userAgent);\n\t\tsave(\"Online Status\",window.navigator.onLine);\n\t}\n\tif($tw.node) {\n\t\tsave(\"Node Version\",process.version);\n\t}\n\treturn results.join(\"\\n\");\n};\n\nexports.parseNumber = function(str) {\n\treturn parseFloat(str) || 0;\n};\n\nexports.parseInt = function(str) {\n\treturn parseInt(str,10) || 0;\n};\n\nexports.stringifyNumber = function(num) {\n\treturn num + \"\";\n};\n\nexports.makeCompareFunction = function(type,options) {\n\toptions = options || {};\n\tvar gt = options.invert ? -1 : +1,\n\t\tlt = options.invert ? +1 : -1,\n\t\tcompare = function(a,b) {\n\t\t\tif(a > b) {\n\t\t\t\treturn gt ;\n\t\t\t} else if(a < b) {\n\t\t\t\treturn lt;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t},\n\t\ttypes = {\n\t\t\t\"number\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseNumber(a),$tw.utils.parseNumber(b));\n\t\t\t},\n\t\t\t\"integer\": function(a,b) {\n\t\t\t\treturn compare($tw.utils.parseInt(a),$tw.utils.parseInt(b));\n\t\t\t},\n\t\t\t\"string\": function(a,b) {\n\t\t\t\treturn compare(\"\" + a,\"\" +b);\n\t\t\t},\n\t\t\t\"date\": function(a,b) {\n\t\t\t\tvar dateA = $tw.utils.parseDate(a),\n\t\t\t\t\tdateB = $tw.utils.parseDate(b);\n\t\t\t\tif(!isFinite(dateA)) {\n\t\t\t\t\tdateA = new Date(0);\n\t\t\t\t}\n\t\t\t\tif(!isFinite(dateB)) {\n\t\t\t\t\tdateB = new Date(0);\n\t\t\t\t}\n\t\t\t\treturn compare(dateA,dateB);\n\t\t\t},\n\t\t\t\"version\": function(a,b) {\n\t\t\t\treturn $tw.utils.compareVersions(a,b);\n\t\t\t}\n\t\t};\n\treturn (types[type] || types[options.defaultType] || types.number);\n};\n\n})();\n",
            "type": "application/javascript",
            "module-type": "utils"
        },
        "$:/core/modules/widgets/action-confirm.js": {
            "title": "$:/core/modules/widgets/action-confirm.js",
            "text": "/*\\\n\ntitle: $:/core/modules/widgets/action-confirm.js\ntype: application/javascript\nmodule-type: widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ConfirmWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nConfirmWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nConfirmWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.parentDomNode = parent;\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nConfirmWidget.prototype.execute = function() {\n\tthis.message = this.getAttribute(\"$message\",$tw.language.getString(\"ConfirmAction\"));\n\tthis.prompt = (this.getAttribute(\"$prompt\",\"yes\") == \"no\" ? false : true);\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nConfirmWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$message\"] || changedAttributes[\"$prompt\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nConfirmWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar invokeActions = true,\n\t\thandled = true;\n\tif(this.prompt) {\n\t\tinvokeActions = confirm(this.message);\n\t}\n\tif(invokeActions) {\n\t\thandled = this.invokeActions(triggeringWidget,event);\n\t}\n\treturn handled;\n};\n\nConfirmWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nexports[\"action-confirm\"] = ConfirmWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-createtiddler.js": {
            "title": "$:/core/modules/widgets/action-createtiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-createtiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to create a new tiddler with a unique name and specified fields.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw:false, require:false, exports:false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CreateTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCreateTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCreateTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nCreateTiddlerWidget.prototype.execute = function() {\n\tthis.actionBaseTitle = this.getAttribute(\"$basetitle\");\n\tthis.hasBase = !!this.actionBaseTitle;\n\tthis.actionSaveTitle = this.getAttribute(\"$savetitle\");\n\tthis.actionSaveDraftTitle = this.getAttribute(\"$savedrafttitle\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n\t//Following params are new since 5.1.22\n\tthis.actionTemplate = this.getAttribute(\"$template\");\n\tthis.useTemplate = !!this.actionTemplate;\n\tthis.actionOverwrite = this.getAttribute(\"$overwrite\",\"no\");\n\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nCreateTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nCreateTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar title = this.wiki.getTiddlerText(\"$:/language/DefaultNewTiddlerTitle\"), // Get the initial new-tiddler title\n\t\tfields = {},\n\t\tcreationFields,\n\t\tmodificationFields;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tfields[name] = attribute;\n\t\t}\n\t});\n\tif(this.actionTimestamp) {\n\t\tcreationFields = this.wiki.getCreationFields();\n\t\tmodificationFields = this.wiki.getModificationFields();\n\t}\n\tif(this.hasBase && this.actionOverwrite === \"no\") {\n\t\ttitle = this.wiki.generateNewTitle(this.actionBaseTitle);\n\t} else if (this.hasBase && this.actionOverwrite === \"yes\") {\n\t\ttitle = this.actionBaseTitle\n\t}\n\t// NO $basetitle BUT $template parameter is available\n\t// the title MUST be unique, otherwise the template would be overwritten\n\tif (!this.hasBase && this.useTemplate) {\n\t\ttitle = this.wiki.generateNewTitle(this.actionTemplate);\n\t} else if (!this.hasBase && !this.useTemplate) {\n\t\t// If NO $basetitle AND NO $template use initial title\n\t\t// DON'T overwrite any stuff\n\t\ttitle = this.wiki.generateNewTitle(title);\n\t}\n\tvar templateTiddler = this.wiki.getTiddler(this.actionTemplate) || {};\n\tvar tiddler = this.wiki.addTiddler(new $tw.Tiddler(templateTiddler.fields,creationFields,fields,modificationFields,{title: title}));\n\tif(this.actionSaveTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveTitle,title,this.getVariable(\"currentTiddler\"));\n\t}\n\tif(this.actionSaveDraftTitle) {\n\t\tthis.wiki.setTextReference(this.actionSaveDraftTitle,this.wiki.generateDraftTitle(title),this.getVariable(\"currentTiddler\"));\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-createtiddler\"] = CreateTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletefield.js": {
            "title": "$:/core/modules/widgets/action-deletefield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletefield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete fields of a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\ttiddler = this.wiki.getTiddler(self.actionTiddler),\n\t\tremoveFields = {},\n\t\thasChanged = false;\n\tif(this.actionField && tiddler) {\n\t\tremoveFields[this.actionField] = undefined;\n\t\tif(this.actionField in tiddler.fields) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(tiddler) {\n\t\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\t\tif(name.charAt(0) !== \"$\" && name !== \"title\") {\n\t\t\t\tremoveFields[name] = undefined;\n\t\t\t\thasChanged = true;\n\t\t\t}\n\t\t});\n\t\tif(hasChanged) {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,removeFields,this.wiki.getModificationFields()));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletefield\"] = DeleteFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-deletetiddler.js": {
            "title": "$:/core/modules/widgets/action-deletetiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-deletetiddler.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to delete a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DeleteTiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDeleteTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDeleteTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nDeleteTiddlerWidget.prototype.execute = function() {\n\tthis.actionFilter = this.getAttribute(\"$filter\");\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nDeleteTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$filter\"] || changedAttributes[\"$tiddler\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nDeleteTiddlerWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar tiddlers = [];\n\tif(this.actionFilter) {\n\t\ttiddlers = this.wiki.filterTiddlers(this.actionFilter,this);\n\t}\n\tif(this.actionTiddler) {\n\t\ttiddlers.push(this.actionTiddler);\n\t}\n\tfor(var t=0; t<tiddlers.length; t++) {\n\t\tthis.wiki.deleteTiddler(tiddlers[t]);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-deletetiddler\"] = DeleteTiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-listops.js": {
            "title": "$:/core/modules/widgets/action-listops.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-listops.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to apply list operations to any tiddler field (defaults to the 'list' field of the current tiddler)\n\n\\*/\n(function() {\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar ActionListopsWidget = function(parseTreeNode, options) {\n\tthis.initialise(parseTreeNode, options);\n};\n/**\n * Inherit from the base widget class\n */\nActionListopsWidget.prototype = new Widget();\n/**\n * Render this widget into the DOM\n */\nActionListopsWidget.prototype.render = function(parent, nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n/**\n * Compute the internal state of the widget\n */\nActionListopsWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.target = this.getAttribute(\"$tiddler\", this.getVariable(\n\t\t\"currentTiddler\"));\n\tthis.filter = this.getAttribute(\"$filter\");\n\tthis.subfilter = this.getAttribute(\"$subfilter\");\n\tthis.listField = this.getAttribute(\"$field\", \"list\");\n\tthis.listIndex = this.getAttribute(\"$index\");\n\tthis.filtertags = this.getAttribute(\"$tags\");\n};\n/**\n * \tRefresh the widget by ensuring our attributes are up to date\n */\nActionListopsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.$tiddler || changedAttributes.$filter ||\n\t\tchangedAttributes.$subfilter || changedAttributes.$field ||\n\t\tchangedAttributes.$index || changedAttributes.$tags) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n/**\n * \tInvoke the action associated with this widget\n */\nActionListopsWidget.prototype.invokeAction = function(triggeringWidget,\n\tevent) {\n\t//Apply the specified filters to the lists\n\tvar field = this.listField,\n\t\tindex,\n\t\ttype = \"!!\",\n\t\tlist = this.listField;\n\tif(this.listIndex) {\n\t\tfield = undefined;\n\t\tindex = this.listIndex;\n\t\ttype = \"##\";\n\t\tlist = this.listIndex;\n\t}\n\tif(this.filter) {\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(this.filter, this)));\n\t}\n\tif(this.subfilter) {\n\t\tvar subfilter = \"[list[\" + this.target + type + list + \"]] \" + this.subfilter;\n\t\tthis.wiki.setText(this.target, field, index, $tw.utils.stringifyList(\n\t\t\tthis.wiki\n\t\t\t.filterTiddlers(subfilter, this)));\n\t}\n\tif(this.filtertags) {\n\t\tvar tiddler = this.wiki.getTiddler(this.target),\n\t\t\toldtags = tiddler ? (tiddler.fields.tags || []).slice(0) : [],\n\t\t\ttagfilter = \"[list[\" + this.target + \"!!tags]] \" + this.filtertags,\n\t\t\tnewtags = this.wiki.filterTiddlers(tagfilter,this);\n\t\tif($tw.utils.stringifyList(oldtags.sort()) !== $tw.utils.stringifyList(newtags.sort())) {\n\t\t\tthis.wiki.setText(this.target,\"tags\",undefined,$tw.utils.stringifyList(newtags));\t\t\t\n\t\t}\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-listops\"] = ActionListopsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-log.js": {
            "title": "$:/core/modules/widgets/action-log.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-log.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to log debug messages\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LogWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLogWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLogWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\nLogWidget.prototype.execute = function(){\n\tthis.message = this.getAttribute(\"$$message\",\"debug\");\n\tthis.logAll = this.getAttribute(\"$$all\",\"no\") === \"yes\" ? true : false;\n\tthis.filter = this.getAttribute(\"$$filter\");\n}\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nLogWidget.prototype.refresh = function(changedTiddlers) {\n\tthis.refreshSelf();\n\treturn true;\n};\n\n/*\nInvoke the action associated with this widget\n*/\nLogWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tthis.log();\n\treturn true; // Action was invoked\n};\n\nLogWidget.prototype.log = function() {\n\tvar data = {},\n\t\tdataCount,\n\t\tallVars = {},\n\t\tfilteredVars;\n\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.substring(0,2) !== \"$$\") {\n\t\t\tdata[name] = attribute;\n\t\t}\t\t\n\t});\n\n\tfor(var v in this.variables) {\n\t\tallVars[v] = this.getVariable(v,{defaultValue:\"\"});\n\t}\t\n\tif(this.filter) {\n\t\tfilteredVars = this.wiki.compileFilter(this.filter).call(this.wiki,this.wiki.makeTiddlerIterator(allVars));\n\t\t$tw.utils.each(filteredVars,function(name) {\n\t\t\tdata[name] = allVars[name];\n\t\t});\t\t\n\t}\n\tdataCount = $tw.utils.count(data);\n\n\tconsole.group(this.message);\n\tif(dataCount > 0) {\n\t\t$tw.utils.logTable(data);\n\t}\n\tif(this.logAll || !dataCount) {\n\t\tconsole.groupCollapsed(\"All variables\");\n\t\t$tw.utils.logTable(allVars);\n\t\tconsole.groupEnd();\n\t}\n\tconsole.groupEnd();\n}\n\nexports[\"action-log\"] = LogWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-navigate.js": {
            "title": "$:/core/modules/widgets/action-navigate.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-navigate.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to navigate to a tiddler\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigateWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigateWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigateWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigateWidget.prototype.execute = function() {\n\tthis.actionTo = this.getAttribute(\"$to\");\n\tthis.actionScroll = this.getAttribute(\"$scroll\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nNavigateWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$to\"] || changedAttributes[\"$scroll\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nNavigateWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tevent = event || {};\n\tvar bounds = triggeringWidget && triggeringWidget.getBoundingClientRect && triggeringWidget.getBoundingClientRect(),\n\t\tsuppressNavigation = event.metaKey || event.ctrlKey || (event.button === 1);\n\tif(this.actionScroll === \"yes\") {\n\t\tsuppressNavigation = false;\n\t} else if(this.actionScroll === \"no\") {\n\t\tsuppressNavigation = true;\n\t}\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.actionTo === undefined ? this.getVariable(\"currentTiddler\") : this.actionTo,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: triggeringWidget,\n\t\tnavigateFromClientRect: bounds && { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: suppressNavigation\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-navigate\"] = NavigateWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-popup.js": {
            "title": "$:/core/modules/widgets/action-popup.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-popup.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to trigger a popup.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ActionPopupWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nActionPopupWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nActionPopupWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nActionPopupWidget.prototype.execute = function() {\n\tthis.actionState = this.getAttribute(\"$state\");\n\tthis.actionCoords = this.getAttribute(\"$coords\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nActionPopupWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$state\"] || changedAttributes[\"$coords\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nActionPopupWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Trigger the popup\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(this.actionCoords || \"\");\n\tif(match) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: null,\n\t\t\tdomNodeRect: {\n\t\t\t\tleft: parseFloat(match[1]),\n\t\t\t\ttop: parseFloat(match[2]),\n\t\t\t\twidth: parseFloat(match[3]),\n\t\t\t\theight: parseFloat(match[4])\n\t\t\t},\n\t\t\ttitle: this.actionState,\n\t\t\twiki: this.wiki\n\t\t});\n\t} else {\n\t\t$tw.popup.cancel(0);\n\t}\n\treturn true; // Action was invoked\n};\n\nexports[\"action-popup\"] = ActionPopupWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-sendmessage.js": {
            "title": "$:/core/modules/widgets/action-sendmessage.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-sendmessage.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to send a message\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SendMessageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSendMessageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSendMessageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSendMessageWidget.prototype.execute = function() {\n\tthis.actionMessage = this.getAttribute(\"$message\");\n\tthis.actionParam = this.getAttribute(\"$param\");\n\tthis.actionName = this.getAttribute(\"$name\");\n\tthis.actionValue = this.getAttribute(\"$value\",\"\");\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSendMessageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSendMessageWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\t// Get the string parameter\n\tvar param = this.actionParam;\n\t// Assemble the attributes as a hashmap\n\tvar paramObject = Object.create(null);\n\tvar count = 0;\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparamObject[name] = attribute;\n\t\t\tcount++;\n\t\t}\n\t});\n\t// Add name/value pair if present\n\tif(this.actionName) {\n\t\tparamObject[this.actionName] = this.actionValue;\n\t}\n\t// Dispatch the message\n\tthis.dispatchEvent({\n\t\ttype: this.actionMessage,\n\t\tparam: param,\n\t\tparamObject: paramObject,\n\t\ttiddlerTitle: this.getVariable(\"currentTiddler\"),\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tevent: event\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-sendmessage\"] = SendMessageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/action-setfield.js": {
            "title": "$:/core/modules/widgets/action-setfield.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/action-setfield.js\ntype: application/javascript\nmodule-type: widget\n\nAction widget to set a single field or index on a tiddler.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetFieldWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetFieldWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetFieldWidget.prototype.render = function(parent,nextSibling) {\n\tthis.computeAttributes();\n\tthis.execute();\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetFieldWidget.prototype.execute = function() {\n\tthis.actionTiddler = this.getAttribute(\"$tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.actionField = this.getAttribute(\"$field\");\n\tthis.actionIndex = this.getAttribute(\"$index\");\n\tthis.actionValue = this.getAttribute(\"$value\");\n\tthis.actionTimestamp = this.getAttribute(\"$timestamp\",\"yes\") === \"yes\";\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nSetFieldWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"$tiddler\"] || changedAttributes[\"$field\"] || changedAttributes[\"$index\"] || changedAttributes[\"$value\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nInvoke the action associated with this widget\n*/\nSetFieldWidget.prototype.invokeAction = function(triggeringWidget,event) {\n\tvar self = this,\n\t\toptions = {};\n\toptions.suppressTimestamp = !this.actionTimestamp;\n\tif((typeof this.actionField == \"string\") || (typeof this.actionIndex == \"string\")  || (typeof this.actionValue == \"string\")) {\n\t\tthis.wiki.setText(this.actionTiddler,this.actionField,this.actionIndex,this.actionValue,options);\n\t}\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tself.wiki.setText(self.actionTiddler,name,undefined,attribute,options);\n\t\t}\n\t});\n\treturn true; // Action was invoked\n};\n\nexports[\"action-setfield\"] = SetFieldWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/browse.js": {
            "title": "$:/core/modules/widgets/browse.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/browse.js\ntype: application/javascript\nmodule-type: widget\n\nBrowse widget for browsing for files to import\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar BrowseWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nBrowseWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nBrowseWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"file\");\n\tif(this.browseMultiple) {\n\t\tdomNode.setAttribute(\"multiple\",\"multiple\");\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\t// Nw.js supports \"nwsaveas\" to force a \"save as\" dialogue that allows a new or existing file to be selected\n\tif(this.nwsaveas) {\n\t\tdomNode.setAttribute(\"nwsaveas\",this.nwsaveas);\n\t}\n\tif(this.accept) {\n\t\tdomNode.setAttribute(\"accept\",this.accept);\n\t}\n\t// Nw.js supports \"webkitdirectory\" and \"nwdirectory\" to allow a directory to be selected\n\tif(this.webkitdirectory) {\n\t\tdomNode.setAttribute(\"webkitdirectory\",this.webkitdirectory);\n\t}\n\tif(this.nwdirectory) {\n\t\tdomNode.setAttribute(\"nwdirectory\",this.nwdirectory);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"change\",function (event) {\n\t\tif(self.message) {\n\t\t\tself.dispatchEvent({type: self.message, param: self.param, files: event.target.files});\n\t\t} else {\n\t\t\tself.wiki.readFiles(event.target.files,{\n\t\t\t\tcallback: function(tiddlerFieldsArray) {\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray)});\n\t\t\t\t},\n\t\t\t\tdeserializer: self.deserializer\n\t\t\t});\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nBrowseWidget.prototype.execute = function() {\n\tthis.browseMultiple = this.getAttribute(\"multiple\");\n\tthis.deserializer = this.getAttribute(\"deserializer\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.nwsaveas = this.getAttribute(\"nwsaveas\");\n\tthis.accept = this.getAttribute(\"accept\");\n\tthis.webkitdirectory = this.getAttribute(\"webkitdirectory\");\n\tthis.nwdirectory = this.getAttribute(\"nwdirectory\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nBrowseWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.browse = BrowseWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/button.js": {
            "title": "$:/core/modules/widgets/button.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/button.js\ntype: application/javascript\nmodule-type: widget\n\nButton widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ButtonWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nButtonWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nButtonWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this,\n\t\ttag = \"button\",\n\t\tdomNode;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tif(this.buttonTag && $tw.config.htmlUnsafeElements.indexOf(this.buttonTag) === -1) {\n\t\ttag = this.buttonTag;\n\t}\n\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tvar classes = this[\"class\"].split(\" \") || [],\n\t\tisPoppedUp = (this.popup || this.popupTitle) && this.isPoppedUp();\n\tif(this.selectedClass) {\n\t\tif((this.set || this.setTitle) && this.setTo && this.isSelected()) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t\tif(isPoppedUp) {\n\t\t\t$tw.utils.pushTop(classes,this.selectedClass.split(\" \"));\n\t\t}\n\t}\n\tif(isPoppedUp) {\n\t\t$tw.utils.pushTop(classes,\"tc-popup-handle\");\n\t}\n\tdomNode.className = classes.join(\" \");\n\t// Assign other attributes\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tif(this.tooltip) {\n\t\tdomNode.setAttribute(\"title\",this.tooltip);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tdomNode.setAttribute(\"disabled\",true);\n\t}\n\t// Add a click event handler\n\tdomNode.addEventListener(\"click\",function (event) {\n\t\tvar handled = false;\n\t\tif(self.invokeActions(self,event)) {\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.to) {\n\t\t\tself.navigateTo(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.message) {\n\t\t\tself.dispatchMessage(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.popup || self.popupTitle) {\n\t\t\tself.triggerPopup(event);\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.set || self.setTitle) {\n\t\t\tself.setTiddler();\n\t\t\thandled = true;\n\t\t}\n\t\tif(self.actions) {\n\t\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tself.invokeActionString(self.actions,self,event,{modifier: modifierKey});\n\t\t}\n\t\tif(handled) {\n\t\t\tevent.preventDefault();\n\t\t\tevent.stopPropagation();\n\t\t}\n\t\treturn handled;\n\t},false);\n\t// Make it draggable if required\n\tif(this.dragTiddler || this.dragFilter) {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.dragTiddler;},\n\t\t\tdragFilterFn: function() {return self.dragFilter;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nWe don't allow actions to propagate because we trigger actions ourselves\n*/\nButtonWidget.prototype.allowActionPropagation = function() {\n\treturn false;\n};\n\nButtonWidget.prototype.getBoundingClientRect = function() {\n\treturn this.domNodes[0].getBoundingClientRect();\n};\n\nButtonWidget.prototype.isSelected = function() {\n    return this.setTitle ? (this.setField ? this.wiki.getTiddler(this.setTitle).getFieldString(this.setField) === this.setTo :\n\t\t(this.setIndex ? this.wiki.extractTiddlerDataItem(this.setTitle,this.setIndex) === this.setTo :\n\t\t\tthis.wiki.getTiddlerText(this.setTitle))) || this.defaultSetValue || this.getVariable(\"currentTiddler\") :\n\t\tthis.wiki.getTextReference(this.set,this.defaultSetValue,this.getVariable(\"currentTiddler\")) === this.setTo;\n};\n\nButtonWidget.prototype.isPoppedUp = function() {\n\tvar tiddler = this.popupTitle ? this.wiki.getTiddler(this.popupTitle) : this.wiki.getTiddler(this.popup);\n\tvar result = tiddler && tiddler.fields.text ? $tw.popup.readPopupState(tiddler.fields.text) : false;\n\treturn result;\n};\n\nButtonWidget.prototype.navigateTo = function(event) {\n\tvar bounds = this.getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tevent: event\n\t});\n};\n\nButtonWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\"), event: event});\n};\n\nButtonWidget.prototype.triggerPopup = function(event) {\n\tif(this.popupTitle) {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popupTitle,\n\t\t\twiki: this.wiki,\n\t\t\tnoStateReference: true\n\t\t});\n\t} else {\n\t\t$tw.popup.triggerPopup({\n\t\t\tdomNode: this.domNodes[0],\n\t\t\ttitle: this.popup,\n\t\t\twiki: this.wiki\n\t\t});\n\t}\n};\n\nButtonWidget.prototype.setTiddler = function() {\n\tif(this.setTitle) {\n\t\tthis.setField ? this.wiki.setText(this.setTitle,this.setField,undefined,this.setTo) :\n\t\t\t\t(this.setIndex ? this.wiki.setText(this.setTitle,undefined,this.setIndex,this.setTo) :\n\t\t\t\tthis.wiki.setText(this.setTitle,\"text\",undefined,this.setTo));\n\t} else {\n\t\tthis.wiki.setTextReference(this.set,this.setTo,this.getVariable(\"currentTiddler\"));\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nButtonWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\");\n\tthis.to = this.getAttribute(\"to\");\n\tthis.message = this.getAttribute(\"message\");\n\tthis.param = this.getAttribute(\"param\");\n\tthis.set = this.getAttribute(\"set\");\n\tthis.setTo = this.getAttribute(\"setTo\");\n\tthis.popup = this.getAttribute(\"popup\");\n\tthis.hover = this.getAttribute(\"hover\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis.style = this.getAttribute(\"style\");\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tthis.selectedClass = this.getAttribute(\"selectedClass\");\n\tthis.defaultSetValue = this.getAttribute(\"default\",\"\");\n\tthis.buttonTag = this.getAttribute(\"tag\");\n\tthis.dragTiddler = this.getAttribute(\"dragTiddler\");\n\tthis.dragFilter = this.getAttribute(\"dragFilter\");\n\tthis.setTitle = this.getAttribute(\"setTitle\");\n\tthis.setField = this.getAttribute(\"setField\");\n\tthis.setIndex = this.getAttribute(\"setIndex\");\n\tthis.popupTitle = this.getAttribute(\"popupTitle\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nButtonWidget.prototype.updateDomNodeClasses = function() {\n\tvar domNodeClasses = this.domNode.className.split(\" \"),\n\t\toldClasses = this.class.split(\" \"),\n\t\tnewClasses;\t\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tnewClasses = this.class.split(\" \");\n\t//Remove classes assigned from the old value of class attribute\n\t$tw.utils.each(oldClasses,function(oldClass){\n\t\tvar i = domNodeClasses.indexOf(oldClass);\n\t\tif(i !== -1) {\n\t\t\tdomNodeClasses.splice(i,1);\n\t\t}\n\t});\n\t//Add new classes from updated class attribute.\n\t$tw.utils.pushTop(domNodeClasses,newClasses);\n\tthis.domNode.className = domNodeClasses.join(\" \");\n}\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nButtonWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.actions || changedAttributes.to || changedAttributes.message || changedAttributes.param || changedAttributes.set || changedAttributes.setTo || changedAttributes.popup || changedAttributes.hover || changedAttributes.selectedClass || changedAttributes.style || changedAttributes.dragFilter || changedAttributes.dragTiddler || (this.set && changedTiddlers[this.set]) || (this.popup && changedTiddlers[this.popup]) || (this.popupTitle && changedTiddlers[this.popupTitle]) || changedAttributes.setTitle || changedAttributes.setField || changedAttributes.setIndex || changedAttributes.popupTitle || changedAttributes.disabled) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.updateDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.button = ButtonWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/checkbox.js": {
            "title": "$:/core/modules/widgets/checkbox.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/checkbox.js\ntype: application/javascript\nmodule-type: widget\n\nCheckbox widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CheckboxWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCheckboxWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCheckboxWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",this.checkboxClass);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"checkbox\");\n\tif(this.getValue()) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nCheckboxWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.checkboxTitle);\n\tif(tiddler) {\n\t\tif(this.checkboxTag) {\n\t\t\tif(this.checkboxInvertTag) {\n\t\t\t\treturn !tiddler.hasTag(this.checkboxTag);\n\t\t\t} else {\n\t\t\t\treturn tiddler.hasTag(this.checkboxTag);\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tvar value;\n\t\t\tif($tw.utils.hop(tiddler.fields,this.checkboxField)) {\n\t\t\t\tvalue = tiddler.fields[this.checkboxField] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.checkboxDefault || \"\";\n\t\t\t}\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t\tif(this.checkboxIndex) {\n\t\t\tvar value = this.wiki.extractTiddlerDataItem(tiddler,this.checkboxIndex,this.checkboxDefault || \"\");\n\t\t\tif(value === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(value === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t} else {\n\t\tif(this.checkboxTag) {\n\t\t\treturn false;\n\t\t}\n\t\tif(this.checkboxField) {\n\t\t\tif(this.checkboxDefault === this.checkboxChecked) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tif(this.checkboxDefault === this.checkboxUnchecked) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\nCheckboxWidget.prototype.handleChangeEvent = function(event) {\n\tvar checked = this.inputDomNode.checked,\n\t\ttiddler = this.wiki.getTiddler(this.checkboxTitle),\n\t\tfallbackFields = {text: \"\"},\n\t\tnewFields = {title: this.checkboxTitle},\n\t\thasChanged = false,\n\t\ttagCheck = false,\n\t\thasTag = tiddler && tiddler.hasTag(this.checkboxTag),\n\t\tvalue = checked ? this.checkboxChecked : this.checkboxUnchecked;\n\tif(this.checkboxTag && this.checkboxInvertTag === \"yes\") {\n\t\ttagCheck = hasTag === checked;\n\t} else {\n\t\ttagCheck = hasTag !== checked;\n\t}\n\t// Set the tag if specified\n\tif(this.checkboxTag && (!tiddler || tagCheck)) {\n\t\tnewFields.tags = tiddler ? (tiddler.fields.tags || []).slice(0) : [];\n\t\tvar pos = newFields.tags.indexOf(this.checkboxTag);\n\t\tif(pos !== -1) {\n\t\t\tnewFields.tags.splice(pos,1);\n\t\t}\n\t\tif(this.checkboxInvertTag === \"yes\" && !checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t} else if(this.checkboxInvertTag !== \"yes\" && checked) {\n\t\t\tnewFields.tags.push(this.checkboxTag);\n\t\t}\n\t\thasChanged = true;\n\t}\n\t// Set the field if specified\n\tif(this.checkboxField) {\n\t\tif(!tiddler || tiddler.fields[this.checkboxField] !== value) {\n\t\t\tnewFields[this.checkboxField] = value;\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\t// Set the index if specified\n\tif(this.checkboxIndex) {\n\t\tvar indexValue = this.wiki.extractTiddlerDataItem(this.checkboxTitle,this.checkboxIndex);\n\t\tif(!tiddler || indexValue !== value) {\n\t\t\thasChanged = true;\n\t\t}\n\t}\n\tif(hasChanged) {\n\t\tif(this.checkboxIndex) {\n\t\t\tthis.wiki.setText(this.checkboxTitle,\"\",this.checkboxIndex,value);\n\t\t} else {\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),fallbackFields,tiddler,newFields,this.wiki.getModificationFields()));\n\t\t}\n\t}\n\t// Trigger actions\n\tif(this.checkboxActions) {\n\t\tthis.invokeActionString(this.checkboxActions,this,event);\n\t}\n\tif(this.checkboxCheckActions && checked) {\n\t\tthis.invokeActionString(this.checkboxCheckActions,this,event);\n\t}\n\tif(this.checkboxUncheckActions && !checked) {\n\t\tthis.invokeActionString(this.checkboxUncheckActions,this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCheckboxWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.checkboxActions = this.getAttribute(\"actions\");\n\tthis.checkboxCheckActions = this.getAttribute(\"checkactions\");\n\tthis.checkboxUncheckActions = this.getAttribute(\"uncheckactions\");\n\tthis.checkboxTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.checkboxTag = this.getAttribute(\"tag\");\n\tthis.checkboxField = this.getAttribute(\"field\");\n\tthis.checkboxIndex = this.getAttribute(\"index\");\n\tthis.checkboxChecked = this.getAttribute(\"checked\");\n\tthis.checkboxUnchecked = this.getAttribute(\"unchecked\");\n\tthis.checkboxDefault = this.getAttribute(\"default\");\n\tthis.checkboxClass = this.getAttribute(\"class\",\"\");\n\tthis.checkboxInvertTag = this.getAttribute(\"invertTag\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCheckboxWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.tag || changedAttributes.invertTag || changedAttributes.field || changedAttributes.index || changedAttributes.checked || changedAttributes.unchecked || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.disabled) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.checkboxTitle]) {\n\t\t\tthis.inputDomNode.checked = this.getValue();\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.checkbox = CheckboxWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/codeblock.js": {
            "title": "$:/core/modules/widgets/codeblock.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/codeblock.js\ntype: application/javascript\nmodule-type: widget\n\nCode block node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CodeBlockWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCodeBlockWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCodeBlockWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar codeNode = this.document.createElement(\"code\"),\n\t\tdomNode = this.document.createElement(\"pre\");\n\tcodeNode.appendChild(this.document.createTextNode(this.getAttribute(\"code\")));\n\tdomNode.appendChild(codeNode);\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n\tif(this.postRender) {\n\t\tthis.postRender();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nCodeBlockWidget.prototype.execute = function() {\n\tthis.language = this.getAttribute(\"language\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCodeBlockWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.codeblock = CodeBlockWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/count.js": {
            "title": "$:/core/modules/widgets/count.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/count.js\ntype: application/javascript\nmodule-type: widget\n\nCount widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar CountWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nCountWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nCountWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.currentCount);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nCountWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Execute the filter\n\tif(this.filter) {\n\t\tthis.currentCount = this.wiki.filterTiddlers(this.filter,this).length;\n\t} else {\n\t\tthis.currentCount = \"0\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nCountWidget.prototype.refresh = function(changedTiddlers) {\n\t// Re-execute the filter to get the count\n\tthis.computeAttributes();\n\tvar oldCount = this.currentCount;\n\tthis.execute();\n\tif(this.currentCount !== oldCount) {\n\t\t// Regenerate and rerender the widget and replace the existing DOM node\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n\n};\n\nexports.count = CountWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/diff-text.js": {
            "title": "$:/core/modules/widgets/diff-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/diff-text.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display a diff between two texts\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget,\n\tdmp = require(\"$:/core/modules/utils/diff-match-patch/diff_match_patch.js\");\n\nvar DiffTextWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDiffTextWidget.prototype = new Widget();\n\nDiffTextWidget.prototype.invisibleCharacters = {\n\t\"\\n\": \"↩︎\\n\",\n\t\"\\r\": \"⇠\",\n\t\"\\t\": \"⇥\\t\"\n};\n\n/*\nRender this widget into the DOM\n*/\nDiffTextWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create the diff\n\tvar dmpObject = new dmp.diff_match_patch(),\n\t\tdiffs = dmpObject.diff_main(this.getAttribute(\"source\"),this.getAttribute(\"dest\"));\n\t// Apply required cleanup\n\tswitch(this.getAttribute(\"cleanup\",\"semantic\")) {\n\t\tcase \"none\":\n\t\t\t// No cleanup\n\t\t\tbreak;\n\t\tcase \"efficiency\":\n\t\t\tdmpObject.diff_cleanupEfficiency(diffs);\n\t\t\tbreak;\n\t\tdefault: // case \"semantic\"\n\t\t\tdmpObject.diff_cleanupSemantic(diffs);\n\t\t\tbreak;\n\t}\n\t// Create the elements\n\tvar domContainer = this.document.createElement(\"div\"), \n\t\tdomDiff = this.createDiffDom(diffs);\n\tparent.insertBefore(domContainer,nextSibling);\n\t// Set variables\n\tthis.setVariable(\"diff-count\",diffs.reduce(function(acc,diff) {\n\t\tif(diff[0] !== dmp.DIFF_EQUAL) {\n\t\t\tacc++;\n\t\t}\n\t\treturn acc;\n\t},0).toString());\n\t// Render child widgets\n\tthis.renderChildren(domContainer,null);\n\t// Render the diff\n\tdomContainer.appendChild(domDiff);\n\t// Save our container\n\tthis.domNodes.push(domContainer);\n};\n\n/*\nCreate DOM elements representing a list of diffs\n*/\nDiffTextWidget.prototype.createDiffDom = function(diffs) {\n\tvar self = this;\n\t// Create the element and assign the attributes\n\tvar domPre = this.document.createElement(\"pre\"),\n\t\tdomCode = this.document.createElement(\"code\");\n\t$tw.utils.each(diffs,function(diff) {\n\t\tvar tag = diff[0] === dmp.DIFF_INSERT ? \"ins\" : (diff[0] === dmp.DIFF_DELETE ? \"del\" : \"span\"),\n\t\t\tclassName = diff[0] === dmp.DIFF_INSERT ? \"tc-diff-insert\" : (diff[0] === dmp.DIFF_DELETE ? \"tc-diff-delete\" : \"tc-diff-equal\"),\n\t\t\tdom = self.document.createElement(tag),\n\t\t\ttext = diff[1],\n\t\t\tcurrPos = 0,\n\t\t\tre = /([\\x00-\\x1F])/mg,\n\t\t\tmatch = re.exec(text),\n\t\t\tspan,\n\t\t\tprintable;\n\t\tdom.className = className;\n\t\twhile(match) {\n\t\t\tif(currPos < match.index) {\n\t\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos,match.index)));\n\t\t\t}\n\t\t\tspan = self.document.createElement(\"span\");\n\t\t\tspan.className = \"tc-diff-invisible\";\n\t\t\tprintable = self.invisibleCharacters[match[0]] || (\"[0x\" + match[0].charCodeAt(0).toString(16) + \"]\");\n\t\t\tspan.appendChild(self.document.createTextNode(printable));\n\t\t\tdom.appendChild(span);\n\t\t\tcurrPos = match.index + match[0].length;\n\t\t\tmatch = re.exec(text);\n\t\t}\n\t\tif(currPos < text.length) {\n\t\t\tdom.appendChild(self.document.createTextNode(text.slice(currPos)));\n\t\t}\n\t\tdomCode.appendChild(dom);\n\t});\n\tdomPre.appendChild(domCode);\n\treturn domPre;\n};\n\n/*\nCompute the internal state of the widget\n*/\nDiffTextWidget.prototype.execute = function() {\n\t// Make child widgets\n\tvar parseTreeNodes;\n\tif(this.parseTreeNode && this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\tparseTreeNodes = this.parseTreeNode.children;\n\t} else {\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: \"$:/language/Diffs/CountMessage\"}\n\t\t\t}\n\t\t}];\n\t}\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDiffTextWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.dest || changedAttributes.cleanup) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports[\"diff-text\"] = DiffTextWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/draggable.js": {
            "title": "$:/core/modules/widgets/draggable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/draggable.js\ntype: application/javascript\nmodule-type: widget\n\nDraggable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DraggableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDraggableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDraggableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Sanitise the specified tag\n\tvar tag = this.draggableTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"div\";\n\t}\n\t// Create our element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = [\"tc-draggable\"];\n\tif(this.draggableClasses) {\n\t\tclasses.push(this.draggableClasses);\n\t}\n\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t// Add event handlers\n\t$tw.utils.makeDraggable({\n\t\tdomNode: domNode,\n\t\tdragTiddlerFn: function() {return self.getAttribute(\"tiddler\");},\n\t\tdragFilterFn: function() {return self.getAttribute(\"filter\");},\n\t\tstartActions: self.startActions,\n\t\tendActions: self.endActions,\n\t\twidget: this\n\t});\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nDraggableWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.draggableTag = this.getAttribute(\"tag\",\"div\");\n\tthis.draggableClasses = this.getAttribute(\"class\");\n\tthis.startActions = this.getAttribute(\"startactions\");\n\tthis.endActions = this.getAttribute(\"endactions\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDraggableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tag || changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.draggable = DraggableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/droppable.js": {
            "title": "$:/core/modules/widgets/droppable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/droppable.js\ntype: application/javascript\nmodule-type: widget\n\nDroppable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DroppableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDroppableWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDroppableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this,\n\t\ttag = this.parseTreeNode.isBlock ? \"div\" : \"span\",\n\t\tdomNode;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.droppableTag && $tw.config.htmlUnsafeElements.indexOf(this.droppableTag) === -1) {\n\t\ttag = this.droppableTag;\n\t}\n\t// Create element and assign classes\n\tdomNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\n\t// Add event handlers\n\tif(this.droppableEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"}\n\t\t]);\t\t\n\t} else {\n\t\t$tw.utils.addClass(this.domNode,this.disabledClass);\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDroppableWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDroppableWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally. The hacky second condition is to resolve a problem with Firefox whereby there is an erroneous dragenter event if the node being dragged is within the dropzone\n\tif(this.currentlyEntered.length === 0 || (this.currentlyEntered.length === 1 && this.currentlyEntered[0] === $tw.dragInProgress)) {\n\t\tthis.currentlyEntered = [];\n\t\tif(this.domNodes[0]) {\n\t\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t\t}\n\t}\n};\n\nDroppableWidget.prototype.handleDragEnterEvent  = function(event) {\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\t// Set the drop effect\n\tevent.dataTransfer.dropEffect = this.droppableEffect;\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n\treturn false;\n};\n\nDroppableWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this;\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\tvar dataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Try to import the various data types we understand\n\t$tw.utils.importDataTransfer(dataTransfer,null,function(fieldsArray) {\n\t\tfieldsArray.forEach(function(fields) {\n\t\t\tself.performActions(fields.title || fields.text,event);\n\t\t});\n\t});\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n\treturn false;\n};\n\nDroppableWidget.prototype.performActions = function(title,event) {\n\tif(this.droppableActions) {\n\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\tthis.invokeActionString(this.droppableActions,this,event,{actionTiddler: title, modifier: modifierKey});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDroppableWidget.prototype.execute = function() {\n\tthis.droppableActions = this.getAttribute(\"actions\");\n\tthis.droppableEffect = this.getAttribute(\"effect\",\"copy\");\n\tthis.droppableTag = this.getAttribute(\"tag\");\n\tthis.droppableEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.disabledClass = this.getAttribute(\"disabledClass\",\"\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nDroppableWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-droppable\");\n\tthis.domNode.className = classes.join(\" \");\t\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDroppableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tag || changedAttributes.enable || changedAttributes.disabledClass || changedAttributes.actions || changedAttributes.effect) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.droppable = DroppableWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/dropzone.js": {
            "title": "$:/core/modules/widgets/dropzone.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/dropzone.js\ntype: application/javascript\nmodule-type: widget\n\nDropzone widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar DropZoneWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nDropZoneWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nDropZoneWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar domNode = this.document.createElement(\"div\");\n\tdomNode.className = this.dropzoneClass || \"tc-dropzone\";\n\t// Add event handlers\n\tif(this.dropzoneEnable) {\n\t\t$tw.utils.addEventListeners(domNode,[\n\t\t\t{name: \"dragenter\", handlerObject: this, handlerMethod: \"handleDragEnterEvent\"},\n\t\t\t{name: \"dragover\", handlerObject: this, handlerMethod: \"handleDragOverEvent\"},\n\t\t\t{name: \"dragleave\", handlerObject: this, handlerMethod: \"handleDragLeaveEvent\"},\n\t\t\t{name: \"drop\", handlerObject: this, handlerMethod: \"handleDropEvent\"},\n\t\t\t{name: \"paste\", handlerObject: this, handlerMethod: \"handlePasteEvent\"},\n\t\t\t{name: \"dragend\", handlerObject: this, handlerMethod: \"handleDragEndEvent\"}\n\t\t]);\t\t\n\t}\n\tdomNode.addEventListener(\"click\",function (event) {\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n\t// Stack of outstanding enter/leave events\n\tthis.currentlyEntered = [];\n};\n\nDropZoneWidget.prototype.enterDrag = function(event) {\n\tif(this.currentlyEntered.indexOf(event.target) === -1) {\n\t\tthis.currentlyEntered.push(event.target);\n\t}\n\t// If we're entering for the first time we need to apply highlighting\n\t$tw.utils.addClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.leaveDrag = function(event) {\n\tvar pos = this.currentlyEntered.indexOf(event.target);\n\tif(pos !== -1) {\n\t\tthis.currentlyEntered.splice(pos,1);\n\t}\n\t// Remove highlighting if we're leaving externally\n\tif(this.currentlyEntered.length === 0) {\n\t\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t}\n};\n\nDropZoneWidget.prototype.handleDragEnterEvent  = function(event) {\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tthis.enterDrag(event);\n\t// Tell the browser that we're ready to handle the drop\n\tevent.preventDefault();\n\t// Tell the browser not to ripple the drag up to any parent drop handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handleDragOverEvent  = function(event) {\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\t// Tell the browser that we're still interested in the drop\n\tevent.preventDefault();\n\tevent.dataTransfer.dropEffect = \"copy\"; // Explicitly show this is a copy\n};\n\nDropZoneWidget.prototype.handleDragLeaveEvent  = function(event) {\n\tthis.leaveDrag(event);\n};\n\nDropZoneWidget.prototype.handleDragEndEvent = function(event) {\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n};\n\nDropZoneWidget.prototype.handleDropEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t};\n\tthis.leaveDrag(event);\n\t// Check for being over a TEXTAREA or INPUT\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) !== -1) {\n\t\treturn false;\n\t}\n\t// Check for this window being the source of the drag\n\tif($tw.dragInProgress) {\n\t\treturn false;\n\t}\n\tvar self = this,\n\t\tdataTransfer = event.dataTransfer;\n\t// Remove highlighting\n\t$tw.utils.removeClass(this.domNodes[0],\"tc-dragover\");\n\t// Import any files in the drop\n\tvar numFiles = 0;\n\tif(dataTransfer.files) {\n\t\tnumFiles = this.wiki.readFiles(dataTransfer.files,{\n\t\t\tcallback: readFileCallback,\n\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t});\n\t}\n\t// Try to import the various data types we understand\n\tif(numFiles === 0) {\n\t\t$tw.utils.importDataTransfer(dataTransfer,this.wiki.generateNewTitle(\"Untitled\"),readFileCallback);\n\t}\n\t// Tell the browser that we handled the drop\n\tevent.preventDefault();\n\t// Stop the drop ripple up to any parent handlers\n\tevent.stopPropagation();\n};\n\nDropZoneWidget.prototype.handlePasteEvent  = function(event) {\n\tvar self = this,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify(tiddlerFieldsArray), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t};\n\t// Let the browser handle it if we're in a textarea or input box\n\tif([\"TEXTAREA\",\"INPUT\"].indexOf(event.target.tagName) == -1 && !event.target.isContentEditable) {\n\t\tvar self = this,\n\t\t\titems = event.clipboardData.items;\n\t\t// Enumerate the clipboard items\n\t\tfor(var t = 0; t<items.length; t++) {\n\t\t\tvar item = items[t];\n\t\t\tif(item.kind === \"file\") {\n\t\t\t\t// Import any files\n\t\t\t\tthis.wiki.readFile(item.getAsFile(),{\n\t\t\t\t\tcallback: readFileCallback,\n\t\t\t\t\tdeserializer: this.dropzoneDeserializer\n\t\t\t\t});\n\t\t\t} else if(item.kind === \"string\") {\n\t\t\t\t// Create tiddlers from string items\n\t\t\t\tvar type = item.type;\n\t\t\t\titem.getAsString(function(str) {\n\t\t\t\t\tvar tiddlerFields = {\n\t\t\t\t\t\ttitle: self.wiki.generateNewTitle(\"Untitled\"),\n\t\t\t\t\t\ttext: str,\n\t\t\t\t\t\ttype: type\n\t\t\t\t\t};\n\t\t\t\t\tif($tw.log.IMPORT) {\n\t\t\t\t\t\tconsole.log(\"Importing string '\" + str + \"', type: '\" + type + \"'\");\n\t\t\t\t\t}\n\t\t\t\t\tself.dispatchEvent({type: \"tm-import-tiddlers\", param: JSON.stringify([tiddlerFields]), autoOpenOnImport: self.autoOpenOnImport, importTitle: self.importTitle});\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\t// Tell the browser that we've handled the paste\n\t\tevent.stopPropagation();\n\t\tevent.preventDefault();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nDropZoneWidget.prototype.execute = function() {\n\tthis.dropzoneClass = this.getAttribute(\"class\");\n\tthis.dropzoneDeserializer = this.getAttribute(\"deserializer\");\n\tthis.dropzoneEnable = (this.getAttribute(\"enable\") || \"yes\") === \"yes\";\n\tthis.autoOpenOnImport = this.getAttribute(\"autoOpenOnImport\");\n\tthis.importTitle = this.getAttribute(\"importTitle\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nDropZoneWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.enable || changedAttributes.autoOpenOnImport || changedAttributes.importTitle || changedAttributes.deserializer || changedAttributes.class) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.dropzone = DropZoneWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-binary.js": {
            "title": "$:/core/modules/widgets/edit-binary.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-binary.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-binary widget; placeholder for editing binary tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar BINARY_WARNING_MESSAGE = \"$:/core/ui/BinaryWarning\";\nvar EXPORT_BUTTON_IMAGE = \"$:/core/images/export-button\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBinaryWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBinaryWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBinaryWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBinaryWidget.prototype.execute = function() {\n\t// Get our parameters\n\tvar editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tvar tiddler = this.wiki.getTiddler(editTitle);\n\tvar type = tiddler.fields.type;\n\tvar text = tiddler.fields.text;\n\t// Transclude the binary data tiddler warning message\n\tvar warn = {\n\t\ttype: \"element\",\n\t\ttag: \"p\",\n\t\tchildren: [{\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: BINARY_WARNING_MESSAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Create download link based on draft tiddler title\n\tvar link = {\n\t\ttype: \"element\",\n\t\ttag: \"a\",\n\t\tattributes: {\n\t\t\ttitle: {type: \"indirect\", textReference: \"!!draft.title\"},\n\t\t\tdownload: {type: \"indirect\", textReference: \"!!draft.title\"}\n\t\t},\n\t\tchildren: [{\n\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\ttiddler: {type: \"string\", value: EXPORT_BUTTON_IMAGE}\n\t\t\t}\n\t\t}]\n\t};\n\t// Set the link href to internal data URI (no external)\n\tif(text) {\n\t\tlink.attributes.href = {\n\t\t\ttype: \"string\", \n\t\t\tvalue: \"data:\" + type + \";base64,\" + text\n\t\t};\n\t}\n\t// Combine warning message and download link in a div\n\tvar element = {\n\t\ttype: \"element\",\n\t\ttag: \"div\",\n\t\tattributes: {\n\t\t\tclass: {type: \"string\", value: \"tc-binary-warning\"}\n\t\t},\n\t\tchildren: [warn, link]\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets([element]);\n};\n\n/*\nRefresh by refreshing our child widget\n*/\nEditBinaryWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"edit-binary\"] = EditBinaryWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-bitmap.js": {
            "title": "$:/core/modules/widgets/edit-bitmap.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-bitmap.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-bitmap widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n// Default image sizes\nvar DEFAULT_IMAGE_WIDTH = 600,\n\tDEFAULT_IMAGE_HEIGHT = 370,\n\tDEFAULT_IMAGE_TYPE = \"image/png\";\n\n// Configuration tiddlers\nvar LINE_WIDTH_TITLE = \"$:/config/BitmapEditor/LineWidth\",\n\tLINE_COLOUR_TITLE = \"$:/config/BitmapEditor/Colour\",\n\tLINE_OPACITY_TITLE = \"$:/config/BitmapEditor/Opacity\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditBitmapWidget = function(parseTreeNode,options) {\n\t// Initialise the editor operations if they've not been done already\n\tif(!this.editorOperations) {\n\t\tEditBitmapWidget.prototype.editorOperations = {};\n\t\t$tw.modules.applyMethods(\"bitmapeditoroperation\",this.editorOperations);\n\t}\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditBitmapWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditBitmapWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create the wrapper for the toolbar and render its content\n\tthis.toolbarNode = this.document.createElement(\"div\");\n\tthis.toolbarNode.className = \"tc-editor-toolbar\";\n\tparent.insertBefore(this.toolbarNode,nextSibling);\n\tthis.domNodes.push(this.toolbarNode);\n\t// Create the on-screen canvas\n\tthis.canvasDomNode = $tw.utils.domMaker(\"canvas\",{\n\t\tdocument: this.document,\n\t\t\"class\":\"tc-edit-bitmapeditor\",\n\t\teventListeners: [{\n\t\t\tname: \"touchstart\", handlerObject: this, handlerMethod: \"handleTouchStartEvent\"\n\t\t},{\n\t\t\tname: \"touchmove\", handlerObject: this, handlerMethod: \"handleTouchMoveEvent\"\n\t\t},{\n\t\t\tname: \"touchend\", handlerObject: this, handlerMethod: \"handleTouchEndEvent\"\n\t\t},{\n\t\t\tname: \"mousedown\", handlerObject: this, handlerMethod: \"handleMouseDownEvent\"\n\t\t},{\n\t\t\tname: \"mousemove\", handlerObject: this, handlerMethod: \"handleMouseMoveEvent\"\n\t\t},{\n\t\t\tname: \"mouseup\", handlerObject: this, handlerMethod: \"handleMouseUpEvent\"\n\t\t}]\n\t});\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Render toolbar child widgets\n\tthis.renderChildren(this.toolbarNode,null);\n\t// // Insert the elements into the DOM\n\tparent.insertBefore(this.canvasDomNode,nextSibling);\n\tthis.domNodes.push(this.canvasDomNode);\n\t// Load the image into the canvas\n\tif($tw.browser) {\n\t\tthis.loadCanvas();\n\t}\n\t// Add widget message listeners\n\tthis.addEventListeners([\n\t\t{type: \"tm-edit-bitmap-operation\", handler: \"handleEditBitmapOperationMessage\"}\n\t]);\n};\n\n/*\nHandle an edit bitmap operation message from the toolbar\n*/\nEditBitmapWidget.prototype.handleEditBitmapOperationMessage = function(event) {\n\t// Invoke the handler\n\tvar handler = this.editorOperations[event.param];\n\tif(handler) {\n\t\thandler.call(this,event);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditBitmapWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nJust refresh the toolbar\n*/\nEditBitmapWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nSet the bitmap size variables and refresh the toolbar\n*/\nEditBitmapWidget.prototype.refreshToolbar = function() {\n\t// Set the width and height variables\n\tthis.setVariable(\"tv-bitmap-editor-width\",this.canvasDomNode.width + \"px\");\n\tthis.setVariable(\"tv-bitmap-editor-height\",this.canvasDomNode.height + \"px\");\n\t// Refresh each of our child widgets\n\t$tw.utils.each(this.children,function(childWidget) {\n\t\tchildWidget.refreshSelf();\n\t});\n};\n\nEditBitmapWidget.prototype.loadCanvas = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle),\n\t\tcurrImage = new Image();\n\t// Set up event handlers for loading the image\n\tvar self = this;\n\tcurrImage.onload = function() {\n\t\t// Copy the image to the on-screen canvas\n\t\tself.initCanvas(self.canvasDomNode,currImage.width,currImage.height,currImage);\n\t\t// And also copy the current bitmap to the off-screen canvas\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,currImage.width,currImage.height,currImage);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\tcurrImage.onerror = function() {\n\t\t// Set the on-screen canvas size and clear it\n\t\tself.initCanvas(self.canvasDomNode,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the off-screen canvas size and clear it\n\t\tself.currCanvas = self.document.createElement(\"canvas\");\n\t\tself.initCanvas(self.currCanvas,DEFAULT_IMAGE_WIDTH,DEFAULT_IMAGE_HEIGHT);\n\t\t// Set the width and height input boxes\n\t\tself.refreshToolbar();\n\t};\n\t// Get the current bitmap into an image object\n\tif(tiddler && tiddler.fields.type && tiddler.fields.text) {\n\t\tcurrImage.src = \"data:\" + tiddler.fields.type + \";base64,\" + tiddler.fields.text;\t\t\n\t} else {\n\t\tcurrImage.width = DEFAULT_IMAGE_WIDTH;\n\t\tcurrImage.height = DEFAULT_IMAGE_HEIGHT;\n\t\tcurrImage.onerror();\n\t}\n};\n\nEditBitmapWidget.prototype.initCanvas = function(canvas,width,height,image) {\n\tcanvas.width = width;\n\tcanvas.height = height;\n\tvar ctx = canvas.getContext(\"2d\");\n\tif(image) {\n\t\tctx.drawImage(image,0,0);\n\t} else {\n\t\tctx.fillStyle = \"#fff\";\n\t\tctx.fillRect(0,0,canvas.width,canvas.height);\n\t}\n};\n\n/*\n** Change the size of the canvas, preserving the current image\n*/\nEditBitmapWidget.prototype.changeCanvasSize = function(newWidth,newHeight) {\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\");\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\n/*\n** Rotate the canvas left by 90 degrees\n*/\nEditBitmapWidget.prototype.rotateCanvasLeft = function() {\n\t// Get the current size of the image\n\tvar origWidth = this.currCanvas.width,\n\t\torigHeight = this.currCanvas.height;\n\t// Create and size a new canvas\n\tvar newCanvas = this.document.createElement(\"canvas\"),\n\t\tnewWidth = origHeight,\n\t\tnewHeight = origWidth;\n\tthis.initCanvas(newCanvas,newWidth,newHeight);\n\t// Copy the old image\n\tvar ctx = newCanvas.getContext(\"2d\");\n\tctx.save();\n\tctx.translate(newWidth / 2,newHeight / 2);\n\tctx.rotate(-Math.PI / 2);\n\tctx.drawImage(this.currCanvas,-origWidth / 2,-origHeight / 2);\n\tctx.restore();\n\t// Set the new canvas as the current one\n\tthis.currCanvas = newCanvas;\n\t// Set the size of the onscreen canvas\n\tthis.canvasDomNode.width = newWidth;\n\tthis.canvasDomNode.height = newHeight;\n\t// Paint the onscreen canvas with the offscreen canvas\n\tctx = this.canvasDomNode.getContext(\"2d\");\n\tctx.drawImage(this.currCanvas,0,0);\n};\n\nEditBitmapWidget.prototype.handleTouchStartEvent = function(event) {\n\tthis.brushDown = true;\n\tthis.strokeStart(event.touches[0].clientX,event.touches[0].clientY);\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.touches[0].clientX,event.touches[0].clientY);\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleTouchEndEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t}\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.strokeStart(event.clientX,event.clientY);\n\tthis.brushDown = true;\n\tevent.preventDefault();\n\tevent.stopPropagation();\n\treturn false;\n};\n\nEditBitmapWidget.prototype.handleMouseMoveEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.strokeMove(event.clientX,event.clientY);\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.handleMouseUpEvent = function(event) {\n\tif(this.brushDown) {\n\t\tthis.brushDown = false;\n\t\tthis.strokeEnd();\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn false;\n\t}\n\treturn true;\n};\n\nEditBitmapWidget.prototype.adjustCoordinates = function(x,y) {\n\tvar canvasRect = this.canvasDomNode.getBoundingClientRect(),\n\t\tscale = this.canvasDomNode.width/canvasRect.width;\n\treturn {x: (x - canvasRect.left) * scale, y: (y - canvasRect.top) * scale};\n};\n\nEditBitmapWidget.prototype.strokeStart = function(x,y) {\n\t// Start off a new stroke\n\tthis.stroke = [this.adjustCoordinates(x,y)];\n};\n\nEditBitmapWidget.prototype.strokeMove = function(x,y) {\n\tvar ctx = this.canvasDomNode.getContext(\"2d\"),\n\t\tt;\n\t// Add the new position to the end of the stroke\n\tthis.stroke.push(this.adjustCoordinates(x,y));\n\t// Redraw the previous image\n\tctx.drawImage(this.currCanvas,0,0);\n\t// Render the stroke\n\tctx.globalAlpha = parseFloat(this.wiki.getTiddlerText(LINE_OPACITY_TITLE,\"1.0\"));\n\tctx.strokeStyle = this.wiki.getTiddlerText(LINE_COLOUR_TITLE,\"#ff0\");\n\tctx.lineWidth = parseFloat(this.wiki.getTiddlerText(LINE_WIDTH_TITLE,\"3\"));\n\tctx.lineCap = \"round\";\n\tctx.lineJoin = \"round\";\n\tctx.beginPath();\n\tctx.moveTo(this.stroke[0].x,this.stroke[0].y);\n\tfor(t=1; t<this.stroke.length-1; t++) {\n\t\tvar s1 = this.stroke[t],\n\t\t\ts2 = this.stroke[t-1],\n\t\t\ttx = (s1.x + s2.x)/2,\n\t\t\tty = (s1.y + s2.y)/2;\n\t\tctx.quadraticCurveTo(s2.x,s2.y,tx,ty);\n\t}\n\tctx.stroke();\n};\n\nEditBitmapWidget.prototype.strokeEnd = function() {\n\t// Copy the bitmap to the off-screen canvas\n\tvar ctx = this.currCanvas.getContext(\"2d\");\n\tctx.drawImage(this.canvasDomNode,0,0);\n\t// Save the image into the tiddler\n\tthis.saveChanges();\n};\n\nEditBitmapWidget.prototype.saveChanges = function() {\n\tvar tiddler = this.wiki.getTiddler(this.editTitle) || new $tw.Tiddler({title: this.editTitle,type: DEFAULT_IMAGE_TYPE});\n\t// data URIs look like \"data:<type>;base64,<text>\"\n\tvar dataURL = this.canvasDomNode.toDataURL(tiddler.fields.type),\n\t\tposColon = dataURL.indexOf(\":\"),\n\t\tposSemiColon = dataURL.indexOf(\";\"),\n\t\tposComma = dataURL.indexOf(\",\"),\n\t\ttype = dataURL.substring(posColon+1,posSemiColon),\n\t\ttext = dataURL.substring(posComma+1);\n\tvar update = {type: type, text: text};\n\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getModificationFields(),tiddler,update,this.wiki.getCreationFields()));\n};\n\nexports[\"edit-bitmap\"] = EditBitmapWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-shortcut.js": {
            "title": "$:/core/modules/widgets/edit-shortcut.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-shortcut.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to display an editable keyboard shortcut\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditShortcutWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditShortcutWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditShortcutWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.inputNode = this.document.createElement(\"input\");\n\t// Assign classes\n\tif(this.shortcutClass) {\n\t\tthis.inputNode.className = this.shortcutClass;\t\t\n\t}\n\t// Assign other attributes\n\tif(this.shortcutStyle) {\n\t\tthis.inputNode.setAttribute(\"style\",this.shortcutStyle);\n\t}\n\tif(this.shortcutTooltip) {\n\t\tthis.inputNode.setAttribute(\"title\",this.shortcutTooltip);\n\t}\n\tif(this.shortcutPlaceholder) {\n\t\tthis.inputNode.setAttribute(\"placeholder\",this.shortcutPlaceholder);\n\t}\n\tif(this.shortcutAriaLabel) {\n\t\tthis.inputNode.setAttribute(\"aria-label\",this.shortcutAriaLabel);\n\t}\n\t// Assign the current shortcut\n\tthis.updateInputNode();\n\t// Add event handlers\n\t$tw.utils.addEventListeners(this.inputNode,[\n\t\t{name: \"keydown\", handlerObject: this, handlerMethod: \"handleKeydownEvent\"}\n\t]);\n\t// Link into the DOM\n\tparent.insertBefore(this.inputNode,nextSibling);\n\tthis.domNodes.push(this.inputNode);\n\t// Focus the input Node if focus === \"yes\" or focus === \"true\"\n\tif(this.shortcutFocus === \"yes\" || this.shortcutFocus === \"true\") {\n\t\tthis.focus();\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nEditShortcutWidget.prototype.execute = function() {\n\tthis.shortcutTiddler = this.getAttribute(\"tiddler\");\n\tthis.shortcutField = this.getAttribute(\"field\");\n\tthis.shortcutIndex = this.getAttribute(\"index\");\n\tthis.shortcutPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.shortcutDefault = this.getAttribute(\"default\",\"\");\n\tthis.shortcutClass = this.getAttribute(\"class\");\n\tthis.shortcutStyle = this.getAttribute(\"style\");\n\tthis.shortcutTooltip = this.getAttribute(\"tooltip\");\n\tthis.shortcutAriaLabel = this.getAttribute(\"aria-label\");\n\tthis.shortcutFocus = this.getAttribute(\"focus\");\n};\n\n/*\nUpdate the value of the input node\n*/\nEditShortcutWidget.prototype.updateInputNode = function() {\n\tif(this.shortcutField) {\n\t\tvar tiddler = this.wiki.getTiddler(this.shortcutTiddler);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,this.shortcutField)) {\n\t\t\tthis.inputNode.value = tiddler.getFieldString(this.shortcutField);\n\t\t} else {\n\t\t\tthis.inputNode.value = this.shortcutDefault;\n\t\t}\n\t} else if(this.shortcutIndex) {\n\t\tthis.inputNode.value = this.wiki.extractTiddlerDataItem(this.shortcutTiddler,this.shortcutIndex,this.shortcutDefault);\n\t} else {\n\t\tthis.inputNode.value = this.wiki.getTiddlerText(this.shortcutTiddler,this.shortcutDefault);\n\t}\n};\n\n/*\nHandle a dom \"keydown\" event\n*/\nEditShortcutWidget.prototype.handleKeydownEvent = function(event) {\n\t// Ignore shift, ctrl, meta, alt\n\tif(event.keyCode && $tw.keyboardManager.getModifierKeys().indexOf(event.keyCode) === -1) {\n\t\t// Get the shortcut text representation\n\t\tvar value = $tw.keyboardManager.getPrintableShortcuts([{\n\t\t\tctrlKey: event.ctrlKey,\n\t\t\tshiftKey: event.shiftKey,\n\t\t\taltKey: event.altKey,\n\t\t\tmetaKey: event.metaKey,\n\t\t\tkeyCode: event.keyCode\n\t\t}]);\n\t\tif(value.length > 0) {\n\t\t\tthis.wiki.setText(this.shortcutTiddler,this.shortcutField,this.shortcutIndex,value[0]);\n\t\t}\n\t\t// Ignore the keydown if it was already handled\n\t\tevent.preventDefault();\n\t\tevent.stopPropagation();\n\t\treturn true;\t\t\n\t} else {\n\t\treturn false;\n\t}\n};\n\n/*\nfocus the input node\n*/\nEditShortcutWidget.prototype.focus = function() {\n\tif(this.inputNode.focus && this.inputNode.select) {\n\t\tthis.inputNode.focus();\n\t\tthis.inputNode.select();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget needed re-rendering\n*/\nEditShortcutWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.placeholder || changedAttributes[\"default\"] || changedAttributes[\"class\"] || changedAttributes.style || changedAttributes.tooltip || changedAttributes[\"aria-label\"] || changedAttributes.focus) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedTiddlers[this.shortcutTiddler]) {\n\t\tthis.updateInputNode();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports[\"edit-shortcut\"] = EditShortcutWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit-text.js": {
            "title": "$:/core/modules/widgets/edit-text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit-text.js\ntype: application/javascript\nmodule-type: widget\n\nEdit-text widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar editTextWidgetFactory = require(\"$:/core/modules/editor/factory.js\").editTextWidgetFactory,\n\tFramedEngine = require(\"$:/core/modules/editor/engines/framed.js\").FramedEngine,\n\tSimpleEngine = require(\"$:/core/modules/editor/engines/simple.js\").SimpleEngine;\n\nexports[\"edit-text\"] = editTextWidgetFactory(FramedEngine,SimpleEngine);\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/edit.js": {
            "title": "$:/core/modules/widgets/edit.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/edit.js\ntype: application/javascript\nmodule-type: widget\n\nEdit widget is a meta-widget chooses the appropriate actual editting widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EditWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEditWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEditWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n// Mappings from content type to editor type are stored in tiddlers with this prefix\nvar EDITOR_MAPPING_PREFIX = \"$:/config/EditorTypeMappings/\";\n\n/*\nCompute the internal state of the widget\n*/\nEditWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.editTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.editField = this.getAttribute(\"field\",\"text\");\n\tthis.editIndex = this.getAttribute(\"index\");\n\tthis.editClass = this.getAttribute(\"class\");\n\tthis.editPlaceholder = this.getAttribute(\"placeholder\");\n\tthis.editTabIndex = this.getAttribute(\"tabindex\");\n\tthis.editFocus = this.getAttribute(\"focus\",\"\");\n\tthis.editCancelPopups = this.getAttribute(\"cancelPopups\",\"\");\n\tthis.editInputActions = this.getAttribute(\"inputActions\");\n\tthis.editRefreshTitle = this.getAttribute(\"refreshTitle\");\n\tthis.editAutoComplete = this.getAttribute(\"autocomplete\");\n\t// Choose the appropriate edit widget\n\tthis.editorType = this.getEditorType();\n\t// Make the child widgets\n\tthis.makeChildWidgets([{\n\t\ttype: \"edit-\" + this.editorType,\n\t\tattributes: this.parseTreeNode.attributes,\n\t\tchildren: this.parseTreeNode.children\n\t}]);\n};\n\nEditWidget.prototype.getEditorType = function() {\n\t// Get the content type of the thing we're editing\n\tvar type;\n\tif(this.editField === \"text\") {\n\t\tvar tiddler = this.wiki.getTiddler(this.editTitle);\n\t\tif(tiddler) {\n\t\t\ttype = tiddler.fields.type;\n\t\t}\n\t}\n\ttype = type || \"text/vnd.tiddlywiki\";\n\tvar editorType = this.wiki.getTiddlerText(EDITOR_MAPPING_PREFIX + type);\n\tif(!editorType) {\n\t\tvar typeInfo = $tw.config.contentTypeInfo[type];\n\t\tif(typeInfo && typeInfo.encoding === \"base64\") {\n\t\t\teditorType = \"binary\";\n\t\t} else {\n\t\t\teditorType = \"text\";\n\t\t}\n\t}\n\treturn editorType;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEditWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh if an attribute has changed, or the type associated with the target tiddler has changed\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.tabindex || changedAttributes.cancelPopups || changedAttributes.inputActions || changedAttributes.refreshTitle || changedAttributes.autocomplete || (changedTiddlers[this.editTitle] && this.getEditorType() !== this.editorType)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.edit = EditWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/element.js": {
            "title": "$:/core/modules/widgets/element.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/element.js\ntype: application/javascript\nmodule-type: widget\n\nElement widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ElementWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nElementWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nElementWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\t// Neuter blacklisted elements\n\tthis.tag = this.parseTreeNode.tag;\n\tif($tw.config.htmlUnsafeElements.indexOf(this.tag) !== -1) {\n\t\tthis.tag = \"safe-\" + this.tag;\n\t}\n\t// Adjust headings by the current base level\n\tvar headingLevel = [\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\"].indexOf(this.tag);\n\tif(headingLevel !== -1) {\n\t\tvar baseLevel = parseInt(this.getVariable(\"tv-adjust-heading-level\",\"0\"),10) || 0;\n\t\theadingLevel = Math.min(Math.max(headingLevel + 1 + baseLevel,1),6);\n\t\tthis.tag = \"h\" + headingLevel;\n\t}\n\t// Select the namespace for the tag\n\tvar tagNamespaces = {\n\t\t\tsvg: \"http://www.w3.org/2000/svg\",\n\t\t\tmath: \"http://www.w3.org/1998/Math/MathML\",\n\t\t\tbody: \"http://www.w3.org/1999/xhtml\"\n\t\t};\n\tthis.namespace = tagNamespaces[this.tag];\n\tif(this.namespace) {\n\t\tthis.setVariable(\"namespace\",this.namespace);\n\t} else {\n\t\tthis.namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"});\n\t}\n\t// Invoke the th-rendering-element hook\n\tvar parseTreeNodes = $tw.hooks.invokeHook(\"th-rendering-element\",null,this);\n\tthis.isReplaced = !!parseTreeNodes;\n\tif(parseTreeNodes) {\n\t\t// Use the parse tree nodes provided by the hook\n\t\tthis.makeChildWidgets(parseTreeNodes);\n\t\tthis.renderChildren(this.parentDomNode,null);\n\t\treturn;\n\t}\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n\t// Create the DOM node and render children\n\tvar domNode = this.document.createElementNS(this.namespace,this.tag);\n\tthis.assignAttributes(domNode,{excludeEventAttributes: true});\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nElementWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\thasChangedAttributes = $tw.utils.count(changedAttributes) > 0;\n\tif(hasChangedAttributes) {\n\t\tif(!this.isReplaced) {\n\t\t\t// Update our attributes\n\t\t\tthis.assignAttributes(this.domNodes[0],{excludeEventAttributes: true});\t\t\t\n\t\t} else {\n\t\t\t// If we were replaced then completely refresh ourselves\n\t\t\treturn this.refreshSelf();\n\t\t}\n\t}\n\treturn this.refreshChildren(changedTiddlers) || hasChangedAttributes;\n};\n\nexports.element = ElementWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/encrypt.js": {
            "title": "$:/core/modules/widgets/encrypt.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/encrypt.js\ntype: application/javascript\nmodule-type: widget\n\nEncrypt widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EncryptWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEncryptWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEncryptWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.encryptedText);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEncryptWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.filter = this.getAttribute(\"filter\",\"[!is[system]]\");\n\t// Encrypt the filtered tiddlers\n\tvar tiddlers = this.wiki.filterTiddlers(this.filter),\n\t\tjson = {},\n\t\tself = this;\n\t$tw.utils.each(tiddlers,function(title) {\n\t\tvar tiddler = self.wiki.getTiddler(title),\n\t\t\tjsonTiddler = {};\n\t\tfor(var f in tiddler.fields) {\n\t\t\tjsonTiddler[f] = tiddler.getFieldString(f);\n\t\t}\n\t\tjson[title] = jsonTiddler;\n\t});\n\tthis.encryptedText = $tw.utils.htmlEncode($tw.crypto.encrypt(JSON.stringify(json)));\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEncryptWidget.prototype.refresh = function(changedTiddlers) {\n\t// We don't need to worry about refreshing because the encrypt widget isn't for interactive use\n\treturn false;\n};\n\nexports.encrypt = EncryptWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/entity.js": {
            "title": "$:/core/modules/widgets/entity.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/entity.js\ntype: application/javascript\nmodule-type: widget\n\nHTML entity widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EntityWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEntityWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEntityWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar entityString = this.getAttribute(\"entity\",this.parseTreeNode.entity || \"\"),\n\t\ttextNode = this.document.createTextNode($tw.utils.entityDecode(entityString));\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEntityWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEntityWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.entity) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.entity = EntityWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/eventcatcher.js": {
            "title": "$:/core/modules/widgets/eventcatcher.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/eventcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nEvent handler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar EventWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nEventWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nEventWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.elementTag && $tw.config.htmlUnsafeElements.indexOf(this.elementTag) === -1) {\n\t\ttag = this.elementTag;\n\t}\t\n\tvar domNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\t// Assign classes\n\tthis.assignDomNodeClasses();\t\n\t// Add our event handler\n\t$tw.utils.each(this.types,function(type) {\n\t\tdomNode.addEventListener(type,function(event) {\n\t\t\tvar selector = self.getAttribute(\"selector\"),\n\t\t\t\tactions = self.getAttribute(\"actions-\"+type),\n\t\t\t\tselectedNode = event.target,\n\t\t\t\tselectedNodeRect,\n\t\t\t\tcatcherNodeRect,\n\t\t\t\tvariables = {};\n\t\t\tif(selector) {\n\t\t\t\t// Search ancestors for a node that matches the selector\n\t\t\t\twhile(!selectedNode.matches(selector) && selectedNode !== domNode) {\n\t\t\t\t\tselectedNode = selectedNode.parentNode;\n\t\t\t\t}\n\t\t\t\t// If we found one, copy the attributes as variables, otherwise exit\n\t\t\t\tif(selectedNode.matches(selector)) {\n\t\t\t\t\t$tw.utils.each(selectedNode.attributes,function(attribute) {\n\t\t\t\t\t\tvariables[\"dom-\" + attribute.name] = attribute.value.toString();\n\t\t\t\t\t});\n\t\t\t\t\t//Add a variable with a popup coordinate string for the selected node\n\t\t\t\t\tvariables[\"tv-popup-coords\"] = \"(\" + selectedNode.offsetLeft + \",\" + selectedNode.offsetTop +\",\" + selectedNode.offsetWidth + \",\" + selectedNode.offsetHeight + \")\";\n\t\t\t\t\t\n\t\t\t\t\t//Add variables for offset of selected node\n\t\t\t\t\tvariables[\"tv-selectednode-posx\"] = selectedNode.offsetLeft.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-posy\"] = selectedNode.offsetTop.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-width\"] = selectedNode.offsetWidth.toString();\n\t\t\t\t\tvariables[\"tv-selectednode-height\"] = selectedNode.offsetHeight.toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to selected node\n\t\t\t\t\tselectedNodeRect = selectedNode.getBoundingClientRect();\t\t\t\t\n\t\t\t\t\tvariables[\"event-fromselected-posx\"] = (event.clientX - selectedNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromselected-posy\"] = (event.clientY - selectedNodeRect.top).toString();\n\n\t\t\t\t\t//Add variables for event X and Y position relative to event catcher node\n\t\t\t\t\tcatcherNodeRect = self.domNode.getBoundingClientRect();\n\t\t\t\t\tvariables[\"event-fromcatcher-posx\"] = (event.clientX - catcherNodeRect.left).toString();\n\t\t\t\t\tvariables[\"event-fromcatcher-posy\"] = (event.clientY - catcherNodeRect.top).toString();\n\t\t\t\t} else {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Execute our actions with the variables\n\t\t\tif(actions) {\n\t\t\t\t// Add a variable for the modifier key\n\t\t\t\tvariables.modifier = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\t\t// Add a variable for the mouse button\n\t\t\t\tif(\"button\" in event) {\n\t\t\t\t\tif(event.button === 0) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"left\";\n\t\t\t\t\t} else if(event.button === 1) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"middle\";\n\t\t\t\t\t} else if(event.button === 2) {\n\t\t\t\t\t\tvariables[\"event-mousebutton\"] = \"right\";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvariables[\"event-type\"] = event.type.toString();\n\t\t\t\tif(typeof event.detail === \"object\" && !!event.detail) {\n\t\t\t\t\t$tw.utils.each(event.detail,function(detailValue,detail) {\n\t\t\t\t\t\tvariables[\"event-detail-\" + detail] = detailValue.toString();\n\t\t\t\t\t});\n\t\t\t\t} else if(!!event.detail) {\n\t\t\t\t\tvariables[\"event-detail\"] = event.detail.toString();\n\t\t\t\t}\n\t\t\t\tself.invokeActionString(actions,self,event,variables);\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\treturn false;\n\t\t},false);\n\t});\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nEventWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes that require a refresh on change\n\tthis.types = this.getAttribute(\"events\",\"\").split(\" \");\n\tthis.elementTag = this.getAttribute(\"tag\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\nEventWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-eventcatcher\");\n\tthis.domNode.className = classes.join(\" \");\t\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nEventWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"events\"] || changedAttributes[\"tag\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else if(changedAttributes[\"class\"]) {\n\t\tthis.assignDomNodeClasses();\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.eventcatcher = EventWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fieldmangler.js": {
            "title": "$:/core/modules/widgets/fieldmangler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fieldmangler.js\ntype: application/javascript\nmodule-type: widget\n\nField mangler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldManglerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-remove-field\", handler: \"handleRemoveFieldEvent\"},\n\t\t{type: \"tm-add-field\", handler: \"handleAddFieldEvent\"},\n\t\t{type: \"tm-remove-tag\", handler: \"handleRemoveTagEvent\"},\n\t\t{type: \"tm-add-tag\", handler: \"handleAddTagEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldManglerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldManglerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldManglerWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.mangleTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldManglerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nFieldManglerWidget.prototype.handleRemoveFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tdeletion = {};\n\tdeletion[event.param] = undefined;\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,deletion));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddFieldEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\taddition = this.wiki.getModificationFields(),\n\t\thadInvalidFieldName = false,\n\t\taddField = function(name,value) {\n\t\t\tvar trimmedName = name.toLowerCase().trim();\n\t\t\tif(!$tw.utils.isValidFieldName(trimmedName)) {\n\t\t\t\tif(!hadInvalidFieldName) {\n\t\t\t\t\talert($tw.language.getString(\n\t\t\t\t\t\t\"InvalidFieldName\",\n\t\t\t\t\t\t{variables:\n\t\t\t\t\t\t\t{fieldName: trimmedName}\n\t\t\t\t\t\t}\n\t\t\t\t\t));\n\t\t\t\t\thadInvalidFieldName = true;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tif(!value && tiddler) {\n\t\t\t\t\tvalue = tiddler.fields[trimmedName];\n\t\t\t\t}\n\t\t\t\taddition[trimmedName] = value || \"\";\n\t\t\t}\n\t\t\treturn;\n\t\t};\n\taddition.title = this.mangleTitle;\n\tif(typeof event.param === \"string\") {\n\t\taddField(event.param,\"\");\n\t}\n\tif(typeof event.paramObject === \"object\") {\n\t\tfor(var name in event.paramObject) {\n\t\t\taddField(name,event.paramObject[name]);\n\t\t}\n\t}\n\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,addition));\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleRemoveTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && tiddler.fields.tags) {\n\t\tvar p = tiddler.fields.tags.indexOf(event.param);\n\t\tif(p !== -1) {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\tmodification.tags.splice(p,1);\n\t\t\tif(modification.tags.length === 0) {\n\t\t\t\tmodification.tags = undefined;\n\t\t\t}\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\n\t\t}\n\t}\n\treturn true;\n};\n\nFieldManglerWidget.prototype.handleAddTagEvent = function(event) {\n\tvar tiddler = this.wiki.getTiddler(this.mangleTitle),\n\t\tmodification = this.wiki.getModificationFields();\n\tif(tiddler && typeof event.param === \"string\") {\n\t\tvar tag = event.param.trim();\n\t\tif(tag !== \"\") {\n\t\t\tmodification.tags = (tiddler.fields.tags || []).slice(0);\n\t\t\t$tw.utils.pushTop(modification.tags,tag);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,modification));\t\t\t\n\t\t}\n\t} else if(typeof event.param === \"string\" && event.param.trim() !== \"\" && this.mangleTitle.trim() !== \"\") {\n\t\tvar tag = [];\n\t\ttag.push(event.param.trim());\n\t\tthis.wiki.addTiddler(new $tw.Tiddler({title: this.mangleTitle, tags: tag},modification));\n\t}\n\treturn true;\n};\n\nexports.fieldmangler = FieldManglerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/fields.js": {
            "title": "$:/core/modules/widgets/fields.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/fields.js\ntype: application/javascript\nmodule-type: widget\n\nFields widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar FieldsWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nFieldsWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nFieldsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar textNode = this.document.createTextNode(this.text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nFieldsWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.template = this.getAttribute(\"template\");\n\tthis.sort = this.getAttribute(\"sort\",\"yes\") === \"yes\";\n\tthis.sortReverse = this.getAttribute(\"sortReverse\",\"no\") === \"yes\";\n\tthis.exclude = this.getAttribute(\"exclude\");\n\tthis.include = this.getAttribute(\"include\",null);\n\tthis.stripTitlePrefix = this.getAttribute(\"stripTitlePrefix\",\"no\") === \"yes\";\n\t// Get the value to display\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\n\t// Get the inclusion and exclusion list\n\tvar excludeArr = (this.exclude) ? this.exclude.split(\" \") : [\"text\"];\n\t// Include takes precedence\n\tvar includeArr = (this.include) ? this.include.split(\" \") : null;\n\n\t// Compose the template\n\tvar text = [];\n\tif(this.template && tiddler) {\n\t\tvar fields = [];\n\t\tif (includeArr) { // Include takes precedence\n\t\t\tfor(var i=0; i<includeArr.length; i++) {\n\t\t\t\tif(tiddler.fields[includeArr[i]]) {\n\t\t\t\t\tfields.push(includeArr[i]);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tfor(var fieldName in tiddler.fields) {\n\t\t\t\tif(excludeArr.indexOf(fieldName) === -1) {\n\t\t\t\t\tfields.push(fieldName);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.sort) fields.sort();\n\t\tif (this.sortReverse) fields.reverse();\n\t\tfor(var f=0, fmax=fields.length; f<fmax; f++) {\n\t\t\tfieldName = fields[f];\n\t\t\tvar row = this.template,\n\t\t\t\tvalue = tiddler.getFieldString(fieldName);\n\t\t\tif(this.stripTitlePrefix && fieldName === \"title\") {\n\t\t\t\tvar reStrip = /^\\{[^\\}]+\\}(.+)/mg,\n\t\t\t\t\treMatch = reStrip.exec(value);\n\t\t\t\tif(reMatch) {\n\t\t\t\t\tvalue = reMatch[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\trow = $tw.utils.replaceString(row,\"$name$\",fieldName);\n\t\t\trow = $tw.utils.replaceString(row,\"$value$\",value);\n\t\t\trow = $tw.utils.replaceString(row,\"$encoded_value$\",$tw.utils.htmlEncode(value));\n\t\t\ttext.push(row);\n\t\t}\n\t}\n\tthis.text = text.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nFieldsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif( changedAttributes.tiddler || changedAttributes.template || changedAttributes.exclude ||\n\t\tchangedAttributes.include || changedAttributes.sort || changedAttributes.sortReverse ||\n\t\tchangedTiddlers[this.tiddlerTitle] || changedAttributes.stripTitlePrefix) {\n\t\t\tthis.refreshSelf();\n\t\t\treturn true;\n\t} else {\n\t\treturn false;\n\t}\n};\n\nexports.fields = FieldsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/image.js": {
            "title": "$:/core/modules/widgets/image.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/image.js\ntype: application/javascript\nmodule-type: widget\n\nThe image widget displays an image referenced with an external URI or with a local tiddler title.\n\n```\n<$image src=\"TiddlerTitle\" width=\"320\" height=\"400\" class=\"classnames\">\n```\n\nThe image source can be the title of an existing tiddler or the URL of an external image.\n\nExternal images always generate an HTML `<img>` tag.\n\nTiddlers that have a _canonical_uri field generate an HTML `<img>` tag with the src attribute containing the URI.\n\nTiddlers that contain image data generate an HTML `<img>` tag with the src attribute containing a base64 representation of the image.\n\nTiddlers that contain wikitext could be rendered to a DIV of the usual size of a tiddler, and then transformed to the size requested.\n\nThe width and height attributes are interpreted as a number of pixels, and do not need to include the \"px\" suffix.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImageWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImageWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImageWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create element\n\t// Determine what type of image it is\n\tvar tag = \"img\", src = \"\",\n\t\ttiddler = this.wiki.getTiddler(this.imageSource);\n\tif(!tiddler) {\n\t\t// The source isn't the title of a tiddler, so we'll assume it's a URL\n\t\tsrc = this.getVariable(\"tv-get-export-image-link\",{params: [{name: \"src\",value: this.imageSource}],defaultValue: this.imageSource});\n\t} else {\n\t\t// Check if it is an image tiddler\n\t\tif(this.wiki.isImageTiddler(this.imageSource)) {\n\t\t\tvar type = tiddler.fields.type,\n\t\t\t\ttext = tiddler.fields.text,\n\t\t\t\t_canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t// If the tiddler has body text then it doesn't need to be lazily loaded\n\t\t\tif(text) {\n\t\t\t\t// Render the appropriate element for the image type\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = \"data:application/pdf;base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = \"data:image/svg+xml,\" + encodeURIComponent(text);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = \"data:\" + type + \";base64,\" + text;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t} else if(_canonical_uri) {\n\t\t\t\tswitch(type) {\n\t\t\t\t\tcase \"application/pdf\":\n\t\t\t\t\t\ttag = \"embed\";\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"image/svg+xml\":\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tsrc = _canonical_uri;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\t\n\t\t\t} else {\n\t\t\t\t// Just trigger loading of the tiddler\n\t\t\t\tthis.wiki.getTiddlerText(this.imageSource);\n\t\t\t}\n\t\t}\n\t}\n\t// Create the element and assign the attributes\n\tvar domNode = this.document.createElement(tag);\n\tdomNode.setAttribute(\"src\",src);\n\tif(this.imageClass) {\n\t\tdomNode.setAttribute(\"class\",this.imageClass);\t\t\n\t}\n\tif(this.imageWidth) {\n\t\tdomNode.setAttribute(\"width\",this.imageWidth);\n\t}\n\tif(this.imageHeight) {\n\t\tdomNode.setAttribute(\"height\",this.imageHeight);\n\t}\n\tif(this.imageTooltip) {\n\t\tdomNode.setAttribute(\"title\",this.imageTooltip);\t\t\n\t}\n\tif(this.imageAlt) {\n\t\tdomNode.setAttribute(\"alt\",this.imageAlt);\t\t\n\t}\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.domNodes.push(domNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImageWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.imageSource = this.getAttribute(\"source\");\n\tthis.imageWidth = this.getAttribute(\"width\");\n\tthis.imageHeight = this.getAttribute(\"height\");\n\tthis.imageClass = this.getAttribute(\"class\");\n\tthis.imageTooltip = this.getAttribute(\"tooltip\");\n\tthis.imageAlt = this.getAttribute(\"alt\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImageWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.source || changedAttributes.width || changedAttributes.height || changedAttributes[\"class\"] || changedAttributes.tooltip || changedTiddlers[this.imageSource]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\t\n\t}\n};\n\nexports.image = ImageWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/importvariables.js": {
            "title": "$:/core/modules/widgets/importvariables.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/importvariables.js\ntype: application/javascript\nmodule-type: widget\n\nImport variable definitions from other tiddlers\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ImportVariablesWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nImportVariablesWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nImportVariablesWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nImportVariablesWidget.prototype.execute = function(tiddlerList) {\n\tvar widgetPointer = this;\n\t// Got to flush all the accumulated variables\n\tthis.variables = new this.variablesConstructor();\n\t// Get our parameters\n\tthis.filter = this.getAttribute(\"filter\");\n\t// Compute the filter\n\tthis.tiddlerList = tiddlerList || this.wiki.filterTiddlers(this.filter,this);\n\t// Accumulate the <$set> widgets from each tiddler\n\t$tw.utils.each(this.tiddlerList,function(title) {\n\t\tvar parser = widgetPointer.wiki.parseTiddler(title);\n\t\tif(parser) {\n\t\t\tvar parseTreeNode = parser.tree[0];\n\t\t\twhile(parseTreeNode && parseTreeNode.type === \"set\") {\n\t\t\t\tvar node = {\n\t\t\t\t\ttype: \"set\",\n\t\t\t\t\tattributes: parseTreeNode.attributes,\n\t\t\t\t\tparams: parseTreeNode.params,\n\t\t\t\t\tisMacroDefinition: parseTreeNode.isMacroDefinition\n\t\t\t\t};\n\t\t\t\tif (parseTreeNode.isMacroDefinition) {\n\t\t\t\t\t// Macro definitions can be folded into\n\t\t\t\t\t// current widget instead of adding\n\t\t\t\t\t// another link to the chain.\n\t\t\t\t\tvar widget = widgetPointer.makeChildWidget(node);\n\t\t\t\t\twidget.computeAttributes();\n\t\t\t\t\twidget.execute();\n\t\t\t\t\t// We SHALLOW copy over all variables\n\t\t\t\t\t// in widget. We can't use\n\t\t\t\t\t// $tw.utils.assign, because that copies\n\t\t\t\t\t// up the prototype chain, which we\n\t\t\t\t\t// don't want.\n\t\t\t\t\t$tw.utils.each(Object.keys(widget.variables), function(key) {\n\t\t\t\t\t\twidgetPointer.variables[key] = widget.variables[key];\n\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\twidgetPointer.children = [widgetPointer.makeChildWidget(node)];\n\t\t\t\t\t// No more regenerating children for\n\t\t\t\t\t// this widget. If it needs to refresh,\n\t\t\t\t\t// it'll do so along with the the whole\n\t\t\t\t\t// importvariable tree.\n\t\t\t\t\tif (widgetPointer != this) {\n\t\t\t\t\t\twidgetPointer.makeChildWidgets = function(){};\n\t\t\t\t\t}\n\t\t\t\t\twidgetPointer = widgetPointer.children[0];\n\t\t\t\t}\n\t\t\t\tparseTreeNode = parseTreeNode.children && parseTreeNode.children[0];\n\t\t\t}\n\t\t} \n\t});\n\n\tif (widgetPointer != this) {\n\t\twidgetPointer.parseTreeNode.children = this.parseTreeNode.children;\n\t} else {\n\t\twidgetPointer.makeChildWidgets();\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nImportVariablesWidget.prototype.refresh = function(changedTiddlers) {\n\t// Recompute our attributes and the filter list\n\tvar changedAttributes = this.computeAttributes(),\n\t\ttiddlerList = this.wiki.filterTiddlers(this.getAttribute(\"filter\"),this);\n\t// Refresh if the filter has changed, or the list of tiddlers has changed, or any of the tiddlers in the list has changed\n\tfunction haveListedTiddlersChanged() {\n\t\tvar changed = false;\n\t\ttiddlerList.forEach(function(title) {\n\t\t\tif(changedTiddlers[title]) {\n\t\t\t\tchanged = true;\n\t\t\t}\n\t\t});\n\t\treturn changed;\n\t}\n\tif(changedAttributes.filter || !$tw.utils.isArrayEqual(this.tiddlerList,tiddlerList) || haveListedTiddlersChanged()) {\n\t\t// Compute the filter\n\t\tthis.removeChildDomNodes();\n\t\tthis.execute(tiddlerList);\n\t\tthis.renderChildren(this.parentDomNode,this.findNextSiblingDomNode());\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.importvariables = ImportVariablesWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/keyboard.js": {
            "title": "$:/core/modules/widgets/keyboard.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/keyboard.js\ntype: application/javascript\nmodule-type: widget\n\nKeyboard shortcut widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar KeyboardWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nKeyboardWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nKeyboardWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.tag && $tw.config.htmlUnsafeElements.indexOf(this.tag) === -1) {\n\t\ttag = this.tag;\n\t}\n\t// Create element\n\tvar domNode = this.document.createElement(tag);\n\t// Assign classes\n\tvar classes = (this[\"class\"] || \"\").split(\" \");\n\tclasses.push(\"tc-keyboard\");\n\tdomNode.className = classes.join(\" \");\n\t// Add a keyboard event handler\n\tdomNode.addEventListener(\"keydown\",function (event) {\n\t\tif($tw.keyboardManager.checkKeyDescriptors(event,self.keyInfoArray)) {\n\t\t\tvar handled = self.invokeActions(self,event);\n\t\t\tif(self.actions) {\n\t\t\t\tself.invokeActionString(self.actions,self,event);\n\t\t\t}\n\t\t\tself.dispatchMessage(event);\n\t\t\tif(handled || self.actions || self.message) {\n\t\t\t\tevent.preventDefault();\n\t\t\t\tevent.stopPropagation();\n\t\t\t}\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t},false);\n\t// Insert element\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nKeyboardWidget.prototype.dispatchMessage = function(event) {\n\tthis.dispatchEvent({type: this.message, param: this.param, tiddlerTitle: this.getVariable(\"currentTiddler\")});\n};\n\n/*\nCompute the internal state of the widget\n*/\nKeyboardWidget.prototype.execute = function() {\n\tvar self = this;\n\t// Get attributes\n\tthis.actions = this.getAttribute(\"actions\",\"\");\n\tthis.message = this.getAttribute(\"message\",\"\");\n\tthis.param = this.getAttribute(\"param\",\"\");\n\tthis.key = this.getAttribute(\"key\",\"\");\n\tthis.tag = this.getAttribute(\"tag\",\"\");\n\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\tthis[\"class\"] = this.getAttribute(\"class\",\"\");\n\tif(this.key.substr(0,2) === \"((\" && this.key.substr(-2,2) === \"))\") {\n\t\tthis.shortcutTiddlers = [];\n\t\tvar name = this.key.substring(2,this.key.length -2);\n\t\t$tw.utils.each($tw.keyboardManager.lookupNames,function(platformDescriptor) {\n\t\t\tself.shortcutTiddlers.push(\"$:/config/\" + platformDescriptor + \"/\" + name);\n\t\t});\n\t}\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nKeyboardWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.message || changedAttributes.param || changedAttributes.key || changedAttributes[\"class\"] || changedAttributes.tag) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\t// Update the keyInfoArray if one of its shortcut-config-tiddlers has changed\n\tif(this.shortcutTiddlers && $tw.utils.hopArray(changedTiddlers,this.shortcutTiddlers)) {\n\t\tthis.keyInfoArray = $tw.keyboardManager.parseKeyDescriptors(this.key);\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.keyboard = KeyboardWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/link.js": {
            "title": "$:/core/modules/widgets/link.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/link.js\ntype: application/javascript\nmodule-type: widget\n\nLink widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the value of the tv-wikilinks configuration macro\n\tvar wikiLinksMacro = this.getVariable(\"tv-wikilinks\"),\n\t\tuseWikiLinks = wikiLinksMacro ? (wikiLinksMacro.trim() !== \"no\") : true,\n\t\tmissingLinksEnabled = !(this.hideMissingLinks && this.isMissing && !this.isShadow);\n\t// Render the link if required\n\tif(useWikiLinks && missingLinksEnabled) {\n\t\tthis.renderLink(parent,nextSibling);\n\t} else {\n\t\t// Just insert the link text\n\t\tvar domNode = this.document.createElement(\"span\");\n\t\tparent.insertBefore(domNode,nextSibling);\n\t\tthis.renderChildren(domNode,null);\n\t\tthis.domNodes.push(domNode);\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nLinkWidget.prototype.renderLink = function(parent,nextSibling) {\n\tvar self = this;\n\t// Sanitise the specified tag\n\tvar tag = this.linkTag;\n\tif($tw.config.htmlUnsafeElements.indexOf(tag) !== -1) {\n\t\ttag = \"a\";\n\t}\n\t// Create our element\n\tvar namespace = this.getVariable(\"namespace\",{defaultValue: \"http://www.w3.org/1999/xhtml\"}),\n\t\tdomNode = this.document.createElementNS(namespace,tag);\n\t// Assign classes\n\tvar classes = [];\n\tif(this.overrideClasses === undefined) {\n\t\tclasses.push(\"tc-tiddlylink\");\n\t\tif(this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-shadow\");\n\t\t}\n\t\tif(this.isMissing && !this.isShadow) {\n\t\t\tclasses.push(\"tc-tiddlylink-missing\");\n\t\t} else {\n\t\t\tif(!this.isMissing) {\n\t\t\t\tclasses.push(\"tc-tiddlylink-resolves\");\n\t\t\t}\n\t\t}\n\t\tif(this.linkClasses) {\n\t\t\tclasses.push(this.linkClasses);\t\t\t\n\t\t}\n\t} else if(this.overrideClasses !== \"\") {\n\t\tclasses.push(this.overrideClasses)\n\t}\n\tif(classes.length > 0) {\n\t\tdomNode.setAttribute(\"class\",classes.join(\" \"));\n\t}\n\t// Set an href\n\tvar wikilinkTransformFilter = this.getVariable(\"tv-filter-export-link\"),\n\t\twikiLinkText;\n\tif(wikilinkTransformFilter) {\n\t\t// Use the filter to construct the href\n\t\twikiLinkText = this.wiki.filterTiddlers(wikilinkTransformFilter,this,function(iterator) {\n\t\t\titerator(self.wiki.getTiddler(self.to),self.to)\n\t\t})[0];\n\t} else {\n\t\t// Expand the tv-wikilink-template variable to construct the href\n\t\tvar wikiLinkTemplateMacro = this.getVariable(\"tv-wikilink-template\"),\n\t\t\twikiLinkTemplate = wikiLinkTemplateMacro ? wikiLinkTemplateMacro.trim() : \"#$uri_encoded$\";\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkTemplate,\"$uri_encoded$\",encodeURIComponent(this.to));\n\t\twikiLinkText = $tw.utils.replaceString(wikiLinkText,\"$uri_doubleencoded$\",encodeURIComponent(encodeURIComponent(this.to)));\n\t}\n\t// Override with the value of tv-get-export-link if defined\n\twikiLinkText = this.getVariable(\"tv-get-export-link\",{params: [{name: \"to\",value: this.to}],defaultValue: wikiLinkText});\n\tif(tag === \"a\") {\n\t\tvar namespaceHref = (namespace === \"http://www.w3.org/2000/svg\") ? \"http://www.w3.org/1999/xlink\" : undefined;\n\t\tdomNode.setAttributeNS(namespaceHref,\"href\",wikiLinkText);\n\t}\n\t// Set the tabindex\n\tif(this.tabIndex) {\n\t\tdomNode.setAttribute(\"tabindex\",this.tabIndex);\n\t}\n\t// Set the tooltip\n\t// HACK: Performance issues with re-parsing the tooltip prevent us defaulting the tooltip to \"<$transclude field='tooltip'><$transclude field='title'/></$transclude>\"\n\tvar tooltipWikiText = this.tooltip || this.getVariable(\"tv-wikilink-tooltip\");\n\tif(tooltipWikiText) {\n\t\tvar tooltipText = this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",tooltipWikiText,{\n\t\t\t\tparseAsInline: true,\n\t\t\t\tvariables: {\n\t\t\t\t\tcurrentTiddler: this.to\n\t\t\t\t},\n\t\t\t\tparentWidget: this\n\t\t\t});\n\t\tdomNode.setAttribute(\"title\",tooltipText);\n\t}\n\tif(this[\"aria-label\"]) {\n\t\tdomNode.setAttribute(\"aria-label\",this[\"aria-label\"]);\n\t}\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"click\", handlerObject: this, handlerMethod: \"handleClickEvent\"},\n\t]);\n\t// Make the link draggable if required\n\tif(this.draggable === \"yes\") {\n\t\t$tw.utils.makeDraggable({\n\t\t\tdomNode: domNode,\n\t\t\tdragTiddlerFn: function() {return self.to;},\n\t\t\twidget: this\n\t\t});\n\t}\n\t// Insert the link into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nLinkWidget.prototype.handleClickEvent = function(event) {\n\t// Send the click on its way as a navigate event\n\tvar bounds = this.domNodes[0].getBoundingClientRect();\n\tthis.dispatchEvent({\n\t\ttype: \"tm-navigate\",\n\t\tnavigateTo: this.to,\n\t\tnavigateFromTitle: this.getVariable(\"storyTiddler\"),\n\t\tnavigateFromNode: this,\n\t\tnavigateFromClientRect: { top: bounds.top, left: bounds.left, width: bounds.width, right: bounds.right, bottom: bounds.bottom, height: bounds.height\n\t\t},\n\t\tnavigateSuppressNavigation: event.metaKey || event.ctrlKey || (event.button === 1),\n\t\tmetaKey: event.metaKey,\n\t\tctrlKey: event.ctrlKey,\n\t\taltKey: event.altKey,\n\t\tshiftKey: event.shiftKey,\n\t\tevent: event\n\t});\n\tif(this.domNodes[0].hasAttribute(\"href\")) {\n\t\tevent.preventDefault();\n\t}\n\tevent.stopPropagation();\n\treturn false;\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkWidget.prototype.execute = function() {\n\t// Pick up our attributes\n\tthis.to = this.getAttribute(\"to\",this.getVariable(\"currentTiddler\"));\n\tthis.tooltip = this.getAttribute(\"tooltip\");\n\tthis[\"aria-label\"] = this.getAttribute(\"aria-label\");\n\tthis.linkClasses = this.getAttribute(\"class\");\n\tthis.overrideClasses = this.getAttribute(\"overrideClass\");\n\tthis.tabIndex = this.getAttribute(\"tabindex\");\n\tthis.draggable = this.getAttribute(\"draggable\",\"yes\");\n\tthis.linkTag = this.getAttribute(\"tag\",\"a\");\n\t// Determine the link characteristics\n\tthis.isMissing = !this.wiki.tiddlerExists(this.to);\n\tthis.isShadow = this.wiki.isShadowTiddler(this.to);\n\tthis.hideMissingLinks = (this.getVariable(\"tv-show-missing-links\") || \"yes\") === \"no\";\n\t// Make the child widgets\n\tvar templateTree;\n\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\ttemplateTree = this.parseTreeNode.children;\n\t} else {\n\t\t// Default template is a link to the title\n\t\ttemplateTree = [{type: \"text\", text: this.to}];\n\t}\n\tthis.makeChildWidgets(templateTree);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedTiddlers[this.to] || changedAttributes[\"aria-label\"] || changedAttributes.tooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.link = LinkWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/linkcatcher.js": {
            "title": "$:/core/modules/widgets/linkcatcher.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/linkcatcher.js\ntype: application/javascript\nmodule-type: widget\n\nLinkcatcher widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar LinkCatcherWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nLinkCatcherWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nLinkCatcherWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nLinkCatcherWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.catchTo = this.getAttribute(\"to\");\n\tthis.catchMessage = this.getAttribute(\"message\");\n\tthis.catchSet = this.getAttribute(\"set\");\n\tthis.catchSetTo = this.getAttribute(\"setTo\");\n\tthis.catchActions = this.getAttribute(\"actions\");\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n\t// When executing actions we avoid trapping navigate events, so that we don't trigger ourselves recursively\n\tthis.executingActions = false;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nLinkCatcherWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.to || changedAttributes.message || changedAttributes.set || changedAttributes.setTo) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\n/*\nHandle a tm-navigate event\n*/\nLinkCatcherWidget.prototype.handleNavigateEvent = function(event) {\n\tif(!this.executingActions) {\n\t\t// Execute the actions\n\t\tif(this.catchTo) {\n\t\t\tthis.wiki.setTextReference(this.catchTo,event.navigateTo,this.getVariable(\"currentTiddler\"));\n\t\t}\n\t\tif(this.catchMessage && this.parentWidget) {\n\t\t\tthis.parentWidget.dispatchEvent({\n\t\t\t\ttype: this.catchMessage,\n\t\t\t\tparam: event.navigateTo,\n\t\t\t\tnavigateTo: event.navigateTo\n\t\t\t});\n\t\t}\n\t\tif(this.catchSet) {\n\t\t\tvar tiddler = this.wiki.getTiddler(this.catchSet);\n\t\t\tthis.wiki.addTiddler(new $tw.Tiddler(tiddler,{title: this.catchSet, text: this.catchSetTo}));\n\t\t}\n\t\tif(this.catchActions) {\n\t\t\tthis.executingActions = true;\n\t\t\tvar modifierKey = $tw.keyboardManager.getEventModifierKeyDescriptor(event);\n\t\t\tthis.invokeActionString(this.catchActions,this,event,{navigateTo: event.navigateTo, modifier: modifierKey});\n\t\t\tthis.executingActions = false;\n\t\t}\n\t} else {\n\t\t// This is a navigate event generated by the actions of this linkcatcher, so we don't trap it again, but just pass it to the parent\n\t\tthis.parentWidget.dispatchEvent({\n\t\t\ttype: \"tm-navigate\",\n\t\t\tparam: event.navigateTo,\n\t\t\tnavigateTo: event.navigateTo\n\t\t});\n\t}\n\treturn false;\n};\n\nexports.linkcatcher = LinkCatcherWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/list.js": {
            "title": "$:/core/modules/widgets/list.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/list.js\ntype: application/javascript\nmodule-type: widget\n\nList and list item widgets\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\n/*\nThe list widget creates list element sub-widgets that reach back into the list widget for their configuration\n*/\n\nvar ListWidget = function(parseTreeNode,options) {\n\t// Initialise the storyviews if they've not been done already\n\tif(!this.storyViews) {\n\t\tListWidget.prototype.storyViews = {};\n\t\t$tw.modules.applyMethods(\"storyview\",this.storyViews);\n\t}\n\t// Main initialisation inherited from widget.js\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\t// Construct the storyview\n\tvar StoryView = this.storyViews[this.storyViewName];\n\tif(this.storyViewName && !StoryView) {\n\t\tStoryView = this.storyViews[\"classic\"];\n\t}\n\tif(StoryView && !this.document.isTiddlyWikiFakeDom) {\n\t\tthis.storyview = new StoryView(this);\n\t} else {\n\t\tthis.storyview = null;\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nListWidget.prototype.execute = function() {\n\t// Get our attributes\n\tthis.template = this.getAttribute(\"template\");\n\tthis.editTemplate = this.getAttribute(\"editTemplate\");\n\tthis.variableName = this.getAttribute(\"variable\",\"currentTiddler\");\n\tthis.storyViewName = this.getAttribute(\"storyview\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\t// Compose the list elements\n\tthis.list = this.getTiddlerList();\n\tvar members = [],\n\t\tself = this;\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\tmembers = this.getEmptyMessage();\n\t} else {\n\t\t$tw.utils.each(this.list,function(title,index) {\n\t\t\tmembers.push(self.makeItemTemplate(title));\n\t\t});\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(members);\n\t// Clear the last history\n\tthis.history = [];\n};\n\nListWidget.prototype.getTiddlerList = function() {\n\tvar defaultFilter = \"[!is[system]sort[title]]\";\n\treturn this.wiki.filterTiddlers(this.getAttribute(\"filter\",defaultFilter),this);\n};\n\nListWidget.prototype.getEmptyMessage = function() {\n\tvar parser,\n\t\temptyMessage = this.getAttribute(\"emptyMessage\",\"\");\n\t// this.wiki.parseText() calls \n\t// new Parser(..), which should only be done, if needed, because it's heavy!\n\tif (emptyMessage === \"\") {\n\t\treturn [];\n\t}\n\tparser = this.wiki.parseText(\"text/vnd.tiddlywiki\",emptyMessage,{parseAsInline: true});\n\tif(parser) {\n\t\treturn parser.tree;\n\t} else {\n\t\treturn [];\n\t}\n};\n\n/*\nCompose the template for a list item\n*/\nListWidget.prototype.makeItemTemplate = function(title) {\n\t// Check if the tiddler is a draft\n\tvar tiddler = this.wiki.getTiddler(title),\n\t\tisDraft = tiddler && tiddler.hasField(\"draft.of\"),\n\t\ttemplate = this.template,\n\t\ttemplateTree;\n\tif(isDraft && this.editTemplate) {\n\t\ttemplate = this.editTemplate;\n\t}\n\t// Compose the transclusion of the template\n\tif(template) {\n\t\ttemplateTree = [{type: \"transclude\", attributes: {tiddler: {type: \"string\", value: template}}}];\n\t} else {\n\t\tif(this.parseTreeNode.children && this.parseTreeNode.children.length > 0) {\n\t\t\ttemplateTree = this.parseTreeNode.children;\n\t\t} else {\n\t\t\t// Default template is a link to the title\n\t\t\ttemplateTree = [{type: \"element\", tag: this.parseTreeNode.isBlock ? \"div\" : \"span\", children: [{type: \"link\", attributes: {to: {type: \"string\", value: title}}, children: [\n\t\t\t\t\t{type: \"text\", text: title}\n\t\t\t]}]}];\n\t\t}\n\t}\n\t// Return the list item\n\treturn {type: \"listitem\", itemTitle: title, variableName: this.variableName, children: templateTree};\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tresult;\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshStart) {\n\t\tthis.storyview.refreshStart(changedTiddlers,changedAttributes);\n\t}\n\t// Completely refresh if any of our attributes have changed\n\tif(changedAttributes.filter || changedAttributes.template || changedAttributes.editTemplate || changedAttributes.emptyMessage || changedAttributes.storyview || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\tresult = true;\n\t} else {\n\t\t// Handle any changes to the list\n\t\tresult = this.handleListChanges(changedTiddlers);\n\t\t// Handle any changes to the history stack\n\t\tif(this.historyTitle && changedTiddlers[this.historyTitle]) {\n\t\t\tthis.handleHistoryChanges();\n\t\t}\n\t}\n\t// Call the storyview\n\tif(this.storyview && this.storyview.refreshEnd) {\n\t\tthis.storyview.refreshEnd(changedTiddlers,changedAttributes);\n\t}\n\treturn result;\n};\n\n/*\nHandle any changes to the history list\n*/\nListWidget.prototype.handleHistoryChanges = function() {\n\t// Get the history data\n\tvar newHistory = this.wiki.getTiddlerDataCached(this.historyTitle,[]);\n\t// Ignore any entries of the history that match the previous history\n\tvar entry = 0;\n\twhile(entry < newHistory.length && entry < this.history.length && newHistory[entry].title === this.history[entry].title) {\n\t\tentry++;\n\t}\n\t// Navigate forwards to each of the new tiddlers\n\twhile(entry < newHistory.length) {\n\t\tif(this.storyview && this.storyview.navigateTo) {\n\t\t\tthis.storyview.navigateTo(newHistory[entry]);\n\t\t}\n\t\tentry++;\n\t}\n\t// Update the history\n\tthis.history = newHistory;\n};\n\n/*\nProcess any changes to the list\n*/\nListWidget.prototype.handleListChanges = function(changedTiddlers) {\n\t// Get the new list\n\tvar prevList = this.list;\n\tthis.list = this.getTiddlerList();\n\t// Check for an empty list\n\tif(this.list.length === 0) {\n\t\t// Check if it was empty before\n\t\tif(prevList.length === 0) {\n\t\t\t// If so, just refresh the empty message\n\t\t\treturn this.refreshChildren(changedTiddlers);\n\t\t} else {\n\t\t\t// Replace the previous content with the empty message\n\t\t\tfor(t=this.children.length-1; t>=0; t--) {\n\t\t\t\tthis.removeListItem(t);\n\t\t\t}\n\t\t\tvar nextSibling = this.findNextSiblingDomNode();\n\t\t\tthis.makeChildWidgets(this.getEmptyMessage());\n\t\t\tthis.renderChildren(this.parentDomNode,nextSibling);\n\t\t\treturn true;\n\t\t}\n\t} else {\n\t\t// If the list was empty then we need to remove the empty message\n\t\tif(prevList.length === 0) {\n\t\t\tthis.removeChildDomNodes();\n\t\t\tthis.children = [];\n\t\t}\n\t\t// Cycle through the list, inserting and removing list items as needed\n\t\tvar hasRefreshed = false;\n\t\tfor(var t=0; t<this.list.length; t++) {\n\t\t\tvar index = this.findListItem(t,this.list[t]);\n\t\t\tif(index === undefined) {\n\t\t\t\t// The list item must be inserted\n\t\t\t\tthis.insertListItem(t,this.list[t]);\n\t\t\t\thasRefreshed = true;\n\t\t\t} else {\n\t\t\t\t// There are intervening list items that must be removed\n\t\t\t\tfor(var n=index-1; n>=t; n--) {\n\t\t\t\t\tthis.removeListItem(n);\n\t\t\t\t\thasRefreshed = true;\n\t\t\t\t}\n\t\t\t\t// Refresh the item we're reusing\n\t\t\t\tvar refreshed = this.children[t].refresh(changedTiddlers);\n\t\t\t\thasRefreshed = hasRefreshed || refreshed;\n\t\t\t}\n\t\t}\n\t\t// Remove any left over items\n\t\tfor(t=this.children.length-1; t>=this.list.length; t--) {\n\t\t\tthis.removeListItem(t);\n\t\t\thasRefreshed = true;\n\t\t}\n\t\treturn hasRefreshed;\n\t}\n};\n\n/*\nFind the list item with a given title, starting from a specified position\n*/\nListWidget.prototype.findListItem = function(startIndex,title) {\n\twhile(startIndex < this.children.length) {\n\t\tif(this.children[startIndex].parseTreeNode.itemTitle === title) {\n\t\t\treturn startIndex;\n\t\t}\n\t\tstartIndex++;\n\t}\n\treturn undefined;\n};\n\n/*\nInsert a new list item at the specified index\n*/\nListWidget.prototype.insertListItem = function(index,title) {\n\t// Create, insert and render the new child widgets\n\tvar widget = this.makeChildWidget(this.makeItemTemplate(title));\n\twidget.parentDomNode = this.parentDomNode; // Hack to enable findNextSiblingDomNode() to work\n\tthis.children.splice(index,0,widget);\n\tvar nextSibling = widget.findNextSiblingDomNode();\n\twidget.render(this.parentDomNode,nextSibling);\n\t// Animate the insertion if required\n\tif(this.storyview && this.storyview.insert) {\n\t\tthis.storyview.insert(widget);\n\t}\n\treturn true;\n};\n\n/*\nRemove the specified list item\n*/\nListWidget.prototype.removeListItem = function(index) {\n\tvar widget = this.children[index];\n\t// Animate the removal if required\n\tif(this.storyview && this.storyview.remove) {\n\t\tthis.storyview.remove(widget);\n\t} else {\n\t\twidget.removeChildDomNodes();\n\t}\n\t// Remove the child widget\n\tthis.children.splice(index,1);\n};\n\nexports.list = ListWidget;\n\nvar ListItemWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nListItemWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nListItemWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nListItemWidget.prototype.execute = function() {\n\t// Set the current list item title\n\tthis.setVariable(this.parseTreeNode.variableName,this.parseTreeNode.itemTitle);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nListItemWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.listitem = ListItemWidget;\n\n})();",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/log.js": {
            "title": "$:/core/modules/widgets/log.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/log.js\ntype: application/javascript\nmodule-type: widget-subclass\n\nWidget to log debug messages\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nexports.baseClass = \"action-log\";\n\nexports.name = \"log\";\n\nexports.constructor = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n}\n\nexports.prototype = {};\n\nexports.prototype.render = function(event) {\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).render.call(this,event);\t\n\tObject.getPrototypeOf(Object.getPrototypeOf(this)).log.call(this);\n}\n\n})();",
            "type": "application/javascript",
            "module-type": "widget-subclass"
        },
        "$:/core/modules/widgets/macrocall.js": {
            "title": "$:/core/modules/widgets/macrocall.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/macrocall.js\ntype: application/javascript\nmodule-type: widget\n\nMacrocall widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar MacroCallWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nMacroCallWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nMacroCallWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nMacroCallWidget.prototype.execute = function() {\n\t// Get the parse type if specified\n\tthis.parseType = this.getAttribute(\"$type\",\"text/vnd.tiddlywiki\");\n\tthis.renderOutput = this.getAttribute(\"$output\",\"text/html\");\n\t// Merge together the parameters specified in the parse tree with the specified attributes\n\tvar params = this.parseTreeNode.params ? this.parseTreeNode.params.slice(0) : [];\n\t$tw.utils.each(this.attributes,function(attribute,name) {\n\t\tif(name.charAt(0) !== \"$\") {\n\t\t\tparams.push({name: name, value: attribute});\t\t\t\n\t\t}\n\t});\n\t// Get the macro value\n\tvar macroName = this.parseTreeNode.name || this.getAttribute(\"$name\"),\n\t\tvariableInfo = this.getVariableInfo(macroName,{params: params}),\n\t\ttext = variableInfo.text,\n\t\tparseTreeNodes;\n\t// Are we rendering to HTML?\n\tif(this.renderOutput === \"text/html\") {\n\t\t// If so we'll return the parsed macro\n\t\t// Check if we've already cached parsing this macro\n\t\tvar mode = this.parseTreeNode.isBlock ? \"blockParser\" : \"inlineParser\",\n\t\t\tparser;\n\t\tif(variableInfo.srcVariable && variableInfo.srcVariable[mode]) {\n\t\t\tparser = variableInfo.srcVariable[mode];\n\t\t} else {\n\t\t\tparser = this.wiki.parseText(this.parseType,text,\n\t\t\t\t\t\t\t\t{parseAsInline: !this.parseTreeNode.isBlock});\n\t\t\tif(variableInfo.isCacheable && variableInfo.srcVariable) {\n\t\t\t\tvariableInfo.srcVariable[mode] = parser;\n\t\t\t}\n\t\t}\n\t\tvar parseTreeNodes = parser ? parser.tree : [];\n\t\t// Wrap the parse tree in a vars widget assigning the parameters to variables named \"__paramname__\"\n\t\tvar attributes = {};\n\t\t$tw.utils.each(variableInfo.params,function(param) {\n\t\t\tvar name = \"__\" + param.name + \"__\";\n\t\t\tattributes[name] = {\n\t\t\t\tname: name,\n\t\t\t\ttype: \"string\",\n\t\t\t\tvalue: param.value\n\t\t\t};\n\t\t});\n\t\tparseTreeNodes = [{\n\t\t\ttype: \"vars\",\n\t\t\tattributes: attributes,\n\t\t\tchildren: parseTreeNodes\n\t\t}];\n\t} else if(this.renderOutput === \"text/raw\") {\n\t\tparseTreeNodes = [{type: \"text\", text: text}];\n\t} else {\n\t\t// Otherwise, we'll render the text\n\t\tvar plainText = this.wiki.renderText(\"text/plain\",this.parseType,text,{parentWidget: this});\n\t\tparseTreeNodes = [{type: \"text\", text: plainText}];\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nMacroCallWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\t// Rerender ourselves\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.macrocall = MacroCallWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/navigator.js": {
            "title": "$:/core/modules/widgets/navigator.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/navigator.js\ntype: application/javascript\nmodule-type: widget\n\nNavigator widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar IMPORT_TITLE = \"$:/Import\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar NavigatorWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.addEventListeners([\n\t\t{type: \"tm-navigate\", handler: \"handleNavigateEvent\"},\n\t\t{type: \"tm-edit-tiddler\", handler: \"handleEditTiddlerEvent\"},\n\t\t{type: \"tm-delete-tiddler\", handler: \"handleDeleteTiddlerEvent\"},\n\t\t{type: \"tm-save-tiddler\", handler: \"handleSaveTiddlerEvent\"},\n\t\t{type: \"tm-cancel-tiddler\", handler: \"handleCancelTiddlerEvent\"},\n\t\t{type: \"tm-close-tiddler\", handler: \"handleCloseTiddlerEvent\"},\n\t\t{type: \"tm-close-all-tiddlers\", handler: \"handleCloseAllTiddlersEvent\"},\n\t\t{type: \"tm-close-other-tiddlers\", handler: \"handleCloseOtherTiddlersEvent\"},\n\t\t{type: \"tm-new-tiddler\", handler: \"handleNewTiddlerEvent\"},\n\t\t{type: \"tm-import-tiddlers\", handler: \"handleImportTiddlersEvent\"},\n\t\t{type: \"tm-perform-import\", handler: \"handlePerformImportEvent\"},\n\t\t{type: \"tm-fold-tiddler\", handler: \"handleFoldTiddlerEvent\"},\n\t\t{type: \"tm-fold-other-tiddlers\", handler: \"handleFoldOtherTiddlersEvent\"},\n\t\t{type: \"tm-fold-all-tiddlers\", handler: \"handleFoldAllTiddlersEvent\"},\n\t\t{type: \"tm-unfold-all-tiddlers\", handler: \"handleUnfoldAllTiddlersEvent\"},\n\t\t{type: \"tm-rename-tiddler\", handler: \"handleRenameTiddlerEvent\"}\n\t]);\n};\n\n/*\nInherit from the base widget class\n*/\nNavigatorWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nNavigatorWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nNavigatorWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.storyTitle = this.getAttribute(\"story\");\n\tthis.historyTitle = this.getAttribute(\"history\");\n\tthis.setVariable(\"tv-story-list\",this.storyTitle);\n\tthis.setVariable(\"tv-history-list\",this.historyTitle);\n\tthis.story = new $tw.Story({\n\t\twiki: this.wiki,\n\t\tstoryTitle: this.storyTitle,\n\t\thistoryTitle: this.historyTitle\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nNavigatorWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.story || changedAttributes.history) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nNavigatorWidget.prototype.getStoryList = function() {\n\treturn this.storyTitle ? this.wiki.getTiddlerList(this.storyTitle) : null;\n};\n\nNavigatorWidget.prototype.saveStoryList = function(storyList) {\n\tif(this.storyTitle) {\n\t\tvar storyTiddler = this.wiki.getTiddler(this.storyTitle);\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(\n\t\t\t{title: this.storyTitle},\n\t\t\tstoryTiddler,\n\t\t\t{list: storyList}\n\t\t));\t\t\n\t}\n};\n\nNavigatorWidget.prototype.removeTitleFromStory = function(storyList,title) {\n\tif(storyList) {\n\t\tvar p = storyList.indexOf(title);\n\t\twhile(p !== -1) {\n\t\t\tstoryList.splice(p,1);\n\t\t\tp = storyList.indexOf(title);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.replaceFirstTitleInStory = function(storyList,oldTitle,newTitle) {\n\tif(storyList) {\n\t\tvar pos = storyList.indexOf(oldTitle);\n\t\tif(pos !== -1) {\n\t\t\tstoryList[pos] = newTitle;\n\t\t\tdo {\n\t\t\t\tpos = storyList.indexOf(oldTitle,pos + 1);\n\t\t\t\tif(pos !== -1) {\n\t\t\t\t\tstoryList.splice(pos,1);\n\t\t\t\t}\n\t\t\t} while(pos !== -1);\n\t\t} else {\n\t\t\tstoryList.splice(0,0,newTitle);\n\t\t}\t\t\n\t}\n};\n\nNavigatorWidget.prototype.addToStory = function(title,fromTitle) {\n\tif(this.storyTitle) {\n\t\tthis.story.addToStory(title,fromTitle,{\n\t\t\topenLinkFromInsideRiver: this.getAttribute(\"openLinkFromInsideRiver\",\"top\"),\n\t\t\topenLinkFromOutsideRiver: this.getAttribute(\"openLinkFromOutsideRiver\",\"top\")\n\t\t});\n\t}\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\n*/\nNavigatorWidget.prototype.addToHistory = function(title,fromPageRect) {\n\tthis.story.addToHistory(title,fromPageRect,this.historyTitle);\n};\n\n/*\nHandle a tm-navigate event\n*/\nNavigatorWidget.prototype.handleNavigateEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-navigating\",event);\n\tif(event.navigateTo) {\n\t\tthis.addToStory(event.navigateTo,event.navigateFromTitle);\n\t\tif(!event.navigateSuppressNavigation) {\n\t\t\tthis.addToHistory(event.navigateTo,event.navigateFromClientRect);\n\t\t}\n\t}\n\treturn false;\n};\n\n// Close a specified tiddler\nNavigatorWidget.prototype.handleCloseTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\tstoryList = this.getStoryList();\n\t// Look for tiddlers with this title to close\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\treturn false;\n};\n\n// Close all tiddlers\nNavigatorWidget.prototype.handleCloseAllTiddlersEvent = function(event) {\n\tthis.saveStoryList([]);\n\treturn false;\n};\n\n// Close other tiddlers\nNavigatorWidget.prototype.handleCloseOtherTiddlersEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle;\n\tthis.saveStoryList([title]);\n\treturn false;\n};\n\n// Place a tiddler in edit mode\nNavigatorWidget.prototype.handleEditTiddlerEvent = function(event) {\n\tvar editTiddler = $tw.hooks.invokeHook(\"th-editing-tiddler\",event);\n\tif(!editTiddler) {\n\t\treturn false;\n\t}\n\tvar self = this;\n\tfunction isUnmodifiedShadow(title) {\n\t\treturn self.wiki.isShadowTiddler(title) && !self.wiki.tiddlerExists(title);\n\t}\n\tfunction confirmEditShadow(title) {\n\t\treturn confirm($tw.language.getString(\n\t\t\t\"ConfirmEditShadowTiddler\",\n\t\t\t{variables:\n\t\t\t\t{title: title}\n\t\t\t}\n\t\t));\n\t}\n\tvar title = event.param || event.tiddlerTitle;\n\tif(isUnmodifiedShadow(title) && !confirmEditShadow(title)) {\n\t\treturn false;\n\t}\n\t// Replace the specified tiddler with a draft in edit mode\n\tvar draftTiddler = this.makeDraftTiddler(title);\n\t// Update the story and history if required\n\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\tvar draftTitle = draftTiddler.fields.title,\n\t\t\tstoryList = this.getStoryList();\n\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\tthis.saveStoryList(storyList);\n\t\treturn false;\n\t}\n};\n\n// Delete a tiddler\nNavigatorWidget.prototype.handleDeleteTiddlerEvent = function(event) {\n\t// Get the tiddler we're deleting\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList(),\n\t\toriginalTitle = tiddler ? tiddler.fields[\"draft.of\"] : \"\",\n\t\toriginalTiddler = originalTitle ? this.wiki.getTiddler(originalTitle) : undefined,\n\t\tconfirmationTitle;\n\tif(!tiddler) {\n\t\treturn false;\n\t}\n\t// Check if the tiddler we're deleting is in draft mode\n\tif(originalTitle) {\n\t\t// If so, we'll prompt for confirmation referencing the original tiddler\n\t\tconfirmationTitle = originalTitle;\n\t} else {\n\t\t// If not a draft, then prompt for confirmation referencing the specified tiddler\n\t\tconfirmationTitle = title;\n\t}\n\t// Seek confirmation\n\tif((this.wiki.getTiddler(originalTitle) || (tiddler.fields.text || \"\") !== \"\") && !confirm($tw.language.getString(\n\t\t\t\t\"ConfirmDeleteTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: confirmationTitle}\n\t\t\t\t}\n\t\t\t))) {\n\t\treturn false;\n\t}\n\t// Delete the original tiddler\n\tif(originalTitle) {\n\t\tif(originalTiddler) {\n\t\t\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",originalTiddler);\n\t\t}\n\t\tthis.wiki.deleteTiddler(originalTitle);\n\t\tthis.removeTitleFromStory(storyList,originalTitle);\n\t}\n\t// Invoke the hook function and delete this tiddler\n\t$tw.hooks.invokeHook(\"th-deleting-tiddler\",tiddler);\n\tthis.wiki.deleteTiddler(title);\n\t// Remove the closed tiddler from the story\n\tthis.removeTitleFromStory(storyList,title);\n\tthis.saveStoryList(storyList);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\treturn false;\n};\n\n/*\nCreate/reuse the draft tiddler for a given title\n*/\nNavigatorWidget.prototype.makeDraftTiddler = function(targetTitle) {\n\t// See if there is already a draft tiddler for this tiddler\n\tvar draftTitle = this.wiki.findDraft(targetTitle);\n\tif(draftTitle) {\n\t\treturn this.wiki.getTiddler(draftTitle);\n\t}\n\t// Get the current value of the tiddler we're editing\n\tvar tiddler = this.wiki.getTiddler(targetTitle);\n\t// Save the initial value of the draft tiddler\n\tdraftTitle = this.generateDraftTitle(targetTitle);\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\t\ttext: \"\",\n\t\t\t},\n\t\t\ttiddler,\n\t\t\t{\n\t\t\t\ttitle: draftTitle,\n\t\t\t\t\"draft.title\": targetTitle,\n\t\t\t\t\"draft.of\": targetTitle\n\t\t\t},\n\t\t\tthis.wiki.getModificationFields()\n\t\t);\n\tthis.wiki.addTiddler(draftTiddler);\n\treturn draftTiddler;\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nNavigatorWidget.prototype.generateDraftTitle = function(title) {\n\treturn this.wiki.generateDraftTitle(title);\n};\n\n// Take a tiddler out of edit mode, saving the changes\nNavigatorWidget.prototype.handleSaveTiddlerEvent = function(event) {\n\tvar title = event.param || event.tiddlerTitle,\n\t\ttiddler = this.wiki.getTiddler(title),\n\t\tstoryList = this.getStoryList();\n\t// Replace the original tiddler with the draft\n\tif(tiddler) {\n\t\tvar draftTitle = (tiddler.fields[\"draft.title\"] || \"\").trim(),\n\t\t\tdraftOf = (tiddler.fields[\"draft.of\"] || \"\").trim();\n\t\tif(draftTitle) {\n\t\t\tvar isRename = draftOf !== draftTitle,\n\t\t\t\tisConfirmed = true;\n\t\t\tif(isRename && this.wiki.tiddlerExists(draftTitle)) {\n\t\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\t\"ConfirmOverwriteTiddler\",\n\t\t\t\t\t{variables:\n\t\t\t\t\t\t{title: draftTitle}\n\t\t\t\t\t}\n\t\t\t\t));\n\t\t\t}\n\t\t\tif(isConfirmed) {\n\t\t\t\t// Create the new tiddler and pass it through the th-saving-tiddler hook\n\t\t\t\tvar newTiddler = new $tw.Tiddler(this.wiki.getCreationFields(),tiddler,{\n\t\t\t\t\ttitle: draftTitle,\n\t\t\t\t\t\"draft.title\": undefined,\n\t\t\t\t\t\"draft.of\": undefined\n\t\t\t\t},this.wiki.getModificationFields());\n\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-saving-tiddler\",newTiddler,tiddler);\n\t\t\t\tthis.wiki.addTiddler(newTiddler);\n\t\t\t\t// If enabled, relink references to renamed tiddler\n\t\t\t\tvar shouldRelink = this.getAttribute(\"relinkOnRename\",\"no\").toLowerCase().trim() === \"yes\";\n\t\t\t\tif(isRename && shouldRelink && this.wiki.tiddlerExists(draftOf)) {\n\t\t\t\t\tthis.wiki.relinkTiddler(draftOf,draftTitle);\n\t\t\t\t}\n\t\t\t\t// Remove the draft tiddler\n\t\t\t\tthis.wiki.deleteTiddler(title);\n\t\t\t\t// Remove the original tiddler if we're renaming it\n\t\t\t\tif(isRename) {\n\t\t\t\t\tthis.wiki.deleteTiddler(draftOf);\n\t\t\t\t}\n\t\t\t\t// #2381 always remove new title & old\n\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\tthis.removeTitleFromStory(storyList,draftOf);\n\t\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\t\t// Replace the draft in the story with the original\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,title,draftTitle);\n\t\t\t\t\tthis.addToHistory(draftTitle,event.navigateFromClientRect);\n\t\t\t\t\tif(draftTitle !== this.storyTitle) {\n\t\t\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// Trigger an autosave\n\t\t\t\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Take a tiddler out of edit mode without saving the changes\nNavigatorWidget.prototype.handleCancelTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-cancelling-tiddler\", event);\n\t// Flip the specified tiddler from draft back to the original\n\tvar draftTitle = event.param || event.tiddlerTitle,\n\t\tdraftTiddler = this.wiki.getTiddler(draftTitle),\n\t\toriginalTitle = draftTiddler && draftTiddler.fields[\"draft.of\"];\n\tif(draftTiddler && originalTitle) {\n\t\t// Ask for confirmation if the tiddler text has changed\n\t\tvar isConfirmed = true,\n\t\t\toriginalTiddler = this.wiki.getTiddler(originalTitle),\n\t\t\tstoryList = this.getStoryList();\n\t\tif(this.wiki.isDraftModified(draftTitle)) {\n\t\t\tisConfirmed = confirm($tw.language.getString(\n\t\t\t\t\"ConfirmCancelTiddler\",\n\t\t\t\t{variables:\n\t\t\t\t\t{title: draftTitle}\n\t\t\t\t}\n\t\t\t));\n\t\t}\n\t\t// Remove the draft tiddler\n\t\tif(isConfirmed) {\n\t\t\tthis.wiki.deleteTiddler(draftTitle);\n\t\t\tif(!event.paramObject || event.paramObject.suppressNavigation !== \"yes\") {\n\t\t\t\tif(originalTiddler) {\n\t\t\t\t\tthis.replaceFirstTitleInStory(storyList,draftTitle,originalTitle);\n\t\t\t\t\tthis.addToHistory(originalTitle,event.navigateFromClientRect);\n\t\t\t\t} else {\n\t\t\t\t\tthis.removeTitleFromStory(storyList,draftTitle);\n\t\t\t\t}\n\t\t\t\tthis.saveStoryList(storyList);\n\t\t\t}\n\t\t}\n\t}\n\treturn false;\n};\n\n// Create a new draft tiddler\n// event.param can either be the title of a template tiddler, or a hashmap of fields.\n//\n// The title of the newly created tiddler follows these rules:\n// * If a hashmap was used and a title field was specified, use that title\n// * If a hashmap was used without a title field, use a default title, if necessary making it unique with a numeric suffix\n// * If a template tiddler was used, use the title of the template, if necessary making it unique with a numeric suffix\n//\n// If a draft of the target tiddler already exists then it is reused\nNavigatorWidget.prototype.handleNewTiddlerEvent = function(event) {\n\tevent = $tw.hooks.invokeHook(\"th-new-tiddler\", event);\n\t// Get the story details\n\tvar storyList = this.getStoryList(),\n\t\ttemplateTiddler, additionalFields, title, draftTitle, existingTiddler;\n\t// Get the template tiddler (if any)\n\tif(typeof event.param === \"string\") {\n\t\t// Get the template tiddler\n\t\ttemplateTiddler = this.wiki.getTiddler(event.param);\n\t\t// Generate a new title\n\t\ttitle = this.wiki.generateNewTitle(event.param || $tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t}\n\t// Get the specified additional fields\n\tif(typeof event.paramObject === \"object\") {\n\t\tadditionalFields = event.paramObject;\n\t}\n\tif(typeof event.param === \"object\") { // Backwards compatibility with 5.1.3\n\t\tadditionalFields = event.param;\n\t}\n\tif(additionalFields && additionalFields.title) {\n\t\ttitle = additionalFields.title;\n\t}\n\t// Make a copy of the additional fields excluding any blank ones\n\tvar filteredAdditionalFields = $tw.utils.extend({},additionalFields);\n\tObject.keys(filteredAdditionalFields).forEach(function(fieldName) {\n\t\tif(filteredAdditionalFields[fieldName] === \"\") {\n\t\t\tdelete filteredAdditionalFields[fieldName];\n\t\t}\n\t});\n\t// Generate a title if we don't have one\n\ttitle = title || this.wiki.generateNewTitle($tw.language.getString(\"DefaultNewTiddlerTitle\"));\n\t// Find any existing draft for this tiddler\n\tdraftTitle = this.wiki.findDraft(title);\n\t// Pull in any existing tiddler\n\tif(draftTitle) {\n\t\texistingTiddler = this.wiki.getTiddler(draftTitle);\n\t} else {\n\t\tdraftTitle = this.generateDraftTitle(title);\n\t\texistingTiddler = this.wiki.getTiddler(title);\n\t}\n\t// Merge the tags\n\tvar mergedTags = [];\n\tif(existingTiddler && existingTiddler.fields.tags) {\n\t\t$tw.utils.pushTop(mergedTags,existingTiddler.fields.tags);\n\t}\n\tif(additionalFields && additionalFields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,$tw.utils.parseStringArray(additionalFields.tags));\n\t}\n\tif(templateTiddler && templateTiddler.fields.tags) {\n\t\t// Merge tags\n\t\tmergedTags = $tw.utils.pushTop(mergedTags,templateTiddler.fields.tags);\n\t}\n\t// Save the draft tiddler\n\tvar draftTiddler = new $tw.Tiddler({\n\t\t\ttext: \"\",\n\t\t\t\"draft.title\": title\n\t\t},\n\t\ttemplateTiddler,\n\t\tadditionalFields,\n\t\tthis.wiki.getCreationFields(),\n\t\texistingTiddler,\n\t\tfilteredAdditionalFields,\n\t\t{\n\t\t\ttitle: draftTitle,\n\t\t\t\"draft.of\": title,\n\t\t\ttags: mergedTags\n\t\t},this.wiki.getModificationFields());\n\tthis.wiki.addTiddler(draftTiddler);\n\t// Update the story to insert the new draft at the top and remove any existing tiddler\n\tif(storyList && storyList.indexOf(draftTitle) === -1) {\n\t\tvar slot = storyList.indexOf(event.navigateFromTitle);\n\t\tif(slot === -1) {\n\t\t\tslot = this.getAttribute(\"openLinkFromOutsideRiver\",\"top\") === \"bottom\" ? storyList.length - 1 : slot;\n\t\t}\n\t\tstoryList.splice(slot + 1,0,draftTitle);\n\t}\n\tif(storyList && storyList.indexOf(title) !== -1) {\n\t\tstoryList.splice(storyList.indexOf(title),1);\n\t}\n\tthis.saveStoryList(storyList);\n\t// Add a new record to the top of the history stack\n\tthis.addToHistory(draftTitle);\n\treturn false;\n};\n\n// Import JSON tiddlers into a pending import tiddler\nNavigatorWidget.prototype.handleImportTiddlersEvent = function(event) {\n\t// Get the tiddlers\n\tvar tiddlers = [];\n\ttry {\n\t\ttiddlers = JSON.parse(event.param);\n\t} catch(e) {\n\t}\n\t// Get the current $:/Import tiddler\n\tvar importTitle = event.importTitle ? event.importTitle : IMPORT_TITLE,\n\t\timportTiddler = this.wiki.getTiddler(importTitle),\n\t\timportData = this.wiki.getTiddlerData(importTitle,{}),\n\t\tnewFields = new Object({\n\t\t\ttitle: importTitle,\n\t\t\ttype: \"application/json\",\n\t\t\t\"plugin-type\": \"import\",\n\t\t\t\"status\": \"pending\"\n\t\t}),\n\t\tincomingTiddlers = [];\n\t// Process each tiddler\n\timportData.tiddlers = importData.tiddlers || {};\n\t$tw.utils.each(tiddlers,function(tiddlerFields) {\n\t\ttiddlerFields.title = $tw.utils.trim(tiddlerFields.title);\n\t\tvar title = tiddlerFields.title;\n\t\tif(title) {\n\t\t\tincomingTiddlers.push(title);\n\t\t\timportData.tiddlers[title] = tiddlerFields;\n\t\t}\n\t});\n\t// Give the active upgrader modules a chance to process the incoming tiddlers\n\tvar messages = this.wiki.invokeUpgraders(incomingTiddlers,importData.tiddlers);\n\t$tw.utils.each(messages,function(message,title) {\n\t\tnewFields[\"message-\" + title] = message;\n\t});\n\t// Deselect any suppressed tiddlers\n\t$tw.utils.each(importData.tiddlers,function(tiddler,title) {\n\t\tif($tw.utils.count(tiddler) === 0) {\n\t\t\tnewFields[\"selection-\" + title] = \"unchecked\";\n\t\t\tnewFields[\"suppressed-\" + title] = \"yes\";\n\t\t}\n\t});\n\t// Save the $:/Import tiddler\n\tnewFields.text = JSON.stringify(importData,null,$tw.config.preferences.jsonSpaces);\n\tthis.wiki.addTiddler(new $tw.Tiddler(importTiddler,newFields));\n\t// Update the story and history details\n\tvar autoOpenOnImport = event.autoOpenOnImport ? event.autoOpenOnImport : this.getVariable(\"tv-auto-open-on-import\");  \n\tif(autoOpenOnImport !== \"no\") {\n\t\tvar storyList = this.getStoryList(),\n\t\t\thistory = [];\n\t\t// Add it to the story\n\t\tif(storyList && storyList.indexOf(importTitle) === -1) {\n\t\t\tstoryList.unshift(importTitle);\n\t\t}\n\t\t// And to history\n\t\thistory.push(importTitle);\n\t\t// Save the updated story and history\n\t\tthis.saveStoryList(storyList);\n\t\tthis.addToHistory(history);\n\t}\n\treturn false;\n};\n\n//\nNavigatorWidget.prototype.handlePerformImportEvent = function(event) {\n\tvar self = this,\n\t\timportTiddler = this.wiki.getTiddler(event.param),\n\t\timportData = this.wiki.getTiddlerDataCached(event.param,{tiddlers: {}}),\n\t\timportReport = [];\n\t// Add the tiddlers to the store\n\timportReport.push($tw.language.getString(\"Import/Imported/Hint\") + \"\\n\");\n\t$tw.utils.each(importData.tiddlers,function(tiddlerFields) {\n\t\tvar title = tiddlerFields.title;\n\t\tif(title && importTiddler && importTiddler.fields[\"selection-\" + title] !== \"unchecked\") {\n\t\t\tif($tw.utils.hop(importTiddler.fields,[\"rename-\" + title])) {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields,{title : importTiddler.fields[\"rename-\" + title]});\n\t\t\t} else {\n\t\t\t\tvar tiddler = new $tw.Tiddler(tiddlerFields);\n\t\t\t}\n\t\t\ttiddler = $tw.hooks.invokeHook(\"th-importing-tiddler\",tiddler);\n\t\t\tself.wiki.addTiddler(tiddler);\n\t\t\timportReport.push(\"# [[\" + tiddler.fields.title + \"]]\");\n\t\t}\n\t});\n\t// Replace the $:/Import tiddler with an import report\n\tthis.wiki.addTiddler(new $tw.Tiddler({\n\t\ttitle: event.param,\n\t\ttext: importReport.join(\"\\n\"),\n\t\t\"status\": \"complete\"\n\t}));\n\t// Navigate to the $:/Import tiddler\n\tthis.addToHistory([event.param]);\n\t// Trigger an autosave\n\t$tw.rootWidget.dispatchEvent({type: \"tm-auto-save-wiki\"});\n};\n\nNavigatorWidget.prototype.handleFoldTiddlerEvent = function(event) {\n\tvar paramObject = event.paramObject || {};\n\tif(paramObject.foldedState) {\n\t\tvar foldedState = this.wiki.getTiddlerText(paramObject.foldedState,\"show\") === \"show\" ? \"hide\" : \"show\";\n\t\tthis.wiki.setText(paramObject.foldedState,\"text\",null,foldedState);\n\t}\n};\n\nNavigatorWidget.prototype.handleFoldOtherTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,event.param === title ? \"show\" : \"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleFoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix || \"$:/state/folded/\";\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"hide\");\n\t});\n};\n\nNavigatorWidget.prototype.handleUnfoldAllTiddlersEvent = function(event) {\n\tvar self = this,\n\t\tparamObject = event.paramObject || {},\n\t\tprefix = paramObject.foldedStatePrefix;\n\t$tw.utils.each(this.getStoryList(),function(title) {\n\t\tself.wiki.setText(prefix + title,\"text\",null,\"show\");\n\t});\n};\n\nNavigatorWidget.prototype.handleRenameTiddlerEvent = function(event) {\n\tvar options = {},\n\t\tparamObject = event.paramObject || {},\n\t\tfrom = paramObject.from || event.tiddlerTitle,\n\t\tto = paramObject.to;\n\toptions.dontRenameInTags = (paramObject.renameInTags === \"false\" || paramObject.renameInTags === \"no\") ? true : false;\n\toptions.dontRenameInLists = (paramObject.renameInLists === \"false\" || paramObject.renameInLists === \"no\") ? true : false;\n\tthis.wiki.renameTiddler(from,to,options);\n};\n\nexports.navigator = NavigatorWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/password.js": {
            "title": "$:/core/modules/widgets/password.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/password.js\ntype: application/javascript\nmodule-type: widget\n\nPassword widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar PasswordWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nPasswordWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nPasswordWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Get the current password\n\tvar password = $tw.browser ? $tw.utils.getPassword(this.passwordName) || \"\" : \"\";\n\t// Create our element\n\tvar domNode = this.document.createElement(\"input\");\n\tdomNode.setAttribute(\"type\",\"password\");\n\tdomNode.setAttribute(\"value\",password);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(domNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tthis.domNodes.push(domNode);\n};\n\nPasswordWidget.prototype.handleChangeEvent = function(event) {\n\tvar password = this.domNodes[0].value;\n\treturn $tw.utils.savePassword(this.passwordName,password);\n};\n\n/*\nCompute the internal state of the widget\n*/\nPasswordWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.passwordName = this.getAttribute(\"name\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nPasswordWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.password = PasswordWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/qualify.js": {
            "title": "$:/core/modules/widgets/qualify.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/qualify.js\ntype: application/javascript\nmodule-type: widget\n\nQualify text to a variable \n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar QualifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nQualifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nQualifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nQualifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.qualifyName = this.getAttribute(\"name\");\n\tthis.qualifyTitle = this.getAttribute(\"title\");\n\t// Set context variable\n\tif(this.qualifyName) {\n\t\tthis.setVariable(this.qualifyName,this.qualifyTitle + \"-\" + this.getStateQualifier());\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nQualifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.title) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.qualify = QualifyWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/radio.js": {
            "title": "$:/core/modules/widgets/radio.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/radio.js\ntype: application/javascript\nmodule-type: widget\n\nSet a field or index at a given tiddler via radio buttons\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\nvar RadioWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRadioWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRadioWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\tvar isChecked = this.getValue() === this.radioValue;\n\t// Create our elements\n\tthis.labelDomNode = this.document.createElement(\"label\");\n\tthis.labelDomNode.setAttribute(\"class\",\n\t\t\"tc-radio \" + this.radioClass + (isChecked ? \" tc-radio-selected\" : \"\")\n\t);\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"radio\");\n\tif(isChecked) {\n\t\tthis.inputDomNode.setAttribute(\"checked\",\"true\");\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.labelDomNode.appendChild(this.inputDomNode);\n\tthis.spanDomNode = this.document.createElement(\"span\");\n\tthis.labelDomNode.appendChild(this.spanDomNode);\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.labelDomNode,nextSibling);\n\tthis.renderChildren(this.spanDomNode,null);\n\tthis.domNodes.push(this.labelDomNode);\n};\n\nRadioWidget.prototype.getValue = function() {\n\tvar value,\n\t\ttiddler = this.wiki.getTiddler(this.radioTitle);\n\tif (this.radioIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.radioTitle,this.radioIndex);\n\t} else {\n\t\tvalue = tiddler && tiddler.getFieldString(this.radioField);\n\t}\n\treturn value;\n};\n\nRadioWidget.prototype.setValue = function() {\n\tif(this.radioIndex) {\n\t\tthis.wiki.setText(this.radioTitle,\"\",this.radioIndex,this.radioValue);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.radioTitle),\n\t\t\taddition = {};\n\t\taddition[this.radioField] = this.radioValue;\n\t\tthis.wiki.addTiddler(new $tw.Tiddler(this.wiki.getCreationFields(),{title: this.radioTitle},tiddler,addition,this.wiki.getModificationFields()));\n\t}\n};\n\nRadioWidget.prototype.handleChangeEvent = function(event) {\n\tif(this.inputDomNode.checked) {\n\t\tthis.setValue();\n\t}\n\t// Trigger actions\n\tif(this.radioActions) {\n\t\tthis.invokeActionString(this.radioActions,this,event,{\"actionValue\": this.radioValue});\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRadioWidget.prototype.execute = function() {\n\t// Get the parameters from the attributes\n\tthis.radioTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.radioField = this.getAttribute(\"field\",\"text\");\n\tthis.radioIndex = this.getAttribute(\"index\");\n\tthis.radioValue = this.getAttribute(\"value\");\n\tthis.radioClass = this.getAttribute(\"class\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\tthis.radioActions = this.getAttribute(\"actions\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRadioWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(($tw.utils.count(changedAttributes) > 0) || changedTiddlers[this.radioTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.radio = RadioWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/range.js": {
            "title": "$:/core/modules/widgets/range.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/range.js\ntype: application/javascript\nmodule-type: widget\n\nRange widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RangeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRangeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRangeWidget.prototype.render = function(parent,nextSibling) {\n\t// Save the parent dom node\n\tthis.parentDomNode = parent;\n\t// Compute our attributes\n\tthis.computeAttributes();\n\t// Execute our logic\n\tthis.execute();\n\t// Create our elements\n\tthis.inputDomNode = this.document.createElement(\"input\");\n\tthis.inputDomNode.setAttribute(\"type\",\"range\");\n\tthis.inputDomNode.setAttribute(\"class\",this.elementClass);\n\tif(this.minValue){\n\t\tthis.inputDomNode.setAttribute(\"min\", this.minValue);\n\t}\n\tif(this.maxValue){\n\t\tthis.inputDomNode.setAttribute(\"max\", this.maxValue);\n\t}\n\tif(this.increment){\n\t\tthis.inputDomNode.setAttribute(\"step\", this.increment);\n\t}\n\tif(this.isDisabled === \"yes\") {\n\t\tthis.inputDomNode.setAttribute(\"disabled\",true);\n\t}\n\tthis.inputDomNode.value = this.getValue();\n\t// Add a click event handler\n\t$tw.utils.addEventListeners(this.inputDomNode,[\n\t\t{name:\"mousedown\", handlerObject:this, handlerMethod:\"handleMouseDownEvent\"},\n\t\t{name:\"mouseup\",   handlerObject:this, handlerMethod:\"handleMouseUpEvent\"},\n\t\t{name:\"change\",    handlerObject:this, handlerMethod:\"handleChangeEvent\"},\n\t\t{name:\"input\",     handlerObject:this, handlerMethod:\"handleInputEvent\"},\n\t]);\n\t// Insert the label into the DOM and render any children\n\tparent.insertBefore(this.inputDomNode,nextSibling);\n\tthis.domNodes.push(this.inputDomNode);\n};\n\nRangeWidget.prototype.getValue = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle),\n\t\tfieldName = this.tiddlerField,\n\t\tvalue = this.defaultValue;\n\tif(tiddler) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(tiddler,this.tiddlerIndex,this.defaultValue);\n\t\t} else {\n\t\t\tif($tw.utils.hop(tiddler.fields,fieldName)) {\n\t\t\t\tvalue = tiddler.fields[fieldName] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = this.defaultValue;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nRangeWidget.prototype.getActionVariables = function(options) {\n\toptions = options || {};\n\tvar hasChanged = (this.startValue !== this.inputDomNode.value) ? \"yes\" : \"no\";\n\t// Trigger actions. Use variables = {key:value, key:value ...}\n\t// the \"value\" is needed.\n\treturn $tw.utils.extend({\"actionValue\": this.inputDomNode.value, \"actionValueHasChanged\": hasChanged}, options);\n}\n\n// actionsStart\nRangeWidget.prototype.handleMouseDownEvent = function(event) {\n\tthis.mouseDown = true; // TODO remove once IE is gone.\n\tthis.startValue = this.inputDomNode.value; // TODO remove this line once IE is gone!\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseDown) {\n\t\tvar variables = this.getActionVariables() // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsMouseDown,this,event,variables);\n\t}\n}\n\n// actionsStop\nRangeWidget.prototype.handleMouseUpEvent = function(event) {\n\tthis.mouseDown = false; // TODO remove once IE is gone.\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsMouseUp) {\n\t\tvar variables = this.getActionVariables()\n\t\tthis.invokeActionString(this.actionsMouseUp,this,event,variables);\n\t}\n\t// TODO remove the following if() once IE is gone!\n\tif ($tw.browser.isIE) {\n\t\tif (this.startValue !== this.inputDomNode.value) {\n\t\t\tthis.handleChangeEvent(event);\n\t\t\tthis.startValue = this.inputDomNode.value;\n\t\t}\n\t}\n}\n\nRangeWidget.prototype.handleChangeEvent = function(event) {\n\tif (this.mouseDown) {  // TODO refactor this function once IE is gone.\n\t\tthis.handleInputEvent(event);\n\t}\n};\n\nRangeWidget.prototype.handleInputEvent = function(event) {\n\tthis.handleEvent(event);\n\t// Trigger actions\n\tif(this.actionsInput) {\n\t\t// \"tiddler\" parameter may be missing. See .execute() below\n\t\tvar variables = this.getActionVariables({\"actionValueHasChanged\": \"yes\"}) // TODO this line will go into the function call below.\n\t\tthis.invokeActionString(this.actionsInput,this,event,variables);\n\t}\n};\n\nRangeWidget.prototype.handleEvent = function(event) {\n\tif(this.getValue() !== this.inputDomNode.value) {\n\t\tif(this.tiddlerIndex) {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,\"\",this.tiddlerIndex,this.inputDomNode.value);\n\t\t} else {\n\t\t\tthis.wiki.setText(this.tiddlerTitle,this.tiddlerField,null,this.inputDomNode.value);\n\t\t}\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nRangeWidget.prototype.execute = function() {\n\t// TODO remove the next 1 lines once IE is gone!\n\tthis.mouseUp = true; // Needed for IE10\n\t// Get the parameters from the attributes\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.tiddlerField = this.getAttribute(\"field\",\"text\");\n\tthis.tiddlerIndex = this.getAttribute(\"index\");\n\tthis.minValue = this.getAttribute(\"min\");\n\tthis.maxValue = this.getAttribute(\"max\");\n\tthis.increment = this.getAttribute(\"increment\");\n\tthis.defaultValue = this.getAttribute(\"default\",\"\");\n\tthis.elementClass = this.getAttribute(\"class\",\"\");\n\tthis.isDisabled = this.getAttribute(\"disabled\",\"no\");\n\t// Actions since 5.1.23\n\t// Next 2 only fire once!\n\tthis.actionsMouseDown = this.getAttribute(\"actionsStart\",\"\");\n\tthis.actionsMouseUp = this.getAttribute(\"actionsStop\",\"\");\n\t// Input fires very often!\n\tthis.actionsInput = this.getAttribute(\"actions\",\"\");\n\t// Make the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRangeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif($tw.utils.count(changedAttributes) > 0) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar refreshed = false;\n\t\tif(changedTiddlers[this.tiddlerTitle]) {\n\t\t\tvar value = this.getValue();\n\t\t\tif(this.inputDomNode.value !== value) {\n\t\t\t\tthis.inputDomNode.value = value;\n\t\t\t}\n\t\t\trefreshed = true;\n\t\t}\n\t\treturn this.refreshChildren(changedTiddlers) || refreshed;\n\t}\n};\n\nexports.range = RangeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/raw.js": {
            "title": "$:/core/modules/widgets/raw.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/raw.js\ntype: application/javascript\nmodule-type: widget\n\nRaw widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RawWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRawWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRawWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tvar div = this.document.createElement(\"div\");\n\tdiv.innerHTML=this.parseTreeNode.html;\n\tparent.insertBefore(div,nextSibling);\n\tthis.domNodes.push(div);\t\n};\n\n/*\nCompute the internal state of the widget\n*/\nRawWidget.prototype.execute = function() {\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRawWidget.prototype.refresh = function(changedTiddlers) {\n\treturn false;\n};\n\nexports.raw = RawWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/reveal.js": {
            "title": "$:/core/modules/widgets/reveal.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/reveal.js\ntype: application/javascript\nmodule-type: widget\n\nReveal widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar RevealWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nRevealWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nRevealWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar tag = this.parseTreeNode.isBlock ? \"div\" : \"span\";\n\tif(this.revealTag && $tw.config.htmlUnsafeElements.indexOf(this.revealTag) === -1) {\n\t\ttag = this.revealTag;\n\t}\n\tvar domNode = this.document.createElement(tag);\n\tthis.domNode = domNode;\n\tthis.assignDomNodeClasses();\n\tif(this.style) {\n\t\tdomNode.setAttribute(\"style\",this.style);\n\t}\n\tparent.insertBefore(domNode,nextSibling);\n\tthis.renderChildren(domNode,null);\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\t}\n\tif(!this.isOpen) {\n\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t}\n\tthis.domNodes.push(domNode);\n};\n\nRevealWidget.prototype.positionPopup = function(domNode) {\n\tdomNode.style.position = \"absolute\";\n\tdomNode.style.zIndex = \"1000\";\n\tvar left,top;\n\tswitch(this.position) {\n\t\tcase \"left\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"above\":\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"aboveright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height - domNode.offsetHeight;\n\t\t\tbreak;\n\t\tcase \"belowright\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\t\t\t\n\t\tcase \"right\":\n\t\t\tleft = this.popup.left + this.popup.width;\n\t\t\ttop = this.popup.top;\n\t\t\tbreak;\n\t\tcase \"belowleft\":\n\t\t\tleft = this.popup.left + this.popup.width - domNode.offsetWidth;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t\tcase \"aboveleft\":\n\t\t\tleft = this.popup.left - domNode.offsetWidth;\n\t\t\ttop = this.popup.top - domNode.offsetHeight;\n\t\t\tbreak;\t\t\t\n\t\tdefault: // Below\n\t\t\tleft = this.popup.left;\n\t\t\ttop = this.popup.top + this.popup.height;\n\t\t\tbreak;\n\t}\n\tif(!this.positionAllowNegative) {\n\t\tleft = Math.max(0,left);\n\t\ttop = Math.max(0,top);\n\t}\n\tdomNode.style.left = left + \"px\";\n\tdomNode.style.top = top + \"px\";\n};\n\n/*\nCompute the internal state of the widget\n*/\nRevealWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.state = this.getAttribute(\"state\");\n\tthis.revealTag = this.getAttribute(\"tag\");\n\tthis.type = this.getAttribute(\"type\");\n\tthis.text = this.getAttribute(\"text\");\n\tthis.position = this.getAttribute(\"position\");\n\tthis.positionAllowNegative = this.getAttribute(\"positionAllowNegative\") === \"yes\";\n\t// class attribute handled in assignDomNodeClasses()\n\tthis.style = this.getAttribute(\"style\",\"\");\n\tthis[\"default\"] = this.getAttribute(\"default\",\"\");\n\tthis.animate = this.getAttribute(\"animate\",\"no\");\n\tthis.retain = this.getAttribute(\"retain\",\"no\");\n\tthis.openAnimation = this.animate === \"no\" ? undefined : \"open\";\n\tthis.closeAnimation = this.animate === \"no\" ? undefined : \"close\";\n\tthis.updatePopupPosition = this.getAttribute(\"updatePopupPosition\",\"no\") === \"yes\";\n\t// Compute the title of the state tiddler and read it\n\tthis.stateTiddlerTitle = this.state;\n\tthis.stateTitle = this.getAttribute(\"stateTitle\");\n\tthis.stateField = this.getAttribute(\"stateField\");\n\tthis.stateIndex = this.getAttribute(\"stateIndex\");\n\tthis.readState();\n\t// Construct the child widgets\n\tvar childNodes = this.isOpen ? this.parseTreeNode.children : [];\n\tthis.hasChildNodes = this.isOpen;\n\tthis.makeChildWidgets(childNodes);\n};\n\n/*\nRead the state tiddler\n*/\nRevealWidget.prototype.readState = function() {\n\t// Read the information from the state tiddler\n\tvar state,\n\t    defaultState = this[\"default\"];\n\tif(this.stateTitle) {\n\t\tvar stateTitleTiddler = this.wiki.getTiddler(this.stateTitle);\n\t\tif(this.stateField) {\n\t\t\tstate = stateTitleTiddler ? stateTitleTiddler.getFieldString(this.stateField) || defaultState : defaultState;\n\t\t} else if(this.stateIndex) {\n\t\t\tstate = stateTitleTiddler ? this.wiki.extractTiddlerDataItem(this.stateTitle,this.stateIndex) || defaultState : defaultState;\n\t\t} else if(stateTitleTiddler) {\n\t\t\tstate = this.wiki.getTiddlerText(this.stateTitle) || defaultState;\n\t\t} else {\n\t\t\tstate = defaultState;\n\t\t}\n\t} else {\n\t\tstate = this.stateTiddlerTitle ? this.wiki.getTextReference(this.state,this[\"default\"],this.getVariable(\"currentTiddler\")) : this[\"default\"];\n\t}\n\tif(state === null) {\n\t\tstate = this[\"default\"];\n\t}\n\tswitch(this.type) {\n\t\tcase \"popup\":\n\t\t\tthis.readPopupState(state);\n\t\t\tbreak;\n\t\tcase \"match\":\n\t\t\tthis.isOpen = this.text === state;\n\t\t\tbreak;\n\t\tcase \"nomatch\":\n\t\t\tthis.isOpen = this.text !== state;\n\t\t\tbreak;\n\t\tcase \"lt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t\tcase \"gt\":\n\t\t\tthis.isOpen = !!(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"lteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) > 0);\n\t\t\tbreak;\n\t\tcase \"gteq\":\n\t\t\tthis.isOpen = !(this.compareStateText(state) < 0);\n\t\t\tbreak;\n\t}\n};\n\nRevealWidget.prototype.compareStateText = function(state) {\n\treturn state.localeCompare(this.text,undefined,{numeric: true,sensitivity: \"case\"});\n};\n\nRevealWidget.prototype.readPopupState = function(state) {\n\tvar popupLocationRegExp = /^\\((-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+),(-?[0-9\\.E]+)\\)$/,\n\t\tmatch = popupLocationRegExp.exec(state);\n\t// Check if the state matches the location regexp\n\tif(match) {\n\t\t// If so, we're open\n\t\tthis.isOpen = true;\n\t\t// Get the location\n\t\tthis.popup = {\n\t\t\tleft: parseFloat(match[1]),\n\t\t\ttop: parseFloat(match[2]),\n\t\t\twidth: parseFloat(match[3]),\n\t\t\theight: parseFloat(match[4])\n\t\t};\n\t} else {\n\t\t// If not, we're closed\n\t\tthis.isOpen = false;\n\t}\n};\n\nRevealWidget.prototype.assignDomNodeClasses = function() {\n\tvar classes = this.getAttribute(\"class\",\"\").split(\" \");\n\tclasses.push(\"tc-reveal\");\n\tthis.domNode.className = classes.join(\" \");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nRevealWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.state || changedAttributes.type || changedAttributes.text || changedAttributes.position || changedAttributes.positionAllowNegative || changedAttributes[\"default\"] || changedAttributes.animate || changedAttributes.stateTitle || changedAttributes.stateField || changedAttributes.stateIndex) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\tvar currentlyOpen = this.isOpen;\n\t\tthis.readState();\n\t\tif(this.isOpen !== currentlyOpen) {\n\t\t\tif(this.retain === \"yes\") {\n\t\t\t\tthis.updateState();\n\t\t\t} else {\n\t\t\t\tthis.refreshSelf();\n\t\t\t\treturn true;\n\t\t\t}\n\t\t} else if(this.type === \"popup\" && this.updatePopupPosition && (changedTiddlers[this.state] || changedTiddlers[this.stateTitle])) {\n\t\t\tthis.positionPopup(this.domNode);\n\t\t}\n\t\tif(changedAttributes.style) {\n\t\t\tthis.domNode.style = this.getAttribute(\"style\",\"\");\n\t\t}\n\t\tif(changedAttributes[\"class\"]) {\n\t\t\tthis.assignDomNodeClasses();\n\t\t}\t\t\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\n/*\nCalled by refresh() to dynamically show or hide the content\n*/\nRevealWidget.prototype.updateState = function() {\n\tvar self = this;\n\t// Read the current state\n\tthis.readState();\n\t// Construct the child nodes if needed\n\tvar domNode = this.domNodes[0];\n\tif(this.isOpen && !this.hasChildNodes) {\n\t\tthis.hasChildNodes = true;\n\t\tthis.makeChildWidgets(this.parseTreeNode.children);\n\t\tthis.renderChildren(domNode,null);\n\t}\n\t// Animate our DOM node\n\tif(!domNode.isTiddlyWikiFakeDom && this.type === \"popup\" && this.isOpen) {\n\t\tthis.positionPopup(domNode);\n\t\t$tw.utils.addClass(domNode,\"tc-popup\"); // Make sure that clicks don't dismiss popups within the revealed content\n\n\t}\n\tif(this.isOpen) {\n\t\tdomNode.removeAttribute(\"hidden\");\n        $tw.anim.perform(this.openAnimation,domNode);\n\t} else {\n\t\t$tw.anim.perform(this.closeAnimation,domNode,{callback: function() {\n\t\t\t//make sure that the state hasn't changed during the close animation\n\t\t\tself.readState()\n\t\t\tif(!self.isOpen) {\n\t\t\t\tdomNode.setAttribute(\"hidden\",\"true\");\n\t\t\t}\n\t\t}});\n\t}\n};\n\nexports.reveal = RevealWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/scrollable.js": {
            "title": "$:/core/modules/widgets/scrollable.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/scrollable.js\ntype: application/javascript\nmodule-type: widget\n\nScrollable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ScrollableWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n\tthis.scaleFactor = 1;\n\tthis.addEventListeners([\n\t\t{type: \"tm-scroll\", handler: \"handleScrollEvent\"}\n\t]);\n\tif($tw.browser) {\n\t\tthis.requestAnimationFrame = window.requestAnimationFrame ||\n\t\t\twindow.webkitRequestAnimationFrame ||\n\t\t\twindow.mozRequestAnimationFrame ||\n\t\t\tfunction(callback) {\n\t\t\t\treturn window.setTimeout(callback, 1000/60);\n\t\t\t};\n\t\tthis.cancelAnimationFrame = window.cancelAnimationFrame ||\n\t\t\twindow.webkitCancelAnimationFrame ||\n\t\t\twindow.webkitCancelRequestAnimationFrame ||\n\t\t\twindow.mozCancelAnimationFrame ||\n\t\t\twindow.mozCancelRequestAnimationFrame ||\n\t\t\tfunction(id) {\n\t\t\t\twindow.clearTimeout(id);\n\t\t\t};\n\t}\n};\n\n/*\nInherit from the base widget class\n*/\nScrollableWidget.prototype = new Widget();\n\nScrollableWidget.prototype.cancelScroll = function() {\n\tif(this.idRequestFrame) {\n\t\tthis.cancelAnimationFrame.call(window,this.idRequestFrame);\n\t\tthis.idRequestFrame = null;\n\t}\n};\n\n/*\nHandle a scroll event\n*/\nScrollableWidget.prototype.handleScrollEvent = function(event) {\n\t// Pass the scroll event through if our offsetsize is larger than our scrollsize\n\tif(this.outerDomNode.scrollWidth <= this.outerDomNode.offsetWidth && this.outerDomNode.scrollHeight <= this.outerDomNode.offsetHeight && this.fallthrough === \"yes\") {\n\t\treturn true;\n\t}\n\tif(event.paramObject && event.paramObject.selector) {\n\t\tthis.scrollSelectorIntoView(null,event.paramObject.selector);\n\t} else {\n\t\tthis.scrollIntoView(event.target);\t\t\t\n\t}\n\treturn false; // Handled event\n};\n\n/*\nScroll an element into view\n*/\nScrollableWidget.prototype.scrollIntoView = function(element) {\n\tvar duration = $tw.utils.getAnimationDuration(),\n\tsrcWindow = element ? element.ownerDocument.defaultView : window;\n\tthis.cancelScroll();\n\tthis.startTime = Date.now();\n\tvar scrollPosition = {\n\t\tx: this.outerDomNode.scrollLeft,\n\t\ty: this.outerDomNode.scrollTop\n\t};\n\t// Get the client bounds of the element and adjust by the scroll position\n\tvar scrollableBounds = this.outerDomNode.getBoundingClientRect(),\n\t\tclientTargetBounds = element.getBoundingClientRect(),\n\t\tbounds = {\n\t\t\tleft: clientTargetBounds.left + scrollPosition.x - scrollableBounds.left,\n\t\t\ttop: clientTargetBounds.top + scrollPosition.y - scrollableBounds.top,\n\t\t\twidth: clientTargetBounds.width,\n\t\t\theight: clientTargetBounds.height\n\t\t};\n\t// We'll consider the horizontal and vertical scroll directions separately via this function\n\tvar getEndPos = function(targetPos,targetSize,currentPos,currentSize) {\n\t\t\t// If the target is already visible then stay where we are\n\t\t\tif(targetPos >= currentPos && (targetPos + targetSize) <= (currentPos + currentSize)) {\n\t\t\t\treturn currentPos;\n\t\t\t// If the target is above/left of the current view, then scroll to its top/left\n\t\t\t} else if(targetPos <= currentPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// If the target is smaller than the window and the scroll position is too far up, then scroll till the target is at the bottom of the window\n\t\t\t} else if(targetSize < currentSize && currentPos < (targetPos + targetSize - currentSize)) {\n\t\t\t\treturn targetPos + targetSize - currentSize;\n\t\t\t// If the target is big, then just scroll to the top\n\t\t\t} else if(currentPos < targetPos) {\n\t\t\t\treturn targetPos;\n\t\t\t// Otherwise, stay where we are\n\t\t\t} else {\n\t\t\t\treturn currentPos;\n\t\t\t}\n\t\t},\n\t\tendX = getEndPos(bounds.left,bounds.width,scrollPosition.x,this.outerDomNode.offsetWidth),\n\t\tendY = getEndPos(bounds.top,bounds.height,scrollPosition.y,this.outerDomNode.offsetHeight);\n\t// Only scroll if necessary\n\tif(endX !== scrollPosition.x || endY !== scrollPosition.y) {\n\t\tvar self = this,\n\t\t\tdrawFrame;\n\t\tdrawFrame = function () {\n\t\t\tvar t;\n\t\t\tif(duration <= 0) {\n\t\t\t\tt = 1;\n\t\t\t} else {\n\t\t\t\tt = ((Date.now()) - self.startTime) / duration;\t\n\t\t\t}\n\t\t\tif(t >= 1) {\n\t\t\t\tself.cancelScroll();\n\t\t\t\tt = 1;\n\t\t\t}\n\t\t\tt = $tw.utils.slowInSlowOut(t);\n\t\t\tself.outerDomNode.scrollLeft = scrollPosition.x + (endX - scrollPosition.x) * t;\n\t\t\tself.outerDomNode.scrollTop = scrollPosition.y + (endY - scrollPosition.y) * t;\n\t\t\tif(t < 1) {\n\t\t\t\tself.idRequestFrame = self.requestAnimationFrame.call(srcWindow,drawFrame);\n\t\t\t}\n\t\t};\n\t\tdrawFrame();\n\t}\n};\n\nScrollableWidget.prototype.scrollSelectorIntoView = function(baseElement,selector,callback) {\n\tbaseElement = baseElement || document.body;\n\tvar element = baseElement.querySelector(selector);\n\tif(element) {\n\t\tthis.scrollIntoView(element,callback);\t\t\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nScrollableWidget.prototype.render = function(parent,nextSibling) {\n\tvar self = this;\n\t// Remember parent\n\tthis.parentDomNode = parent;\n\t// Compute attributes and execute state\n\tthis.computeAttributes();\n\tthis.execute();\n\t// Create elements\n\tthis.outerDomNode = this.document.createElement(\"div\");\n\t$tw.utils.setStyle(this.outerDomNode,[\n\t\t{overflowY: \"auto\"},\n\t\t{overflowX: \"auto\"},\n\t\t{webkitOverflowScrolling: \"touch\"}\n\t]);\n\tthis.innerDomNode = this.document.createElement(\"div\");\n\tthis.outerDomNode.appendChild(this.innerDomNode);\n\t// Assign classes\n\tthis.outerDomNode.className = this[\"class\"] || \"\";\n\t// Insert element\n\tparent.insertBefore(this.outerDomNode,nextSibling);\n\tthis.renderChildren(this.innerDomNode,null);\n\tthis.domNodes.push(this.outerDomNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nScrollableWidget.prototype.execute = function() {\n\t// Get attributes\n\tthis.fallthrough = this.getAttribute(\"fallthrough\",\"yes\");\n\tthis[\"class\"] = this.getAttribute(\"class\");\n\t// Make child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nScrollableWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes[\"class\"]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports.scrollable = ScrollableWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/select.js": {
            "title": "$:/core/modules/widgets/select.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/select.js\ntype: application/javascript\nmodule-type: widget\n\nSelect widget:\n\n```\n<$select tiddler=\"MyTiddler\" field=\"text\">\n<$list filter=\"[tag[chapter]]\">\n<option value=<<currentTiddler>>>\n<$view field=\"description\"/>\n</option>\n</$list>\n</$select>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SelectWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSelectWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSelectWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n\tthis.setSelectValue();\n\t$tw.utils.addEventListeners(this.getSelectDomNode(),[\n\t\t{name: \"change\", handlerObject: this, handlerMethod: \"handleChangeEvent\"}\n\t]);\n};\n\n/*\nHandle a change event\n*/\nSelectWidget.prototype.handleChangeEvent = function(event) {\n\t// Get the new value and assign it to the tiddler\n\tif(this.selectMultiple == false) {\n\t\tvar value = this.getSelectDomNode().value;\n\t} else {\n\t\tvar value = this.getSelectValues()\n\t\t\t\tvalue = $tw.utils.stringifyList(value);\n\t}\n\tthis.wiki.setText(this.selectTitle,this.selectField,this.selectIndex,value);\n\t// Trigger actions\n\tif(this.selectActions) {\n\t\tthis.invokeActionString(this.selectActions,this,event);\n\t}\n};\n\n/*\nIf necessary, set the value of the select element to the current value\n*/\nSelectWidget.prototype.setSelectValue = function() {\n\tvar value = this.selectDefault;\n\t// Get the value\n\tif(this.selectIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.selectTitle,this.selectIndex,value);\n\t} else {\n\t\tvar tiddler = this.wiki.getTiddler(this.selectTitle);\n\t\tif(tiddler) {\n\t\t\tif(this.selectField === \"text\") {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.selectTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.selectField)) {\n\t\t\t\t\tvalue = tiddler.getFieldString(this.selectField);\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.selectField === \"title\") {\n\t\t\t\tvalue = this.selectTitle;\n\t\t\t}\n\t\t}\n\t}\n\t// Assign it to the select element if it's different than the current value\n\tif (this.selectMultiple) {\n\t\tvalue = value === undefined ? \"\" : value;\n\t\tvar select = this.getSelectDomNode();\n\t\tvar values = Array.isArray(value) ? value : $tw.utils.parseStringArray(value);\n\t\tfor(var i=0; i < select.children.length; i++){\n\t\t\tselect.children[i].selected = values.indexOf(select.children[i].value) !== -1\n\t\t}\n\t} else {\n\t\tvar domNode = this.getSelectDomNode();\n\t\tif(domNode.value !== value) {\n\t\t\tdomNode.value = value;\n\t\t}\n\t}\n};\n\n/*\nGet the DOM node of the select element\n*/\nSelectWidget.prototype.getSelectDomNode = function() {\n\treturn this.children[0].domNodes[0];\n};\n\n// Return an array of the selected opion values\n// select is an HTML select element\nSelectWidget.prototype.getSelectValues = function() {\n\tvar select, result, options, opt;\n\tselect = this.getSelectDomNode();\n\tresult = [];\n\toptions = select && select.options;\n\tfor (var i=0; i<options.length; i++) {\n\t\topt = options[i];\n\t\tif (opt.selected) {\n\t\t\tresult.push(opt.value || opt.text);\n\t\t}\n\t}\n\treturn result;\n}\n\n/*\nCompute the internal state of the widget\n*/\nSelectWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.selectActions = this.getAttribute(\"actions\");\n\tthis.selectTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.selectField = this.getAttribute(\"field\",\"text\");\n\tthis.selectIndex = this.getAttribute(\"index\");\n\tthis.selectClass = this.getAttribute(\"class\");\n\tthis.selectDefault = this.getAttribute(\"default\");\n\tthis.selectMultiple = this.getAttribute(\"multiple\", false);\n\tthis.selectSize = this.getAttribute(\"size\");\n\tthis.selectTooltip = this.getAttribute(\"tooltip\");\n\t// Make the child widgets\n\tvar selectNode = {\n\t\ttype: \"element\",\n\t\ttag: \"select\",\n\t\tchildren: this.parseTreeNode.children\n\t};\n\tif(this.selectClass) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"class\",this.selectClass);\n\t}\n\tif(this.selectMultiple) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"multiple\",\"multiple\");\n\t}\n\tif(this.selectSize) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"size\",this.selectSize);\n\t}\n\tif(this.selectTooltip) {\n\t\t$tw.utils.addAttributeToParseTreeNode(selectNode,\"title\",this.selectTooltip);\n\t}\n\tthis.makeChildWidgets([selectNode]);\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSelectWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// If we're using a different tiddler/field/index then completely refresh ourselves\n\tif(changedAttributes.selectTitle || changedAttributes.selectField || changedAttributes.selectIndex || changedAttributes.selectTooltip) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t// If the target tiddler value has changed, just update setting and refresh the children\n\t} else {\n\t\tvar childrenRefreshed = this.refreshChildren(changedTiddlers);\n\t\tif(changedTiddlers[this.selectTitle] || childrenRefreshed) {\n\t\t\tthis.setSelectValue();\n\t\t} \n\t\treturn childrenRefreshed;\n\t}\n};\n\nexports.select = SelectWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/set.js": {
            "title": "$:/core/modules/widgets/set.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/set.js\ntype: application/javascript\nmodule-type: widget\n\nSet variable widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar SetWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nSetWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nSetWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nSetWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.setName = this.getAttribute(\"name\",\"currentTiddler\");\n\tthis.setFilter = this.getAttribute(\"filter\");\n\tthis.setSelect = this.getAttribute(\"select\");\n\tthis.setTiddler = this.getAttribute(\"tiddler\");\n\tthis.setSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.setField = this.getAttribute(\"field\");\n\tthis.setIndex = this.getAttribute(\"index\");\n\tthis.setValue = this.getAttribute(\"value\");\n\tthis.setEmptyValue = this.getAttribute(\"emptyValue\");\n\t// Set context variable\n\tthis.setVariable(this.setName,this.getValue(),this.parseTreeNode.params,!!this.parseTreeNode.isMacroDefinition);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nGet the value to be assigned\n*/\nSetWidget.prototype.getValue = function() {\n\tvar value = this.setValue;\n\tif(this.setTiddler) {\n\t\tvar tiddler;\n\t\tif(this.setSubTiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.setTiddler,this.setSubTiddler);\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.setTiddler);\t\t\t\n\t\t}\n\t\tif(!tiddler) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t} else if(this.setField) {\n\t\t\tvalue = tiddler.getFieldString(this.setField) || this.setEmptyValue;\n\t\t} else if(this.setIndex) {\n\t\t\tvalue = this.wiki.extractTiddlerDataItem(this.setTiddler,this.setIndex,this.setEmptyValue);\n\t\t} else {\n\t\t\tvalue = tiddler.fields.text || this.setEmptyValue ;\n\t\t}\n\t} else if(this.setFilter) {\n\t\tvar results = this.wiki.filterTiddlers(this.setFilter,this);\n\t\tif(this.setValue == null) {\n\t\t\tvar select;\n\t\t\tif(this.setSelect) {\n\t\t\t\tselect = parseInt(this.setSelect,10);\n\t\t\t}\n\t\t\tif(select !== undefined) {\n\t\t\t\tvalue = results[select] || \"\";\n\t\t\t} else {\n\t\t\t\tvalue = $tw.utils.stringifyList(results);\t\t\t\n\t\t\t}\n\t\t}\n\t\tif(results.length === 0 && this.setEmptyValue !== undefined) {\n\t\t\tvalue = this.setEmptyValue;\n\t\t}\n\t} else if(!value && this.setEmptyValue) {\n\t\tvalue = this.setEmptyValue;\n\t}\n\treturn value || \"\";\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nSetWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.name || changedAttributes.filter || changedAttributes.select || changedAttributes.tiddler || (this.setTiddler && changedTiddlers[this.setTiddler]) || changedAttributes.field || changedAttributes.index || changedAttributes.value || changedAttributes.emptyValue ||\n\t   (this.setFilter && this.getValue() != this.variables[this.setName].value)) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.setvariable = SetWidget;\nexports.set = SetWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/text.js": {
            "title": "$:/core/modules/widgets/text.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/text.js\ntype: application/javascript\nmodule-type: widget\n\nText node widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TextNodeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTextNodeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTextNodeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tvar text = this.getAttribute(\"text\",this.parseTreeNode.text || \"\");\n\ttext = text.replace(/\\r/mg,\"\");\n\tvar textNode = this.document.createTextNode(text);\n\tparent.insertBefore(textNode,nextSibling);\n\tthis.domNodes.push(textNode);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTextNodeWidget.prototype.execute = function() {\n\t// Nothing to do for a text node\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTextNodeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.text) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.text = TextNodeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/tiddler.js": {
            "title": "$:/core/modules/widgets/tiddler.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/tiddler.js\ntype: application/javascript\nmodule-type: widget\n\nTiddler widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TiddlerWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTiddlerWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTiddlerWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTiddlerWidget.prototype.execute = function() {\n\tthis.tiddlerState = this.computeTiddlerState();\n\tthis.setVariable(\"currentTiddler\",this.tiddlerState.currentTiddler);\n\tthis.setVariable(\"missingTiddlerClass\",this.tiddlerState.missingTiddlerClass);\n\tthis.setVariable(\"shadowTiddlerClass\",this.tiddlerState.shadowTiddlerClass);\n\tthis.setVariable(\"systemTiddlerClass\",this.tiddlerState.systemTiddlerClass);\n\tthis.setVariable(\"tiddlerTagClasses\",this.tiddlerState.tiddlerTagClasses);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nCompute the tiddler state flags\n*/\nTiddlerWidget.prototype.computeTiddlerState = function() {\n\t// Get our parameters\n\tthis.tiddlerTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\t// Compute the state\n\tvar state = {\n\t\tcurrentTiddler: this.tiddlerTitle || \"\",\n\t\tmissingTiddlerClass: (this.wiki.tiddlerExists(this.tiddlerTitle) || this.wiki.isShadowTiddler(this.tiddlerTitle)) ? \"tc-tiddler-exists\" : \"tc-tiddler-missing\",\n\t\tshadowTiddlerClass: this.wiki.isShadowTiddler(this.tiddlerTitle) ? \"tc-tiddler-shadow\" : \"\",\n\t\tsystemTiddlerClass: this.wiki.isSystemTiddler(this.tiddlerTitle) ? \"tc-tiddler-system\" : \"\",\n\t\ttiddlerTagClasses: this.getTagClasses()\n\t};\n\t// Compute a simple hash to make it easier to detect changes\n\tstate.hash = state.currentTiddler + state.missingTiddlerClass + state.shadowTiddlerClass + state.systemTiddlerClass + state.tiddlerTagClasses;\n\treturn state;\n};\n\n/*\nCreate a string of CSS classes derived from the tags of the current tiddler\n*/\nTiddlerWidget.prototype.getTagClasses = function() {\n\tvar tiddler = this.wiki.getTiddler(this.tiddlerTitle);\n\tif(tiddler) {\n\t\tvar tags = [];\n\t\t$tw.utils.each(tiddler.fields.tags,function(tag) {\n\t\t\ttags.push(\"tc-tagged-\" + encodeURIComponent(tag));\n\t\t});\n\t\treturn tags.join(\" \");\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTiddlerWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes(),\n\t\tnewTiddlerState = this.computeTiddlerState();\n\tif(changedAttributes.tiddler || newTiddlerState.hash !== this.tiddlerState.hash) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.tiddler = TiddlerWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/transclude.js": {
            "title": "$:/core/modules/widgets/transclude.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/transclude.js\ntype: application/javascript\nmodule-type: widget\n\nTransclude widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar TranscludeWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nTranscludeWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nTranscludeWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nTranscludeWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.transcludeTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.transcludeSubTiddler = this.getAttribute(\"subtiddler\");\n\tthis.transcludeField = this.getAttribute(\"field\");\n\tthis.transcludeIndex = this.getAttribute(\"index\");\n\tthis.transcludeMode = this.getAttribute(\"mode\");\n\tthis.recursionMarker = this.getAttribute(\"recursionMarker\",\"yes\");\n\t// Parse the text reference\n\tvar parseAsInline = !this.parseTreeNode.isBlock;\n\tif(this.transcludeMode === \"inline\") {\n\t\tparseAsInline = true;\n\t} else if(this.transcludeMode === \"block\") {\n\t\tparseAsInline = false;\n\t}\n\tvar parser = this.wiki.parseTextReference(\n\t\t\t\t\t\tthis.transcludeTitle,\n\t\t\t\t\t\tthis.transcludeField,\n\t\t\t\t\t\tthis.transcludeIndex,\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tparseAsInline: parseAsInline,\n\t\t\t\t\t\t\tsubTiddler: this.transcludeSubTiddler\n\t\t\t\t\t\t}),\n\t\tparseTreeNodes = parser ? parser.tree : this.parseTreeNode.children;\n\t// Set context variables for recursion detection\n\tvar recursionMarker = this.makeRecursionMarker();\n\tif(this.recursionMarker === \"yes\") {\n\t\tthis.setVariable(\"transclusion\",recursionMarker);\n\t}\n\t// Check for recursion\n\tif(parser) {\n\t\tif(this.parentWidget && this.parentWidget.hasVariable(\"transclusion\",recursionMarker)) {\n\t\t\tparseTreeNodes = [{type: \"element\", tag: \"span\", attributes: {\n\t\t\t\t\"class\": {type: \"string\", value: \"tc-error\"}\n\t\t\t}, children: [\n\t\t\t\t{type: \"text\", text: $tw.language.getString(\"Error/RecursiveTransclusion\")}\n\t\t\t]}];\n\t\t}\n\t}\n\t// Construct the child widgets\n\tthis.makeChildWidgets(parseTreeNodes);\n};\n\n/*\nCompose a string comprising the title, field and/or index to identify this transclusion for recursion detection\n*/\nTranscludeWidget.prototype.makeRecursionMarker = function() {\n\tvar output = [];\n\toutput.push(\"{\");\n\toutput.push(this.getVariable(\"currentTiddler\",{defaultValue: \"\"}));\n\toutput.push(\"|\");\n\toutput.push(this.transcludeTitle || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeField || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeIndex || \"\");\n\toutput.push(\"|\");\n\toutput.push(this.transcludeSubTiddler || \"\");\n\toutput.push(\"}\");\n\treturn output.join(\"\");\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nTranscludeWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedTiddlers[this.transcludeTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn this.refreshChildren(changedTiddlers);\t\t\n\t}\n};\n\nexports.transclude = TranscludeWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/vars.js": {
            "title": "$:/core/modules/widgets/vars.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/vars.js\ntype: application/javascript\nmodule-type: widget\n\nThis widget allows multiple variables to be set in one go:\n\n```\n\\define helloworld() Hello world!\n<$vars greeting=\"Hi\" me={{!!title}} sentence=<<helloworld>>>\n  <<greeting>>! I am <<me>> and I say: <<sentence>>\n</$vars>\n```\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar VarsWidget = function(parseTreeNode,options) {\n\t// Call the constructor\n\tWidget.call(this);\n\t// Initialise\t\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nVarsWidget.prototype = Object.create(Widget.prototype);\n\n/*\nRender this widget into the DOM\n*/\nVarsWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nVarsWidget.prototype.execute = function() {\n\t// Parse variables\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(val,key) {\n\t\tif(key.charAt(0) !== \"$\") {\n\t\t\tself.setVariable(key,val);\n\t\t}\n\t});\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nRefresh the widget by ensuring our attributes are up to date\n*/\nVarsWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(Object.keys(changedAttributes).length) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t}\n\treturn this.refreshChildren(changedTiddlers);\n};\n\nexports[\"vars\"] = VarsWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/view.js": {
            "title": "$:/core/modules/widgets/view.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/view.js\ntype: application/javascript\nmodule-type: widget\n\nView widget\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar ViewWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nViewWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nViewWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tif(this.text) {\n\t\tvar textNode = this.document.createTextNode(this.text);\n\t\tparent.insertBefore(textNode,nextSibling);\n\t\tthis.domNodes.push(textNode);\n\t} else {\n\t\tthis.makeChildWidgets();\n\t\tthis.renderChildren(parent,nextSibling);\n\t}\n};\n\n/*\nCompute the internal state of the widget\n*/\nViewWidget.prototype.execute = function() {\n\t// Get parameters from our attributes\n\tthis.viewTitle = this.getAttribute(\"tiddler\",this.getVariable(\"currentTiddler\"));\n\tthis.viewSubtiddler = this.getAttribute(\"subtiddler\");\n\tthis.viewField = this.getAttribute(\"field\",\"text\");\n\tthis.viewIndex = this.getAttribute(\"index\");\n\tthis.viewFormat = this.getAttribute(\"format\",\"text\");\n\tthis.viewTemplate = this.getAttribute(\"template\",\"\");\n\tthis.viewMode = this.getAttribute(\"mode\",\"block\");\n\tswitch(this.viewFormat) {\n\t\tcase \"htmlwikified\":\n\t\t\tthis.text = this.getValueAsHtmlWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"plainwikified\":\n\t\t\tthis.text = this.getValueAsPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencodedplainwikified\":\n\t\t\tthis.text = this.getValueAsHtmlEncodedPlainWikified(this.viewMode);\n\t\t\tbreak;\n\t\tcase \"htmlencoded\":\n\t\t\tthis.text = this.getValueAsHtmlEncoded();\n\t\t\tbreak;\n\t\tcase \"urlencoded\":\n\t\t\tthis.text = this.getValueAsUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"doubleurlencoded\":\n\t\t\tthis.text = this.getValueAsDoubleUrlEncoded();\n\t\t\tbreak;\n\t\tcase \"date\":\n\t\t\tthis.text = this.getValueAsDate(this.viewTemplate);\n\t\t\tbreak;\n\t\tcase \"relativedate\":\n\t\t\tthis.text = this.getValueAsRelativeDate();\n\t\t\tbreak;\n\t\tcase \"stripcomments\":\n\t\t\tthis.text = this.getValueAsStrippedComments();\n\t\t\tbreak;\n\t\tcase \"jsencoded\":\n\t\t\tthis.text = this.getValueAsJsEncoded();\n\t\t\tbreak;\n\t\tdefault: // \"text\"\n\t\t\tthis.text = this.getValueAsText();\n\t\t\tbreak;\n\t}\n};\n\n/*\nThe various formatter functions are baked into this widget for the moment. Eventually they will be replaced by macro functions\n*/\n\n/*\nRetrieve the value of the widget. Options are:\nasString: Optionally return the value as a string\n*/\nViewWidget.prototype.getValue = function(options) {\n\toptions = options || {};\n\tvar value = options.asString ? \"\" : undefined;\n\tif(this.viewIndex) {\n\t\tvalue = this.wiki.extractTiddlerDataItem(this.viewTitle,this.viewIndex);\n\t} else {\n\t\tvar tiddler;\n\t\tif(this.viewSubtiddler) {\n\t\t\ttiddler = this.wiki.getSubTiddler(this.viewTitle,this.viewSubtiddler);\t\n\t\t} else {\n\t\t\ttiddler = this.wiki.getTiddler(this.viewTitle);\n\t\t}\n\t\tif(tiddler) {\n\t\t\tif(this.viewField === \"text\" && !this.viewSubtiddler) {\n\t\t\t\t// Calling getTiddlerText() triggers lazy loading of skinny tiddlers\n\t\t\t\tvalue = this.wiki.getTiddlerText(this.viewTitle);\n\t\t\t} else {\n\t\t\t\tif($tw.utils.hop(tiddler.fields,this.viewField)) {\n\t\t\t\t\tif(options.asString) {\n\t\t\t\t\t\tvalue = tiddler.getFieldString(this.viewField);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tvalue = tiddler.fields[this.viewField];\t\t\t\t\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tif(this.viewField === \"title\") {\n\t\t\t\tvalue = this.viewTitle;\n\t\t\t}\n\t\t}\n\t}\n\treturn value;\n};\n\nViewWidget.prototype.getValueAsText = function() {\n\treturn this.getValue({asString: true});\n};\n\nViewWidget.prototype.getValueAsHtmlWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/html\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsPlainWikified = function(mode) {\n\treturn this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t});\n};\n\nViewWidget.prototype.getValueAsHtmlEncodedPlainWikified = function(mode) {\n\treturn $tw.utils.htmlEncode(this.wiki.renderText(\"text/plain\",\"text/vnd.tiddlywiki\",this.getValueAsText(),{\n\t\tparseAsInline: mode !== \"block\",\n\t\tparentWidget: this\n\t}));\n};\n\nViewWidget.prototype.getValueAsHtmlEncoded = function() {\n\treturn $tw.utils.htmlEncode(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsUrlEncoded = function() {\n\treturn encodeURIComponent(this.getValueAsText());\n};\n\nViewWidget.prototype.getValueAsDoubleUrlEncoded = function() {\n\treturn encodeURIComponent(encodeURIComponent(this.getValueAsText()));\n};\n\nViewWidget.prototype.getValueAsDate = function(format) {\n\tformat = format || \"YYYY MM DD 0hh:0mm\";\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.formatDateString(value,format);\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsRelativeDate = function(format) {\n\tvar value = $tw.utils.parseDate(this.getValue());\n\tif(value && $tw.utils.isDate(value) && value.toString() !== \"Invalid Date\") {\n\t\treturn $tw.utils.getRelativeDate((new Date()) - (new Date(value))).description;\n\t} else {\n\t\treturn \"\";\n\t}\n};\n\nViewWidget.prototype.getValueAsStrippedComments = function() {\n\tvar lines = this.getValueAsText().split(\"\\n\"),\n\t\tout = [];\n\tfor(var line=0; line<lines.length; line++) {\n\t\tvar text = lines[line];\n\t\tif(!/^\\s*\\/\\/#/.test(text)) {\n\t\t\tout.push(text);\n\t\t}\n\t}\n\treturn out.join(\"\\n\");\n};\n\nViewWidget.prototype.getValueAsJsEncoded = function() {\n\treturn $tw.utils.stringify(this.getValueAsText());\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nViewWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\tif(changedAttributes.tiddler || changedAttributes.field || changedAttributes.index || changedAttributes.template || changedAttributes.format || changedTiddlers[this.viewTitle]) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\treturn false;\t\n\t}\n};\n\nexports.view = ViewWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/widget.js": {
            "title": "$:/core/modules/widgets/widget.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/widget.js\ntype: application/javascript\nmodule-type: widget\n\nWidget base class\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nCreate a widget object for a parse tree node\n\tparseTreeNode: reference to the parse tree node to be rendered\n\toptions: see below\nOptions include:\n\twiki: mandatory reference to wiki associated with this render tree\n\tparentWidget: optional reference to a parent renderer node for the context chain\n\tdocument: optional document object to use instead of global document\n*/\nvar Widget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInitialise widget properties. These steps are pulled out of the constructor so that we can reuse them in subclasses\n*/\nWidget.prototype.initialise = function(parseTreeNode,options) {\n\t// Bail if parseTreeNode is undefined, meaning  that the widget constructor was called without any arguments so that it can be subclassed\n\tif(parseTreeNode === undefined) {\n\t\treturn;\n\t}\n\toptions = options || {};\n\t// Save widget info\n\tthis.parseTreeNode = parseTreeNode;\n\tthis.wiki = options.wiki;\n\tthis.parentWidget = options.parentWidget;\n\tthis.variablesConstructor = function() {};\n\tthis.variablesConstructor.prototype = this.parentWidget ? this.parentWidget.variables : {};\n\tthis.variables = new this.variablesConstructor();\n\tthis.document = options.document;\n\tthis.attributes = {};\n\tthis.children = [];\n\tthis.domNodes = [];\n\tthis.eventListeners = {};\n\t// Hashmap of the widget classes\n\tif(!this.widgetClasses) {\n\t\t// Get widget classes\n\t\tWidget.prototype.widgetClasses = $tw.modules.applyMethods(\"widget\");\n\t\t// Process any subclasses\n\t\t$tw.modules.forEachModuleOfType(\"widget-subclass\",function(title,module) {\n\t\t\tif(module.baseClass) {\n\t\t\t\tvar baseClass = Widget.prototype.widgetClasses[module.baseClass];\n\t\t\t\tif(!baseClass) {\n\t\t\t\t\tthrow \"Module '\" + title + \"' is attemping to extend a non-existent base class '\" + module.baseClass + \"'\";\n\t\t\t\t}\n\t\t\t\tvar subClass = module.constructor;\n\t\t\t\tsubClass.prototype = new baseClass();\n\t\t\t\t$tw.utils.extend(subClass.prototype,module.prototype);\n\t\t\t\tWidget.prototype.widgetClasses[module.name || module.baseClass] = subClass;\n\t\t\t}\n\t\t});\n\t}\n};\n\n/*\nRender this widget into the DOM\n*/\nWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWidget.prototype.execute = function() {\n\tthis.makeChildWidgets();\n};\n\n/*\nSet the value of a context variable\nname: name of the variable\nvalue: value of the variable\nparams: array of {name:, default:} for each parameter\nisMacroDefinition: true if the variable is set via a \\define macro pragma (and hence should have variable substitution performed)\n*/\nWidget.prototype.setVariable = function(name,value,params,isMacroDefinition) {\n\tthis.variables[name] = {value: value, params: params, isMacroDefinition: !!isMacroDefinition};\n};\n\n/*\nGet the prevailing value of a context variable\nname: name of variable\noptions: see below\nOptions include\nparams: array of {name:, value:} for each parameter\ndefaultValue: default value if the variable is not defined\n\nReturns an object with the following fields:\n\nparams: array of {name:,value:} of parameters passed to wikitext variables\ntext: text of variable, with parameters properly substituted\n*/\nWidget.prototype.getVariableInfo = function(name,options) {\n\toptions = options || {};\n\tvar actualParams = options.params || [],\n\t\tparentWidget = this.parentWidget;\n\t// Check for the variable defined in the parent widget (or an ancestor in the prototype chain)\n\tif(parentWidget && name in parentWidget.variables) {\n\t\tvar variable = parentWidget.variables[name],\n\t\t\toriginalValue = variable.value,\n\t\t\tvalue = originalValue,\n\t\t\tparams = this.resolveVariableParameters(variable.params,actualParams);\n\t\t// Substitute any parameters specified in the definition\n\t\t$tw.utils.each(params,function(param) {\n\t\t\tvalue = $tw.utils.replaceString(value,new RegExp(\"\\\\$\" + $tw.utils.escapeRegExp(param.name) + \"\\\\$\",\"mg\"),param.value);\n\t\t});\n\t\t// Only substitute variable references if this variable was defined with the \\define pragma\n\t\tif(variable.isMacroDefinition) {\n\t\t\tvalue = this.substituteVariableReferences(value);\t\t\t\n\t\t}\n\t\treturn {\n\t\t\ttext: value,\n\t\t\tparams: params,\n\t\t\tsrcVariable: variable,\n\t\t\tisCacheable: originalValue === value\n\t\t};\n\t}\n\t// If the variable doesn't exist in the parent widget then look for a macro module\n\treturn {\n\t\ttext: this.evaluateMacroModule(name,actualParams,options.defaultValue)\n\t};\n};\n\n/*\nSimplified version of getVariableInfo() that just returns the text\n*/\nWidget.prototype.getVariable = function(name,options) {\n\treturn this.getVariableInfo(name,options).text;\n};\n\nWidget.prototype.resolveVariableParameters = function(formalParams,actualParams) {\n\tformalParams = formalParams || [];\n\tactualParams = actualParams || [];\n\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\tparamInfo, paramValue,\n\t\tresults = [];\n\t// Step through each of the parameters in the macro definition\n\tfor(var p=0; p<formalParams.length; p++) {\n\t\t// Check if we've got a macro call parameter with the same name\n\t\tparamInfo = formalParams[p];\n\t\tparamValue = undefined;\n\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t}\n\t\t}\n\t\t// If not, use the next available anonymous macro call parameter\n\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\tnextAnonParameter++;\n\t\t}\n\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t}\n\t\t// If we've still not got a value, use the default, if any\n\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t// Store the parameter name and value\n\t\tresults.push({name: paramInfo.name, value: paramValue});\n\t}\n\treturn results;\n};\n\nWidget.prototype.substituteVariableReferences = function(text) {\n\tvar self = this;\n\treturn (text || \"\").replace(/\\$\\(([^\\)\\$]+)\\)\\$/g,function(match,p1,offset,string) {\n\t\treturn self.getVariable(p1,{defaultValue: \"\"});\n\t});\n};\n\nWidget.prototype.evaluateMacroModule = function(name,actualParams,defaultValue) {\n\tif($tw.utils.hop($tw.macros,name)) {\n\t\tvar macro = $tw.macros[name],\n\t\t\targs = [];\n\t\tif(macro.params.length > 0) {\n\t\t\tvar nextAnonParameter = 0, // Next candidate anonymous parameter in macro call\n\t\t\t\tparamInfo, paramValue;\n\t\t\t// Step through each of the parameters in the macro definition\n\t\t\tfor(var p=0; p<macro.params.length; p++) {\n\t\t\t\t// Check if we've got a macro call parameter with the same name\n\t\t\t\tparamInfo = macro.params[p];\n\t\t\t\tparamValue = undefined;\n\t\t\t\tfor(var m=0; m<actualParams.length; m++) {\n\t\t\t\t\tif(actualParams[m].name === paramInfo.name) {\n\t\t\t\t\t\tparamValue = actualParams[m].value;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If not, use the next available anonymous macro call parameter\n\t\t\t\twhile(nextAnonParameter < actualParams.length && actualParams[nextAnonParameter].name) {\n\t\t\t\t\tnextAnonParameter++;\n\t\t\t\t}\n\t\t\t\tif(paramValue === undefined && nextAnonParameter < actualParams.length) {\n\t\t\t\t\tparamValue = actualParams[nextAnonParameter++].value;\n\t\t\t\t}\n\t\t\t\t// If we've still not got a value, use the default, if any\n\t\t\t\tparamValue = paramValue || paramInfo[\"default\"] || \"\";\n\t\t\t\t// Save the parameter\n\t\t\t\targs.push(paramValue);\n\t\t\t}\n\t\t}\n\t\telse for(var i=0; i<actualParams.length; ++i) {\n\t\t\targs.push(actualParams[i].value);\n\t\t}\n\t\treturn (macro.run.apply(this,args) || \"\").toString();\n\t} else {\n\t\treturn defaultValue;\n\t}\n};\n\n/*\nCheck whether a given context variable value exists in the parent chain\n*/\nWidget.prototype.hasVariable = function(name,value) {\n\tvar node = this;\n\twhile(node) {\n\t\tif($tw.utils.hop(node.variables,name) && node.variables[name].value === value) {\n\t\t\treturn true;\n\t\t}\n\t\tnode = node.parentWidget;\n\t}\n\treturn false;\n};\n\n/*\nConstruct a qualifying string based on a hash of concatenating the values of a given variable in the parent chain\n*/\nWidget.prototype.getStateQualifier = function(name) {\n\tthis.qualifiers = this.qualifiers || Object.create(null);\n\tname = name || \"transclusion\";\n\tif(this.qualifiers[name]) {\n\t\treturn this.qualifiers[name];\n\t} else {\n\t\tvar output = [],\n\t\t\tnode = this;\n\t\twhile(node && node.parentWidget) {\n\t\t\tif($tw.utils.hop(node.parentWidget.variables,name)) {\n\t\t\t\toutput.push(node.getVariable(name));\n\t\t\t}\n\t\t\tnode = node.parentWidget;\n\t\t}\n\t\tvar value = $tw.utils.hashString(output.join(\"\"));\n\t\tthis.qualifiers[name] = value;\n\t\treturn value;\n\t}\n};\n\n/*\nCompute the current values of the attributes of the widget. Returns a hashmap of the names of the attributes that have changed\n*/\nWidget.prototype.computeAttributes = function() {\n\tvar changedAttributes = {},\n\t\tself = this,\n\t\tvalue;\n\t$tw.utils.each(this.parseTreeNode.attributes,function(attribute,name) {\n\t\tif(attribute.type === \"filtered\") {\n\t\t\tvalue = self.wiki.filterTiddlers(attribute.filter,self)[0] || \"\";\n\t\t} else if(attribute.type === \"indirect\") {\n\t\t\tvalue = self.wiki.getTextReference(attribute.textReference,\"\",self.getVariable(\"currentTiddler\"));\n\t\t} else if(attribute.type === \"macro\") {\n\t\t\tvalue = self.getVariable(attribute.value.name,{params: attribute.value.params});\n\t\t} else { // String attribute\n\t\t\tvalue = attribute.value;\n\t\t}\n\t\t// Check whether the attribute has changed\n\t\tif(self.attributes[name] !== value) {\n\t\t\tself.attributes[name] = value;\n\t\t\tchangedAttributes[name] = true;\n\t\t}\n\t});\n\treturn changedAttributes;\n};\n\n/*\nCheck for the presence of an attribute\n*/\nWidget.prototype.hasAttribute = function(name) {\n\treturn $tw.utils.hop(this.attributes,name);\n};\n\n/*\nGet the value of an attribute\n*/\nWidget.prototype.getAttribute = function(name,defaultText) {\n\tif($tw.utils.hop(this.attributes,name)) {\n\t\treturn this.attributes[name];\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nAssign the computed attributes of the widget to a domNode\noptions include:\nexcludeEventAttributes: ignores attributes whose name begins with \"on\"\n*/\nWidget.prototype.assignAttributes = function(domNode,options) {\n\toptions = options || {};\n\tvar self = this;\n\t$tw.utils.each(this.attributes,function(v,a) {\n\t\t// Check exclusions\n\t\tif(options.excludeEventAttributes && a.substr(0,2) === \"on\") {\n\t\t\tv = undefined;\n\t\t}\n\t\tif(v !== undefined) {\n\t\t\tvar b = a.split(\":\");\n\t\t\t// Setting certain attributes can cause a DOM error (eg xmlns on the svg element)\n\t\t\ttry {\n\t\t\t\tif (b.length == 2 && b[0] == \"xlink\"){\n\t\t\t\t\tdomNode.setAttributeNS(\"http://www.w3.org/1999/xlink\",b[1],v);\n\t\t\t\t} else {\n\t\t\t\t\tdomNode.setAttributeNS(null,a,v);\n\t\t\t\t}\n\t\t\t} catch(e) {\n\t\t\t}\n\t\t}\n\t});\n};\n\n/*\nMake child widgets correspondng to specified parseTreeNodes\n*/\nWidget.prototype.makeChildWidgets = function(parseTreeNodes) {\n\tthis.children = [];\n\tvar self = this;\n\t$tw.utils.each(parseTreeNodes || (this.parseTreeNode && this.parseTreeNode.children),function(childNode) {\n\t\tself.children.push(self.makeChildWidget(childNode));\n\t});\n};\n\n/*\nConstruct the widget object for a parse tree node\n*/\nWidget.prototype.makeChildWidget = function(parseTreeNode) {\n\tvar WidgetClass = this.widgetClasses[parseTreeNode.type];\n\tif(!WidgetClass) {\n\t\tWidgetClass = this.widgetClasses.text;\n\t\tparseTreeNode = {type: \"text\", text: \"Undefined widget '\" + parseTreeNode.type + \"'\"};\n\t}\n\treturn new WidgetClass(parseTreeNode,{\n\t\twiki: this.wiki,\n\t\tvariables: {},\n\t\tparentWidget: this,\n\t\tdocument: this.document\n\t});\n};\n\n/*\nGet the next sibling of this widget\n*/\nWidget.prototype.nextSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index < this.parentWidget.children.length-1) {\n\t\t\treturn this.parentWidget.children[index+1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nGet the previous sibling of this widget\n*/\nWidget.prototype.previousSibling = function() {\n\tif(this.parentWidget) {\n\t\tvar index = this.parentWidget.children.indexOf(this);\n\t\tif(index !== -1 && index > 0) {\n\t\t\treturn this.parentWidget.children[index-1];\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRender the children of this widget into the DOM\n*/\nWidget.prototype.renderChildren = function(parent,nextSibling) {\n\tvar children = this.children;\n\tfor(var i = 0; i < children.length; i++) {\n\t\tchildren[i].render(parent,nextSibling);\n\t};\n};\n\n/*\nAdd a list of event listeners from an array [{type:,handler:},...]\n*/\nWidget.prototype.addEventListeners = function(listeners) {\n\tvar self = this;\n\t$tw.utils.each(listeners,function(listenerInfo) {\n\t\tself.addEventListener(listenerInfo.type,listenerInfo.handler);\n\t});\n};\n\n/*\nAdd an event listener\n*/\nWidget.prototype.addEventListener = function(type,handler) {\n\tvar self = this;\n\tif(typeof handler === \"string\") { // The handler is a method name on this widget\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn self[handler].call(self,event);\n\t\t};\n\t} else { // The handler is a function\n\t\tthis.eventListeners[type] = function(event) {\n\t\t\treturn handler.call(self,event);\n\t\t};\n\t}\n};\n\n/*\nDispatch an event to a widget. If the widget doesn't handle the event then it is also dispatched to the parent widget\n*/\nWidget.prototype.dispatchEvent = function(event) {\n\tevent.widget = event.widget || this;\n\t// Dispatch the event if this widget handles it\n\tvar listener = this.eventListeners[event.type];\n\tif(listener) {\n\t\t// Don't propagate the event if the listener returned false\n\t\tif(!listener(event)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Dispatch the event to the parent widget\n\tif(this.parentWidget) {\n\t\treturn this.parentWidget.dispatchEvent(event);\n\t}\n\treturn true;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWidget.prototype.refresh = function(changedTiddlers) {\n\treturn this.refreshChildren(changedTiddlers);\n};\n\n/*\nRebuild a previously rendered widget\n*/\nWidget.prototype.refreshSelf = function() {\n\tvar nextSibling = this.findNextSiblingDomNode();\n\tthis.removeChildDomNodes();\n\tthis.render(this.parentDomNode,nextSibling);\n};\n\n/*\nRefresh all the children of a widget\n*/\nWidget.prototype.refreshChildren = function(changedTiddlers) {\n\tvar children = this.children,\n\t\trefreshed = false;\n\tfor (var i = 0; i < children.length; i++) {\n\t\trefreshed = children[i].refresh(changedTiddlers) || refreshed;\n\t}\n\treturn refreshed;\n};\n\n/*\nFind the next sibling in the DOM to this widget. This is done by scanning the widget tree through all next siblings and their descendents that share the same parent DOM node\n*/\nWidget.prototype.findNextSiblingDomNode = function(startIndex) {\n\t// Refer to this widget by its index within its parents children\n\tvar parent = this.parentWidget,\n\t\tindex = startIndex !== undefined ? startIndex : parent.children.indexOf(this);\nif(index === -1) {\n\tthrow \"node not found in parents children\";\n}\n\t// Look for a DOM node in the later siblings\n\twhile(++index < parent.children.length) {\n\t\tvar domNode = parent.children[index].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\t// Go back and look for later siblings of our parent if it has the same parent dom node\n\tvar grandParent = parent.parentWidget;\n\tif(grandParent && parent.parentDomNode === this.parentDomNode) {\n\t\tindex = grandParent.children.indexOf(parent);\n\t\tif(index !== -1) {\n\t\t\treturn parent.findNextSiblingDomNode(index);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nFind the first DOM node generated by a widget or its children\n*/\nWidget.prototype.findFirstDomNode = function() {\n\t// Return the first dom node of this widget, if we've got one\n\tif(this.domNodes.length > 0) {\n\t\treturn this.domNodes[0];\n\t}\n\t// Otherwise, recursively call our children\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar domNode = this.children[t].findFirstDomNode();\n\t\tif(domNode) {\n\t\t\treturn domNode;\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRemove any DOM nodes created by this widget or its children\n*/\nWidget.prototype.removeChildDomNodes = function() {\n\t// If this widget has directly created DOM nodes, delete them and exit. This assumes that any child widgets are contained within the created DOM nodes, which would normally be the case\n\tif(this.domNodes.length > 0) {\n\t\t$tw.utils.each(this.domNodes,function(domNode) {\n\t\t\tdomNode.parentNode.removeChild(domNode);\n\t\t});\n\t\tthis.domNodes = [];\n\t} else {\n\t\t// Otherwise, ask the child widgets to delete their DOM nodes\n\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\tchildWidget.removeChildDomNodes();\n\t\t});\n\t}\n};\n\n/*\nInvoke the action widgets that are descendents of the current widget.\n*/\nWidget.prototype.invokeActions = function(triggeringWidget,event) {\n\tvar handled = false;\n\t// For each child widget\n\tfor(var t=0; t<this.children.length; t++) {\n\t\tvar child = this.children[t];\n\t\t// Invoke the child if it is an action widget\n\t\tif(child.invokeAction) {\n\t\t\tchild.refreshSelf();\n\t\t\tif(child.invokeAction(triggeringWidget,event)) {\n\t\t\t\thandled = true;\n\t\t\t}\n\t\t}\n\t\t// Propagate through through the child if it permits it\n\t\tif(child.allowActionPropagation() && child.invokeActions(triggeringWidget,event)) {\n\t\t\thandled = true;\n\t\t}\n\t}\n\treturn handled;\n};\n\n/*\nInvoke the action widgets defined in a string\n*/\nWidget.prototype.invokeActionString = function(actions,triggeringWidget,event,variables) {\n\tactions = actions || \"\";\n\tvar parser = this.wiki.parseText(\"text/vnd.tiddlywiki\",actions,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document\n\t\t}),\n\t\twidgetNode = this.wiki.makeWidget(parser,{\n\t\t\tparentWidget: this,\n\t\t\tdocument: this.document,\n\t\t\tvariables: variables\n\t\t});\n\tvar container = this.document.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn widgetNode.invokeActions(this,event);\n};\n\n/*\nExecute action tiddlers by tag\n*/\nWidget.prototype.invokeActionsByTag = function(tag,event,variables) {\n\tvar self = this;\n\t$tw.utils.each(self.wiki.filterTiddlers(\"[all[shadows+tiddlers]tag[\" + tag + \"]!has[draft.of]]\"),function(title) {\n\t\tself.invokeActionString(self.wiki.getTiddlerText(title),self,event,variables);\n\t});\n};\n\nWidget.prototype.allowActionPropagation = function() {\n\treturn true;\n};\n\nexports.widget = Widget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/widgets/wikify.js": {
            "title": "$:/core/modules/widgets/wikify.js",
            "text": "/*\\\ntitle: $:/core/modules/widgets/wikify.js\ntype: application/javascript\nmodule-type: widget\n\nWidget to wikify text into a variable\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar Widget = require(\"$:/core/modules/widgets/widget.js\").widget;\n\nvar WikifyWidget = function(parseTreeNode,options) {\n\tthis.initialise(parseTreeNode,options);\n};\n\n/*\nInherit from the base widget class\n*/\nWikifyWidget.prototype = new Widget();\n\n/*\nRender this widget into the DOM\n*/\nWikifyWidget.prototype.render = function(parent,nextSibling) {\n\tthis.parentDomNode = parent;\n\tthis.computeAttributes();\n\tthis.execute();\n\tthis.renderChildren(parent,nextSibling);\n};\n\n/*\nCompute the internal state of the widget\n*/\nWikifyWidget.prototype.execute = function() {\n\t// Get our parameters\n\tthis.wikifyName = this.getAttribute(\"name\");\n\tthis.wikifyText = this.getAttribute(\"text\");\n\tthis.wikifyType = this.getAttribute(\"type\");\n\tthis.wikifyMode = this.getAttribute(\"mode\",\"block\");\n\tthis.wikifyOutput = this.getAttribute(\"output\",\"text\");\n\t// Create the parse tree\n\tthis.wikifyParser = this.wiki.parseText(this.wikifyType,this.wikifyText,{\n\t\t\tparseAsInline: this.wikifyMode === \"inline\"\n\t\t});\n\t// Create the widget tree \n\tthis.wikifyWidgetNode = this.wiki.makeWidget(this.wikifyParser,{\n\t\t\tdocument: $tw.fakeDocument,\n\t\t\tparentWidget: this\n\t\t});\n\t// Render the widget tree to the container\n\tthis.wikifyContainer = $tw.fakeDocument.createElement(\"div\");\n\tthis.wikifyWidgetNode.render(this.wikifyContainer,null);\n\tthis.wikifyResult = this.getResult();\n\t// Set context variable\n\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t// Construct the child widgets\n\tthis.makeChildWidgets();\n};\n\n/*\nReturn the result string\n*/\nWikifyWidget.prototype.getResult = function() {\n\tvar result;\n\tswitch(this.wikifyOutput) {\n\t\tcase \"text\":\n\t\t\tresult = this.wikifyContainer.textContent;\n\t\t\tbreak;\n\t\tcase \"formattedtext\":\n\t\t\tresult = this.wikifyContainer.formattedTextContent;\n\t\t\tbreak;\n\t\tcase \"html\":\n\t\t\tresult = this.wikifyContainer.innerHTML;\n\t\t\tbreak;\n\t\tcase \"parsetree\":\n\t\t\tresult = JSON.stringify(this.wikifyParser.tree,0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t\tcase \"widgettree\":\n\t\t\tresult = JSON.stringify(this.getWidgetTree(),0,$tw.config.preferences.jsonSpaces);\n\t\t\tbreak;\n\t}\n\treturn result;\n};\n\n/*\nReturn a string of the widget tree\n*/\nWikifyWidget.prototype.getWidgetTree = function() {\n\tvar copyNode = function(widgetNode,resultNode) {\n\t\t\tvar type = widgetNode.parseTreeNode.type;\n\t\t\tresultNode.type = type;\n\t\t\tswitch(type) {\n\t\t\t\tcase \"element\":\n\t\t\t\t\tresultNode.tag = widgetNode.parseTreeNode.tag;\n\t\t\t\t\tbreak;\n\t\t\t\tcase \"text\":\n\t\t\t\t\tresultNode.text = widgetNode.parseTreeNode.text;\n\t\t\t\t\tbreak;\t\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.attributes || {}).length > 0) {\n\t\t\t\tresultNode.attributes = {};\n\t\t\t\t$tw.utils.each(widgetNode.attributes,function(attr,attrName) {\n\t\t\t\t\tresultNode.attributes[attrName] = widgetNode.getAttribute(attrName);\n\t\t\t\t});\n\t\t\t}\n\t\t\tif(Object.keys(widgetNode.children || {}).length > 0) {\n\t\t\t\tresultNode.children = [];\n\t\t\t\t$tw.utils.each(widgetNode.children,function(widgetChildNode) {\n\t\t\t\t\tvar node = {};\n\t\t\t\t\tresultNode.children.push(node);\n\t\t\t\t\tcopyNode(widgetChildNode,node);\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\tresults = {};\n\tcopyNode(this.wikifyWidgetNode,results);\n\treturn results;\n};\n\n/*\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\n*/\nWikifyWidget.prototype.refresh = function(changedTiddlers) {\n\tvar changedAttributes = this.computeAttributes();\n\t// Refresh ourselves entirely if any of our attributes have changed\n\tif(changedAttributes.name || changedAttributes.text || changedAttributes.type || changedAttributes.mode || changedAttributes.output) {\n\t\tthis.refreshSelf();\n\t\treturn true;\n\t} else {\n\t\t// Refresh the widget tree\n\t\tif(this.wikifyWidgetNode.refresh(changedTiddlers)) {\n\t\t\t// Check if there was any change\n\t\t\tvar result = this.getResult();\n\t\t\tif(result !== this.wikifyResult) {\n\t\t\t\t// If so, save the change\n\t\t\t\tthis.wikifyResult = result;\n\t\t\t\tthis.setVariable(this.wikifyName,this.wikifyResult);\n\t\t\t\t// Refresh each of our child widgets\n\t\t\t\t$tw.utils.each(this.children,function(childWidget) {\n\t\t\t\t\tchildWidget.refreshSelf();\n\t\t\t\t});\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\t\t// Just refresh the children\n\t\treturn this.refreshChildren(changedTiddlers);\n\t}\n};\n\nexports.wikify = WikifyWidget;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/core/modules/wiki-bulkops.js": {
            "title": "$:/core/modules/wiki-bulkops.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki-bulkops.js\ntype: application/javascript\nmodule-type: wikimethod\n\nBulk tiddler operations such as rename.\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\n/*\nRename a tiddler, and relink any tags or lists that reference it.\n*/\nfunction renameTiddler(fromTitle,toTitle,options) {\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\t// Rename the tiddler itself\n\t\tvar oldTiddler = this.getTiddler(fromTitle),\n\t\t\tnewTiddler = new $tw.Tiddler(oldTiddler,{title: toTitle},this.getModificationFields());\n\t\tnewTiddler = $tw.hooks.invokeHook(\"th-renaming-tiddler\",newTiddler,oldTiddler);\n\t\tthis.addTiddler(newTiddler);\n\t\tthis.deleteTiddler(fromTitle);\n\t\t// Rename any tags or lists that reference it\n\t\tthis.relinkTiddler(fromTitle,toTitle,options)\n\t}\n}\n\n/*\nRelink any tags or lists that reference a given tiddler\n*/\nfunction relinkTiddler(fromTitle,toTitle,options) {\n\tvar self = this;\n\tfromTitle = (fromTitle || \"\").trim();\n\ttoTitle = (toTitle || \"\").trim();\n\toptions = options || {};\n\tif(fromTitle && toTitle && fromTitle !== toTitle) {\n\t\tthis.each(function(tiddler,title) {\n\t\t\tvar type = tiddler.fields.type || \"\";\n\t\t\t// Don't touch plugins or JavaScript modules\n\t\t\tif(!tiddler.fields[\"plugin-type\"] && type !== \"application/javascript\") {\n\t\t\t\tvar tags = tiddler.fields.tags ? tiddler.fields.tags.slice(0) : undefined,\n\t\t\t\t\tlist = tiddler.fields.list ? tiddler.fields.list.slice(0) : undefined,\n\t\t\t\t\tisModified = false;\n\t\t\t\tif(!options.dontRenameInTags) {\n\t\t\t\t\t// Rename tags\n\t\t\t\t\t$tw.utils.each(tags,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming tag '\" + tags[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\ttags[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(!options.dontRenameInLists) {\n\t\t\t\t\t// Rename lists\n\t\t\t\t\t$tw.utils.each(list,function (title,index) {\n\t\t\t\t\t\tif(title === fromTitle) {\nconsole.log(\"Renaming list item '\" + list[index] + \"' to '\" + toTitle + \"' of tiddler '\" + tiddler.fields.title + \"'\");\n\t\t\t\t\t\t\tlist[index] = toTitle;\n\t\t\t\t\t\t\tisModified = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif(isModified) {\n\t\t\t\t\tvar newTiddler = new $tw.Tiddler(tiddler,{tags: tags, list: list},self.getModificationFields())\n\t\t\t\t\tnewTiddler = $tw.hooks.invokeHook(\"th-relinking-tiddler\",newTiddler,tiddler);\n\t\t\t\t\tself.addTiddler(newTiddler);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n};\n\nexports.renameTiddler = renameTiddler;\nexports.relinkTiddler = relinkTiddler;\n\n})();\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/core/modules/wiki.js": {
            "title": "$:/core/modules/wiki.js",
            "text": "/*\\\ntitle: $:/core/modules/wiki.js\ntype: application/javascript\nmodule-type: wikimethod\n\nExtension methods for the $tw.Wiki object\n\nAdds the following properties to the wiki object:\n\n* `eventListeners` is a hashmap by type of arrays of listener functions\n* `changedTiddlers` is a hashmap describing changes to named tiddlers since wiki change events were last dispatched. Each entry is a hashmap containing two fields:\n\tmodified: true/false\n\tdeleted: true/false\n* `changeCount` is a hashmap by tiddler title containing a numerical index that starts at zero and is incremented each time a tiddler is created changed or deleted\n* `caches` is a hashmap by tiddler title containing a further hashmap of named cache objects. Caches are automatically cleared when a tiddler is modified or deleted\n* `globalCache` is a hashmap by cache name of cache objects that are cleared whenever any tiddler change occurs\n\n\\*/\n(function(){\n\n/*jslint node: true, browser: true */\n/*global $tw: false */\n\"use strict\";\n\nvar widget = require(\"$:/core/modules/widgets/widget.js\");\n\nvar USER_NAME_TITLE = \"$:/status/UserName\",\n\tTIMESTAMP_DISABLE_TITLE = \"$:/config/TimestampDisable\";\n\n/*\nAdd available indexers to this wiki\n*/\nexports.addIndexersToWiki = function() {\n\tvar self = this;\n\t$tw.utils.each($tw.modules.applyMethods(\"indexer\"),function(Indexer,name) {\n\t\tself.addIndexer(new Indexer(self),name);\n\t});\n};\n\n/*\nGet the value of a text reference. Text references can have any of these forms:\n\t<tiddlertitle>\n\t<tiddlertitle>!!<fieldname>\n\t!!<fieldname> - specifies a field of the current tiddlers\n\t<tiddlertitle>##<index>\n*/\nexports.getTextReference = function(textRef,defaultText,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tif(tr.field) {\n\t\tvar tiddler = this.getTiddler(title);\n\t\tif(tr.field === \"title\") { // Special case so we can return the title of a non-existent tiddler\n\t\t\treturn title;\n\t\t} else if(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\treturn tiddler.getFieldString(tr.field);\n\t\t} else {\n\t\t\treturn defaultText;\n\t\t}\n\t} else if(tr.index) {\n\t\treturn this.extractTiddlerDataItem(title,tr.index,defaultText);\n\t} else {\n\t\treturn this.getTiddlerText(title,defaultText);\n\t}\n};\n\nexports.setTextReference = function(textRef,value,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle = tr.title || currTiddlerTitle;\n\tthis.setText(title,tr.field,tr.index,value);\n};\n\nexports.setText = function(title,field,index,value,options) {\n\toptions = options || {};\n\tvar creationFields = options.suppressTimestamp ? {} : this.getCreationFields(),\n\t\tmodificationFields = options.suppressTimestamp ? {} : this.getModificationFields();\n\t// Check if it is a reference to a tiddler field\n\tif(index) {\n\t\tvar data = this.getTiddlerData(title,Object.create(null));\n\t\tif(value !== undefined) {\n\t\t\tdata[index] = value;\n\t\t} else {\n\t\t\tdelete data[index];\n\t\t}\n\t\tthis.setTiddlerData(title,data,modificationFields);\n\t} else {\n\t\tvar tiddler = this.getTiddler(title),\n\t\t\tfields = {title: title};\n\t\tfields[field || \"text\"] = value;\n\t\tthis.addTiddler(new $tw.Tiddler(creationFields,tiddler,fields,modificationFields));\n\t}\n};\n\nexports.deleteTextReference = function(textRef,currTiddlerTitle) {\n\tvar tr = $tw.utils.parseTextReference(textRef),\n\t\ttitle,tiddler,fields;\n\t// Check if it is a reference to a tiddler\n\tif(tr.title && !tr.field) {\n\t\tthis.deleteTiddler(tr.title);\n\t// Else check for a field reference\n\t} else if(tr.field) {\n\t\ttitle = tr.title || currTiddlerTitle;\n\t\ttiddler = this.getTiddler(title);\n\t\tif(tiddler && $tw.utils.hop(tiddler.fields,tr.field)) {\n\t\t\tfields = Object.create(null);\n\t\t\tfields[tr.field] = undefined;\n\t\t\tthis.addTiddler(new $tw.Tiddler(tiddler,fields,this.getModificationFields()));\n\t\t}\n\t}\n};\n\nexports.addEventListener = function(type,listener) {\n\tthis.eventListeners = this.eventListeners || {};\n\tthis.eventListeners[type] = this.eventListeners[type]  || [];\n\tthis.eventListeners[type].push(listener);\t\n};\n\nexports.removeEventListener = function(type,listener) {\n\tvar listeners = this.eventListeners[type];\n\tif(listeners) {\n\t\tvar p = listeners.indexOf(listener);\n\t\tif(p !== -1) {\n\t\t\tlisteners.splice(p,1);\n\t\t}\n\t}\n};\n\nexports.dispatchEvent = function(type /*, args */) {\n\tvar args = Array.prototype.slice.call(arguments,1),\n\t\tlisteners = this.eventListeners[type];\n\tif(listeners) {\n\t\tfor(var p=0; p<listeners.length; p++) {\n\t\t\tvar listener = listeners[p];\n\t\t\tlistener.apply(listener,args);\n\t\t}\n\t}\n};\n\n/*\nCauses a tiddler to be marked as changed, incrementing the change count, and triggers event handlers.\nThis method should be called after the changes it describes have been made to the wiki.tiddlers[] array.\n\ttitle: Title of tiddler\n\tisDeleted: defaults to false (meaning the tiddler has been created or modified),\n\t\ttrue if the tiddler has been deleted\n*/\nexports.enqueueTiddlerEvent = function(title,isDeleted) {\n\t// Record the touch in the list of changed tiddlers\n\tthis.changedTiddlers = this.changedTiddlers || Object.create(null);\n\tthis.changedTiddlers[title] = this.changedTiddlers[title] || Object.create(null);\n\tthis.changedTiddlers[title][isDeleted ? \"deleted\" : \"modified\"] = true;\n\t// Increment the change count\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\tthis.changeCount[title]++;\n\t} else {\n\t\tthis.changeCount[title] = 1;\n\t}\n\t// Trigger events\n\tthis.eventListeners = this.eventListeners || {};\n\tif(!this.eventsTriggered) {\n\t\tvar self = this;\n\t\t$tw.utils.nextTick(function() {\n\t\t\tvar changes = self.changedTiddlers;\n\t\t\tself.changedTiddlers = Object.create(null);\n\t\t\tself.eventsTriggered = false;\n\t\t\tif($tw.utils.count(changes) > 0) {\n\t\t\t\tself.dispatchEvent(\"change\",changes);\n\t\t\t}\n\t\t});\n\t\tthis.eventsTriggered = true;\n\t}\n};\n\nexports.getSizeOfTiddlerEventQueue = function() {\n\treturn $tw.utils.count(this.changedTiddlers);\n};\n\nexports.clearTiddlerEventQueue = function() {\n\tthis.changedTiddlers = Object.create(null);\n\tthis.changeCount = Object.create(null);\n};\n\nexports.getChangeCount = function(title) {\n\tthis.changeCount = this.changeCount || Object.create(null);\n\tif($tw.utils.hop(this.changeCount,title)) {\n\t\treturn this.changeCount[title];\n\t} else {\n\t\treturn 0;\n\t}\n};\n\n/*\nGenerate an unused title from the specified base\n*/\nexports.generateNewTitle = function(baseTitle,options) {\n\toptions = options || {};\n\tvar c = 0,\n\t\ttitle = baseTitle;\n\twhile(this.tiddlerExists(title) || this.isShadowTiddler(title) || this.findDraft(title)) {\n\t\ttitle = baseTitle + \n\t\t\t(options.prefix || \" \") + \n\t\t\t(++c);\n\t}\n\treturn title;\n};\n\nexports.isSystemTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/\") === 0;\n};\n\nexports.isTemporaryTiddler = function(title) {\n\treturn title && title.indexOf(\"$:/temp/\") === 0;\n};\n\nexports.isImageTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.flags.indexOf(\"image\") !== -1;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.isBinaryTiddler = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\t\t\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type || \"text/vnd.tiddlywiki\"];\n\t\treturn !!contentTypeInfo && contentTypeInfo.encoding === \"base64\";\n\t} else {\n\t\treturn null;\n\t}\n};\n\n/*\nLike addTiddler() except it will silently reject any plugin tiddlers that are older than the currently loaded version. Returns true if the tiddler was imported\n*/\nexports.importTiddler = function(tiddler) {\n\tvar existingTiddler = this.getTiddler(tiddler.fields.title);\n\t// Check if we're dealing with a plugin\n\tif(tiddler && tiddler.hasField(\"plugin-type\") && tiddler.hasField(\"version\") && existingTiddler && existingTiddler.hasField(\"plugin-type\") && existingTiddler.hasField(\"version\")) {\n\t\t// Reject the incoming plugin if it is older\n\t\tif(!$tw.utils.checkVersions(tiddler.fields.version,existingTiddler.fields.version)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\t// Fall through to adding the tiddler\n\tthis.addTiddler(tiddler);\n\treturn true;\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is created\n*/\nexports.getCreationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = {\n\t\t\t\tcreated: new Date()\n\t\t\t},\n\t\t\tcreator = this.getTiddlerText(USER_NAME_TITLE);\n\t\tif(creator) {\n\t\t\tfields.creator = creator;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a hashmap of the fields that should be set when a tiddler is modified\n*/\nexports.getModificationFields = function() {\n\tif(this.getTiddlerText(TIMESTAMP_DISABLE_TITLE,\"\").toLowerCase() !== \"yes\") {\n\t\tvar fields = Object.create(null),\n\t\t\tmodifier = this.getTiddlerText(USER_NAME_TITLE);\n\t\tfields.modified = new Date();\n\t\tif(modifier) {\n\t\t\tfields.modifier = modifier;\n\t\t}\n\t\treturn fields;\n\t} else {\n\t\treturn {};\n\t}\n};\n\n/*\nReturn a sorted array of tiddler titles.  Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.getTiddlers = function(options) {\n\toptions = options || Object.create(null);\n\tvar self = this,\n\t\tsortField = options.sortField || \"title\",\n\t\ttiddlers = [], t, titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tif(options.includeSystem || !self.isSystemTiddler(title)) {\n\t\t\tif(!options.excludeTag || !tiddler.hasTag(options.excludeTag)) {\n\t\t\t\ttiddlers.push(tiddler);\n\t\t\t}\n\t\t}\n\t});\n\ttiddlers.sort(function(a,b) {\n\t\tvar aa = a.fields[sortField].toLowerCase() || \"\",\n\t\t\tbb = b.fields[sortField].toLowerCase() || \"\";\n\t\tif(aa < bb) {\n\t\t\treturn -1;\n\t\t} else {\n\t\t\tif(aa > bb) {\n\t\t\t\treturn 1;\n\t\t\t} else {\n\t\t\t\treturn 0;\n\t\t\t}\n\t\t}\n\t});\n\tfor(t=0; t<tiddlers.length; t++) {\n\t\ttitles.push(tiddlers[t].fields.title);\n\t}\n\treturn titles;\n};\n\nexports.countTiddlers = function(excludeTag) {\n\tvar tiddlers = this.getTiddlers({excludeTag: excludeTag});\n\treturn $tw.utils.count(tiddlers);\n};\n\n/*\nReturns a function iterator(callback) that iterates through the specified titles, and invokes the callback with callback(tiddler,title)\n*/\nexports.makeTiddlerIterator = function(titles) {\n\tvar self = this;\n\tif(!$tw.utils.isArray(titles)) {\n\t\ttitles = Object.keys(titles);\n\t} else {\n\t\ttitles = titles.slice(0);\n\t}\n\treturn function(callback) {\n\t\ttitles.forEach(function(title) {\n\t\t\tcallback(self.getTiddler(title),title);\n\t\t});\n\t};\n};\n\n/*\nSort an array of tiddler titles by a specified field\n\ttitles: array of titles (sorted in place)\n\tsortField: name of field to sort by\n\tisDescending: true if the sort should be descending\n\tisCaseSensitive: true if the sort should consider upper and lower case letters to be different\n*/\nexports.sortTiddlers = function(titles,sortField,isDescending,isCaseSensitive,isNumeric,isAlphaNumeric) {\n\tvar self = this;\n\ttitles.sort(function(a,b) {\n\t\tvar x,y,\n\t\t\tcompareNumbers = function(x,y) {\n\t\t\t\tvar result = \n\t\t\t\t\tisNaN(x) && !isNaN(y) ? (isDescending ? -1 : 1) :\n\t\t\t\t\t!isNaN(x) && isNaN(y) ? (isDescending ? 1 : -1) :\n\t\t\t\t\t\t\t\t\t\t\t(isDescending ? y - x :  x - y);\n\t\t\t\treturn result;\n\t\t\t};\n\t\tif(sortField !== \"title\") {\n\t\t\tvar tiddlerA = self.getTiddler(a),\n\t\t\t\ttiddlerB = self.getTiddler(b);\n\t\t\tif(tiddlerA) {\n\t\t\t\ta = tiddlerA.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\ta = \"\";\n\t\t\t}\n\t\t\tif(tiddlerB) {\n\t\t\t\tb = tiddlerB.fields[sortField] || \"\";\n\t\t\t} else {\n\t\t\t\tb = \"\";\n\t\t\t}\n\t\t}\n\t\tx = Number(a);\n\t\ty = Number(b);\n\t\tif(isNumeric && (!isNaN(x) || !isNaN(y))) {\n\t\t\treturn compareNumbers(x,y);\n\t\t} else if($tw.utils.isDate(a) && $tw.utils.isDate(b)) {\n\t\t\treturn isDescending ? b - a : a - b;\n\t\t} else if(isAlphaNumeric) {\n\t\t\treturn isDescending ? b.localeCompare(a,undefined,{numeric: true,sensitivity: \"base\"}) : a.localeCompare(b,undefined,{numeric: true,sensitivity: \"base\"});\n\t\t} else {\n\t\t\ta = String(a);\n\t\t\tb = String(b);\n\t\t\tif(!isCaseSensitive) {\n\t\t\t\ta = a.toLowerCase();\n\t\t\t\tb = b.toLowerCase();\n\t\t\t}\n\t\t\treturn isDescending ? b.localeCompare(a) : a.localeCompare(b);\n\t\t}\n\t});\n};\n\n/*\nFor every tiddler invoke a callback(title,tiddler) with `this` set to the wiki object. Options include:\nsortField: field to sort by\nexcludeTag: tag to exclude\nincludeSystem: whether to include system tiddlers (defaults to false)\n*/\nexports.forEachTiddler = function(/* [options,]callback */) {\n\tvar arg = 0,\n\t\toptions = arguments.length >= 2 ? arguments[arg++] : {},\n\t\tcallback = arguments[arg++],\n\t\ttitles = this.getTiddlers(options),\n\t\tt, tiddler;\n\tfor(t=0; t<titles.length; t++) {\n\t\ttiddler = this.getTiddler(titles[t]);\n\t\tif(tiddler) {\n\t\t\tcallback.call(this,tiddler.fields.title,tiddler);\n\t\t}\n\t}\n};\n\n/*\nReturn an array of tiddler titles that are directly linked within the given parse tree\n */\nexports.extractLinks = function(parseTreeRoot) {\n\t// Count up the links\n\tvar links = [],\n\t\tcheckParseTree = function(parseTree) {\n\t\t\tfor(var t=0; t<parseTree.length; t++) {\n\t\t\t\tvar parseTreeNode = parseTree[t];\n\t\t\t\tif(parseTreeNode.type === \"link\" && parseTreeNode.attributes.to && parseTreeNode.attributes.to.type === \"string\") {\n\t\t\t\t\tvar value = parseTreeNode.attributes.to.value;\n\t\t\t\t\tif(links.indexOf(value) === -1) {\n\t\t\t\t\t\tlinks.push(value);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif(parseTreeNode.children) {\n\t\t\t\t\tcheckParseTree(parseTreeNode.children);\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\tcheckParseTree(parseTreeRoot);\n\treturn links;\n};\n\n/*\nReturn an array of tiddler titles that are directly linked from the specified tiddler\n*/\nexports.getTiddlerLinks = function(title) {\n\tvar self = this;\n\t// We'll cache the links so they only get computed if the tiddler changes\n\treturn this.getCacheForTiddler(title,\"links\",function() {\n\t\t// Parse the tiddler\n\t\tvar parser = self.parseTiddler(title);\n\t\tif(parser) {\n\t\t\treturn self.extractLinks(parser.tree);\n\t\t}\n\t\treturn [];\n\t});\n};\n\n/*\nReturn an array of tiddler titles that link to the specified tiddler\n*/\nexports.getTiddlerBacklinks = function(targetTitle) {\n\tvar self = this,\n\t\tbacklinksIndexer = this.getIndexer(\"BacklinksIndexer\"),\n\t\tbacklinks = backlinksIndexer && backlinksIndexer.lookup(targetTitle);\n\n\tif(!backlinks) {\n\t\tbacklinks = [];\n\t\tthis.forEachTiddler(function(title,tiddler) {\n\t\t\tvar links = self.getTiddlerLinks(title);\n\t\t\tif(links.indexOf(targetTitle) !== -1) {\n\t\t\t\tbacklinks.push(title);\n\t\t\t}\n\t\t});\n\t}\n\treturn backlinks;\n};\n\n/*\nReturn a hashmap of tiddler titles that are referenced but not defined. Each value is the number of times the missing tiddler is referenced\n*/\nexports.getMissingTitles = function() {\n\tvar self = this,\n\t\tmissing = [];\n// We should cache the missing tiddler list, even if we recreate it every time any tiddler is modified\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tif((!self.tiddlerExists(link) && !self.isShadowTiddler(link)) && missing.indexOf(link) === -1) {\n\t\t\t\tmissing.push(link);\n\t\t\t}\n\t\t});\n\t});\n\treturn missing;\n};\n\nexports.getOrphanTitles = function() {\n\tvar self = this,\n\t\torphans = this.getTiddlers();\n\tthis.forEachTiddler(function(title,tiddler) {\n\t\tvar links = self.getTiddlerLinks(title);\n\t\t$tw.utils.each(links,function(link) {\n\t\t\tvar p = orphans.indexOf(link);\n\t\t\tif(p !== -1) {\n\t\t\t\torphans.splice(p,1);\n\t\t\t}\n\t\t});\n\t});\n\treturn orphans; // Todo\n};\n\n/*\nRetrieves a list of the tiddler titles that are tagged with a given tag\n*/\nexports.getTiddlersWithTag = function(tag) {\n\t// Try to use the indexer\n\tvar self = this,\n\t\ttagIndexer = this.getIndexer(\"TagIndexer\"),\n\t\tresults = tagIndexer && tagIndexer.subIndexers[3].lookup(tag);\n\tif(!results) {\n\t\t// If not available, perform a manual scan\n\t\tresults = this.getGlobalCache(\"taglist-\" + tag,function() {\n\t\t\tvar tagmap = self.getTagMap();\n\t\t\treturn self.sortByList(tagmap[tag],tag);\n\t\t});\n\t}\n\treturn results;\n};\n\n/*\nGet a hashmap by tag of arrays of tiddler titles\n*/\nexports.getTagMap = function() {\n\tvar self = this;\n\treturn this.getGlobalCache(\"tagmap\",function() {\n\t\tvar tags = Object.create(null),\n\t\t\tstoreTags = function(tagArray,title) {\n\t\t\t\tif(tagArray) {\n\t\t\t\t\tfor(var index=0; index<tagArray.length; index++) {\n\t\t\t\t\t\tvar tag = tagArray[index];\n\t\t\t\t\t\tif($tw.utils.hop(tags,tag)) {\n\t\t\t\t\t\t\ttags[tag].push(title);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\ttags[tag] = [title];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\t\t\ttitle, tiddler;\n\t\t// Collect up all the tags\n\t\tself.eachShadow(function(tiddler,title) {\n\t\t\tif(!self.tiddlerExists(title)) {\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t\t}\n\t\t});\n\t\tself.each(function(tiddler,title) {\n\t\t\tstoreTags(tiddler.fields.tags,title);\n\t\t});\n\t\treturn tags;\n\t});\n};\n\n/*\nLookup a given tiddler and return a list of all the tiddlers that include it in the specified list field\n*/\nexports.findListingsOfTiddler = function(targetTitle,fieldName) {\n\tfieldName = fieldName || \"list\";\n\tvar titles = [];\n\tthis.each(function(tiddler,title) {\n\t\tvar list = $tw.utils.parseStringArray(tiddler.fields[fieldName]);\n\t\tif(list && list.indexOf(targetTitle) !== -1) {\n\t\t\ttitles.push(title);\n\t\t}\n\t});\n\treturn titles;\n};\n\n/*\nSorts an array of tiddler titles according to an ordered list\n*/\nexports.sortByList = function(array,listTitle) {\n\tvar self = this,\n\t\treplacedTitles = Object.create(null);\n\t// Given a title, this function will place it in the correct location\n\t// within titles.\n\tfunction moveItemInList(title) {\n\t\tif(!$tw.utils.hop(replacedTitles, title)) {\n\t\t\treplacedTitles[title] = true;\n\t\t\tvar newPos = -1,\n\t\t\t\ttiddler = self.getTiddler(title);\n\t\t\tif(tiddler) {\n\t\t\t\tvar beforeTitle = tiddler.fields[\"list-before\"],\n\t\t\t\t\tafterTitle = tiddler.fields[\"list-after\"];\n\t\t\t\tif(beforeTitle === \"\") {\n\t\t\t\t\tnewPos = 0;\n\t\t\t\t} else if(afterTitle === \"\") {\n\t\t\t\t\tnewPos = titles.length;\n\t\t\t\t} else if(beforeTitle) {\n\t\t\t\t\t// if this title is placed relative\n\t\t\t\t\t// to another title, make sure that\n\t\t\t\t\t// title is placed before we place\n\t\t\t\t\t// this one.\n\t\t\t\t\tmoveItemInList(beforeTitle);\n\t\t\t\t\tnewPos = titles.indexOf(beforeTitle);\n\t\t\t\t} else if(afterTitle) {\n\t\t\t\t\t// Same deal\n\t\t\t\t\tmoveItemInList(afterTitle);\n\t\t\t\t\tnewPos = titles.indexOf(afterTitle);\n\t\t\t\t\tif(newPos >= 0) {\n\t\t\t\t\t\t++newPos;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t// If a new position is specified, let's move it\n\t\t\t\tif (newPos !== -1) {\n\t\t\t\t\t// get its current Pos, and make sure\n\t\t\t\t\t// sure that it's _actually_ in the list\n\t\t\t\t\t// and that it would _actually_ move\n\t\t\t\t\t// (#4275) We don't bother calling\n\t\t\t\t\t//         indexOf unless we have a new\n\t\t\t\t\t//         position to work with\n\t\t\t\t\tvar currPos = titles.indexOf(title);\n\t\t\t\t\tif(currPos >= 0 && newPos !== currPos) {\n\t\t\t\t\t\t// move it!\n\t\t\t\t\t\ttitles.splice(currPos,1);\n\t\t\t\t\t\tif(newPos >= currPos) {\n\t\t\t\t\t\t\tnewPos--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\ttitles.splice(newPos,0,title);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\tvar list = this.getTiddlerList(listTitle);\n\tif(!array || array.length === 0) {\n\t\treturn [];\n\t} else {\n\t\tvar titles = [], t, title;\n\t\t// First place any entries that are present in the list\n\t\tfor(t=0; t<list.length; t++) {\n\t\t\ttitle = list[t];\n\t\t\tif(array.indexOf(title) !== -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Then place any remaining entries\n\t\tfor(t=0; t<array.length; t++) {\n\t\t\ttitle = array[t];\n\t\t\tif(list.indexOf(title) === -1) {\n\t\t\t\ttitles.push(title);\n\t\t\t}\n\t\t}\n\t\t// Finally obey the list-before and list-after fields of each tiddler in turn\n\t\tvar sortedTitles = titles.slice(0);\n\t\tfor(t=0; t<sortedTitles.length; t++) {\n\t\t\ttitle = sortedTitles[t];\n\t\t\tmoveItemInList(title);\n\t\t}\n\t\treturn titles;\n\t}\n};\n\nexports.getSubTiddler = function(title,subTiddlerTitle) {\n\tvar bundleInfo = this.getPluginInfo(title) || this.getTiddlerDataCached(title);\n\tif(bundleInfo && bundleInfo.tiddlers) {\n\t\tvar subTiddler = bundleInfo.tiddlers[subTiddlerTitle];\n\t\tif(subTiddler) {\n\t\t\treturn new $tw.Tiddler(subTiddler);\n\t\t}\n\t}\n\treturn null;\n};\n\n/*\nRetrieve a tiddler as a JSON string of the fields\n*/\nexports.getTiddlerAsJson = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\tvar fields = Object.create(null);\n\t\t$tw.utils.each(tiddler.fields,function(value,name) {\n\t\t\tfields[name] = tiddler.getFieldString(name);\n\t\t});\n\t\treturn JSON.stringify(fields);\n\t} else {\n\t\treturn JSON.stringify({title: title});\n\t}\n};\n\nexports.getTiddlersAsJson = function(filter,spaces) {\n\tvar tiddlers = this.filterTiddlers(filter),\n\t\tspaces = (spaces === undefined) ? $tw.config.preferences.jsonSpaces : spaces,\n\t\tdata = [];\n\tfor(var t=0;t<tiddlers.length; t++) {\n\t\tvar tiddler = this.getTiddler(tiddlers[t]);\n\t\tif(tiddler) {\n\t\t\tvar fields = new Object();\n\t\t\tfor(var field in tiddler.fields) {\n\t\t\t\tfields[field] = tiddler.getFieldString(field);\n\t\t\t}\n\t\t\tdata.push(fields);\n\t\t}\n\t}\n\treturn JSON.stringify(data,null,spaces);\n};\n\n/*\nGet the content of a tiddler as a JavaScript object. How this is done depends on the type of the tiddler:\n\napplication/json: the tiddler JSON is parsed into an object\napplication/x-tiddler-dictionary: the tiddler is parsed as sequence of name:value pairs\n\nOther types currently just return null.\n\ntitleOrTiddler: string tiddler title or a tiddler object\ndefaultData: default data to be returned if the tiddler is missing or doesn't contain data\n\nNote that the same value is returned for repeated calls for the same tiddler data. The value is frozen to prevent modification; otherwise modifications would be visible to all callers\n*/\nexports.getTiddlerDataCached = function(titleOrTiddler,defaultData) {\n\tvar self = this,\n\t\ttiddler = titleOrTiddler;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler) {\n\t\treturn this.getCacheForTiddler(tiddler.fields.title,\"data\",function() {\n\t\t\t// Return the frozen value\n\t\t\tvar value = self.getTiddlerData(tiddler.fields.title,undefined);\n\t\t\t$tw.utils.deepFreeze(value);\n\t\t\treturn value;\n\t\t}) || defaultData;\n\t} else {\n\t\treturn defaultData;\n\t}\n};\n\n/*\nAlternative, uncached version of getTiddlerDataCached(). The return value can be mutated freely and reused\n*/\nexports.getTiddlerData = function(titleOrTiddler,defaultData) {\n\tvar tiddler = titleOrTiddler,\n\t\tdata;\n\tif(!(tiddler instanceof $tw.Tiddler)) {\n\t\ttiddler = this.getTiddler(tiddler);\t\n\t}\n\tif(tiddler && tiddler.fields.text) {\n\t\tswitch(tiddler.fields.type) {\n\t\t\tcase \"application/json\":\n\t\t\t\t// JSON tiddler\n\t\t\t\ttry {\n\t\t\t\t\tdata = JSON.parse(tiddler.fields.text);\n\t\t\t\t} catch(ex) {\n\t\t\t\t\treturn defaultData;\n\t\t\t\t}\n\t\t\t\treturn data;\n\t\t\tcase \"application/x-tiddler-dictionary\":\n\t\t\t\treturn $tw.utils.parseFields(tiddler.fields.text);\n\t\t}\n\t}\n\treturn defaultData;\n};\n\n/*\nExtract an indexed field from within a data tiddler\n*/\nexports.extractTiddlerDataItem = function(titleOrTiddler,index,defaultText) {\n\tvar data = this.getTiddlerDataCached(titleOrTiddler,Object.create(null)),\n\t\ttext;\n\tif(data && $tw.utils.hop(data,index)) {\n\t\ttext = data[index];\n\t}\n\tif(typeof text === \"string\" || typeof text === \"number\") {\n\t\treturn text.toString();\n\t} else {\n\t\treturn defaultText;\n\t}\n};\n\n/*\nSet a tiddlers content to a JavaScript object. Currently this is done by setting the tiddler's type to \"application/json\" and setting the text to the JSON text of the data.\ntitle: title of tiddler\ndata: object that can be serialised to JSON\nfields: optional hashmap of additional tiddler fields to be set\n*/\nexports.setTiddlerData = function(title,data,fields) {\n\tvar existingTiddler = this.getTiddler(title),\n\t\tnewFields = {\n\t\t\ttitle: title\n\t};\n\tif(existingTiddler && existingTiddler.fields.type === \"application/x-tiddler-dictionary\") {\n\t\tnewFields.text = $tw.utils.makeTiddlerDictionary(data);\n\t} else {\n\t\tnewFields.type = \"application/json\";\n\t\tnewFields.text = JSON.stringify(data,null,$tw.config.preferences.jsonSpaces);\n\t}\n\tthis.addTiddler(new $tw.Tiddler(this.getCreationFields(),existingTiddler,fields,newFields,this.getModificationFields()));\n};\n\n/*\nReturn the content of a tiddler as an array containing each line\n*/\nexports.getTiddlerList = function(title,field,index) {\n\tif(index) {\n\t\treturn $tw.utils.parseStringArray(this.extractTiddlerDataItem(title,index,\"\"));\n\t}\n\tfield = field || \"list\";\n\tvar tiddler = this.getTiddler(title);\n\tif(tiddler) {\n\t\treturn ($tw.utils.parseStringArray(tiddler.fields[field]) || []).slice(0);\n\t}\n\treturn [];\n};\n\n// Return a named global cache object. Global cache objects are cleared whenever a tiddler change occurs\nexports.getGlobalCache = function(cacheName,initializer) {\n\tthis.globalCache = this.globalCache || Object.create(null);\n\tif($tw.utils.hop(this.globalCache,cacheName)) {\n\t\treturn this.globalCache[cacheName];\n\t} else {\n\t\tthis.globalCache[cacheName] = initializer();\n\t\treturn this.globalCache[cacheName];\n\t}\n};\n\nexports.clearGlobalCache = function() {\n\tthis.globalCache = Object.create(null);\n};\n\n// Return the named cache object for a tiddler. If the cache doesn't exist then the initializer function is invoked to create it\nexports.getCacheForTiddler = function(title,cacheName,initializer) {\n\tthis.caches = this.caches || Object.create(null);\n\tvar caches = this.caches[title];\n\tif(caches && caches[cacheName]) {\n\t\treturn caches[cacheName];\n\t} else {\n\t\tif(!caches) {\n\t\t\tcaches = Object.create(null);\n\t\t\tthis.caches[title] = caches;\n\t\t}\n\t\tcaches[cacheName] = initializer();\n\t\treturn caches[cacheName];\n\t}\n};\n\n// Clear all caches associated with a particular tiddler, or, if the title is null, clear all the caches for all the tiddlers\nexports.clearCache = function(title) {\n\tif(title) {\n\t\tthis.caches = this.caches || Object.create(null);\n\t\tif($tw.utils.hop(this.caches,title)) {\n\t\t\tdelete this.caches[title];\n\t\t}\n\t} else {\n\t\tthis.caches = Object.create(null);\n\t}\n};\n\nexports.initParsers = function(moduleType) {\n\t// Install the parser modules\n\t$tw.Wiki.parsers = {};\n\tvar self = this;\n\t$tw.modules.forEachModuleOfType(\"parser\",function(title,module) {\n\t\tfor(var f in module) {\n\t\t\tif($tw.utils.hop(module,f)) {\n\t\t\t\t$tw.Wiki.parsers[f] = module[f]; // Store the parser class\n\t\t\t}\n\t\t}\n\t});\n\t// Use the generic binary parser for any binary types not registered so far\n\tif($tw.Wiki.parsers[\"application/octet-stream\"]) {\n\t\tObject.keys($tw.config.contentTypeInfo).forEach(function(type) {\n\t\t\tif(!$tw.utils.hop($tw.Wiki.parsers,type) && $tw.config.contentTypeInfo[type].encoding === \"base64\") {\n\t\t\t\t$tw.Wiki.parsers[type] = $tw.Wiki.parsers[\"application/octet-stream\"];\n\t\t\t}\n\t\t});\t\t\n\t}\n};\n\n/*\nParse a block of text of a specified MIME type\n\ttype: content type of text to be parsed\n\ttext: text\n\toptions: see below\nOptions include:\n\tparseAsInline: if true, the text of the tiddler will be parsed as an inline run\n\t_canonical_uri: optional string of the canonical URI of this content\n*/\nexports.parseText = function(type,text,options) {\n\ttext = text || \"\";\n\toptions = options || {};\n\t// Select a parser\n\tvar Parser = $tw.Wiki.parsers[type];\n\tif(!Parser && $tw.utils.getFileExtensionInfo(type)) {\n\t\tParser = $tw.Wiki.parsers[$tw.utils.getFileExtensionInfo(type).type];\n\t}\n\tif(!Parser) {\n\t\tParser = $tw.Wiki.parsers[options.defaultType || \"text/vnd.tiddlywiki\"];\n\t}\n\tif(!Parser) {\n\t\treturn null;\n\t}\n\t// Return the parser instance\n\treturn new Parser(type,text,{\n\t\tparseAsInline: options.parseAsInline,\n\t\twiki: this,\n\t\t_canonical_uri: options._canonical_uri\n\t});\n};\n\n/*\nParse a tiddler according to its MIME type\n*/\nexports.parseTiddler = function(title,options) {\n\toptions = $tw.utils.extend({},options);\n\tvar cacheType = options.parseAsInline ? \"inlineParseTree\" : \"blockParseTree\",\n\t\ttiddler = this.getTiddler(title),\n\t\tself = this;\n\treturn tiddler ? this.getCacheForTiddler(title,cacheType,function() {\n\t\t\tif(tiddler.hasField(\"_canonical_uri\")) {\n\t\t\t\toptions._canonical_uri = tiddler.fields._canonical_uri;\n\t\t\t}\n\t\t\treturn self.parseText(tiddler.fields.type,tiddler.fields.text,options);\n\t\t}) : null;\n};\n\nexports.parseTextReference = function(title,field,index,options) {\n\tvar tiddler,text;\n\tif(options.subTiddler) {\n\t\ttiddler = this.getSubTiddler(title,options.subTiddler);\n\t} else {\n\t\ttiddler = this.getTiddler(title);\n\t\tif(field === \"text\" || (!field && !index)) {\n\t\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\t\treturn this.parseTiddler(title,options);\n\t\t}\n\t}\n\tif(field === \"text\" || (!field && !index)) {\n\t\tif(tiddler && tiddler.fields) {\n\t\t\treturn this.parseText(tiddler.fields.type,tiddler.fields.text,options);\t\t\t\n\t\t} else {\n\t\t\treturn null;\n\t\t}\n\t} else if(field) {\n\t\tif(field === \"title\") {\n\t\t\ttext = title;\n\t\t} else {\n\t\t\tif(!tiddler || !tiddler.hasField(field)) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\ttext = tiddler.fields[field];\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text.toString(),options);\n\t} else if(index) {\n\t\tthis.getTiddlerText(title); // Force the tiddler to be lazily loaded\n\t\ttext = this.extractTiddlerDataItem(tiddler,index,undefined);\n\t\tif(text === undefined) {\n\t\t\treturn null;\n\t\t}\n\t\treturn this.parseText(\"text/vnd.tiddlywiki\",text,options);\n\t}\n};\n\n/*\nMake a widget tree for a parse tree\nparser: parser object\noptions: see below\nOptions include:\ndocument: optional document to use\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.makeWidget = function(parser,options) {\n\toptions = options || {};\n\tvar widgetNode = {\n\t\t\ttype: \"widget\",\n\t\t\tchildren: []\n\t\t},\n\t\tcurrWidgetNode = widgetNode;\n\t// Create set variable widgets for each variable\n\t$tw.utils.each(options.variables,function(value,name) {\n\t\tvar setVariableWidget = {\n\t\t\ttype: \"set\",\n\t\t\tattributes: {\n\t\t\t\tname: {type: \"string\", value: name},\n\t\t\t\tvalue: {type: \"string\", value: value}\n\t\t\t},\n\t\t\tchildren: []\n\t\t};\n\t\tcurrWidgetNode.children = [setVariableWidget];\n\t\tcurrWidgetNode = setVariableWidget;\n\t});\n\t// Add in the supplied parse tree nodes\n\tcurrWidgetNode.children = parser ? parser.tree : [];\n\t// Create the widget\n\treturn new widget.widget(widgetNode,{\n\t\twiki: this,\n\t\tdocument: options.document || $tw.fakeDocument,\n\t\tparentWidget: options.parentWidget\n\t});\n};\n\n/*\nMake a widget tree for transclusion\ntitle: target tiddler title\noptions: as for wiki.makeWidget() plus:\noptions.field: optional field to transclude (defaults to \"text\")\noptions.mode: transclusion mode \"inline\" or \"block\"\noptions.recursionMarker : optional flag to set a recursion marker, defaults to \"yes\"\noptions.children: optional array of children for the transclude widget\noptions.importVariables: optional importvariables filter string for macros to be included\noptions.importPageMacros: optional boolean; if true, equivalent to passing \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\" to options.importVariables\n*/\nexports.makeTranscludeWidget = function(title,options) {\n\toptions = options || {};\n\tvar parseTreeDiv = {tree: [{\n\t\t\ttype: \"element\",\n\t\t\ttag: \"div\",\n\t\t\tchildren: []}]},\n\t\tparseTreeImportVariables = {\n\t\t\ttype: \"importvariables\",\n\t\t\tattributes: {\n\t\t\t\tfilter: {\n\t\t\t\t\tname: \"filter\",\n\t\t\t\t\ttype: \"string\"\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: false,\n\t\t\tchildren: []},\n\t\tparseTreeTransclude = {\n\t\t\ttype: \"transclude\",\n\t\t\tattributes: {\n\t\t\t\trecursionMarker: {\n\t\t\t\t\tname: \"recursionMarker\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: options.recursionMarker || \"yes\"\n\t\t\t\t\t},\n\t\t\t\ttiddler: {\n\t\t\t\t\tname: \"tiddler\",\n\t\t\t\t\ttype: \"string\",\n\t\t\t\t\tvalue: title\n\t\t\t\t}\n\t\t\t},\n\t\t\tisBlock: !options.parseAsInline};\n\tif(options.importVariables || options.importPageMacros) {\n\t\tif(options.importVariables) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = options.importVariables;\n\t\t} else if(options.importPageMacros) {\n\t\t\tparseTreeImportVariables.attributes.filter.value = \"[[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\";\n\t\t}\n\t\tparseTreeDiv.tree[0].children.push(parseTreeImportVariables);\n\t\tparseTreeImportVariables.children.push(parseTreeTransclude);\n\t} else {\n\t\tparseTreeDiv.tree[0].children.push(parseTreeTransclude);\n\t}\n\tif(options.field) {\n\t\tparseTreeTransclude.attributes.field = {type: \"string\", value: options.field};\n\t}\n\tif(options.mode) {\n\t\tparseTreeTransclude.attributes.mode = {type: \"string\", value: options.mode};\n\t}\n\tif(options.children) {\n\t\tparseTreeTransclude.children = options.children;\n\t}\n\treturn this.makeWidget(parseTreeDiv,options);\n};\n\n/*\nParse text in a specified format and render it into another format\n\toutputType: content type for the output\n\ttextType: content type of the input text\n\ttext: input text\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderText = function(outputType,textType,text,options) {\n\toptions = options || {};\n\tvar parser = this.parseText(textType,text,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : container.textContent;\n};\n\n/*\nParse text from a tiddler and render it into another format\n\toutputType: content type for the output\n\ttitle: title of the tiddler to be rendered\n\toptions: see below\nOptions include:\nvariables: hashmap of variables to set\nparentWidget: optional parent widget for the root node\n*/\nexports.renderTiddler = function(outputType,title,options) {\n\toptions = options || {};\n\tvar parser = this.parseTiddler(title,options),\n\t\twidgetNode = this.makeWidget(parser,options);\n\tvar container = $tw.fakeDocument.createElement(\"div\");\n\twidgetNode.render(container,null);\n\treturn outputType === \"text/html\" ? container.innerHTML : (outputType === \"text/plain-formatted\" ? container.formattedTextContent : container.textContent);\n};\n\n/*\nReturn an array of tiddler titles that match a search string\n\ttext: The text string to search for\n\toptions: see below\nOptions available:\n\tsource: an iterator function for the source tiddlers, called source(iterator), where iterator is called as iterator(tiddler,title)\n\texclude: An array of tiddler titles to exclude from the search\n\tinvert: If true returns tiddlers that do not contain the specified string\n\tcaseSensitive: If true forces a case sensitive search\n\tfield: If specified, restricts the search to the specified field, or an array of field names\n\tanchored: If true, forces all but regexp searches to be anchored to the start of text\n\texcludeField: If true, the field options are inverted to specify the fields that are not to be searched\n\tThe search mode is determined by the first of these boolean flags to be true\n\t\tliteral: searches for literal string\n\t\twhitespace: same as literal except runs of whitespace are treated as a single space\n\t\tregexp: treats the search term as a regular expression\n\t\twords: (default) treats search string as a list of tokens, and matches if all tokens are found, regardless of adjacency or ordering\n*/\nexports.search = function(text,options) {\n\toptions = options || {};\n\tvar self = this,\n\t\tt,\n\t\tinvert = !!options.invert;\n\t// Convert the search string into a regexp for each term\n\tvar terms, searchTermsRegExps,\n\t\tflags = options.caseSensitive ? \"\" : \"i\",\n\t\tanchor = options.anchored ? \"^\" : \"\";\n\tif(options.literal) {\n\t\tif(text.length === 0) {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(text) + \")\",flags)];\n\t\t}\n\t} else if(options.whitespace) {\n\t\tterms = [];\n\t\t$tw.utils.each(text.split(/\\s+/g),function(term) {\n\t\t\tif(term) {\n\t\t\t\tterms.push($tw.utils.escapeRegExp(term));\n\t\t\t}\n\t\t});\n\t\tsearchTermsRegExps = [new RegExp(\"(\" + anchor + terms.join(\"\\\\s+\") + \")\",flags)];\n\t} else if(options.regexp) {\n\t\ttry {\n\t\t\tsearchTermsRegExps = [new RegExp(\"(\" + text + \")\",flags)];\t\t\t\n\t\t} catch(e) {\n\t\t\tsearchTermsRegExps = null;\n\t\t\tconsole.log(\"Regexp error parsing /(\" + text + \")/\" + flags + \": \",e);\n\t\t}\n\t} else {\n\t\tterms = text.split(/ +/);\n\t\tif(terms.length === 1 && terms[0] === \"\") {\n\t\t\tsearchTermsRegExps = null;\n\t\t} else {\n\t\t\tsearchTermsRegExps = [];\n\t\t\tfor(t=0; t<terms.length; t++) {\n\t\t\t\tsearchTermsRegExps.push(new RegExp(\"(\" + anchor + $tw.utils.escapeRegExp(terms[t]) + \")\",flags));\n\t\t\t}\n\t\t}\n\t}\n\t// Accumulate the array of fields to be searched or excluded from the search\n\tvar fields = [];\n\tif(options.field) {\n\t\tif($tw.utils.isArray(options.field)) {\n\t\t\t$tw.utils.each(options.field,function(fieldName) {\n\t\t\t\tif(fieldName) {\n\t\t\t\t\tfields.push(fieldName);\t\t\t\t\t\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tfields.push(options.field);\n\t\t}\n\t}\n\t// Use default fields if none specified and we're not excluding fields (excluding fields with an empty field array is the same as searching all fields)\n\tif(fields.length === 0 && !options.excludeField) {\n\t\tfields.push(\"title\");\n\t\tfields.push(\"tags\");\n\t\tfields.push(\"text\");\n\t}\n\t// Function to check a given tiddler for the search term\n\tvar searchTiddler = function(title) {\n\t\tif(!searchTermsRegExps) {\n\t\t\treturn true;\n\t\t}\n\t\tvar notYetFound = searchTermsRegExps.slice();\n\n\t\tvar tiddler = self.getTiddler(title);\n\t\tif(!tiddler) {\n\t\t\ttiddler = new $tw.Tiddler({title: title, text: \"\", type: \"text/vnd.tiddlywiki\"});\n\t\t}\n\t\tvar contentTypeInfo = $tw.config.contentTypeInfo[tiddler.fields.type] || $tw.config.contentTypeInfo[\"text/vnd.tiddlywiki\"],\n\t\t\tsearchFields;\n\t\t// Get the list of fields we're searching\n\t\tif(options.excludeField) {\n\t\t\tsearchFields = Object.keys(tiddler.fields);\n\t\t\t$tw.utils.each(fields,function(fieldName) {\n\t\t\t\tvar p = searchFields.indexOf(fieldName);\n\t\t\t\tif(p !== -1) {\n\t\t\t\t\tsearchFields.splice(p,1);\n\t\t\t\t}\n\t\t\t});\n\t\t} else {\n\t\t\tsearchFields = fields;\n\t\t}\n\t\tfor(var fieldIndex=0; notYetFound.length>0 && fieldIndex<searchFields.length; fieldIndex++) {\n\t\t\t// Don't search the text field if the content type is binary\n\t\t\tvar fieldName = searchFields[fieldIndex];\n\t\t\tif(fieldName === \"text\" && contentTypeInfo.encoding !== \"utf8\") {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tvar str = tiddler.fields[fieldName],\n\t\t\t\tt;\n\t\t\tif(str) {\n\t\t\t\tif($tw.utils.isArray(str)) {\n\t\t\t\t\t// If the field value is an array, test each regexp against each field array entry and fail if each regexp doesn't match at least one field array entry\n\t\t\t\t\tfor(var s=0; s<str.length; s++) {\n\t\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\t\tif(notYetFound[t].test(str[s])) {\n\t\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// If the field isn't an array, force it to a string and test each regexp against it and fail if any do not match\n\t\t\t\t\tstr = tiddler.getFieldString(fieldName);\n\t\t\t\t\tfor(t=0; t<notYetFound.length;) {\n\t\t\t\t\t\tif(notYetFound[t].test(str)) {\n\t\t\t\t\t\t\tnotYetFound.splice(t, 1);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tt++;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t\treturn notYetFound.length == 0;\n\t};\n\t// Loop through all the tiddlers doing the search\n\tvar results = [],\n\t\tsource = options.source || this.each;\n\tsource(function(tiddler,title) {\n\t\tif(searchTiddler(title) !== options.invert) {\n\t\t\tresults.push(title);\n\t\t}\n\t});\n\t// Remove any of the results we have to exclude\n\tif(options.exclude) {\n\t\tfor(t=0; t<options.exclude.length; t++) {\n\t\t\tvar p = results.indexOf(options.exclude[t]);\n\t\t\tif(p !== -1) {\n\t\t\t\tresults.splice(p,1);\n\t\t\t}\n\t\t}\n\t}\n\treturn results;\n};\n\n/*\nTrigger a load for a tiddler if it is skinny. Returns the text, or undefined if the tiddler is missing, null if the tiddler is being lazily loaded.\n*/\nexports.getTiddlerText = function(title,defaultText) {\n\tvar tiddler = this.getTiddler(title);\n\t// Return undefined if the tiddler isn't found\n\tif(!tiddler) {\n\t\treturn defaultText;\n\t}\n\tif(!tiddler.hasField(\"_is_skinny\")) {\n\t\t// Just return the text if we've got it\n\t\treturn tiddler.fields.text || \"\";\n\t} else {\n\t\t// Tell any listeners about the need to lazily load this tiddler\n\t\tthis.dispatchEvent(\"lazyLoad\",title);\n\t\t// Indicate that the text is being loaded\n\t\treturn null;\n\t}\n};\n\n/*\nCheck whether the text of a tiddler matches a given value. By default, the comparison is case insensitive, and any spaces at either end of the tiddler text is trimmed\n*/\nexports.checkTiddlerText = function(title,targetText,options) {\n\toptions = options || {};\n\tvar text = this.getTiddlerText(title,\"\");\n\tif(!options.noTrim) {\n\t\ttext = text.trim();\n\t}\n\tif(!options.caseSensitive) {\n\t\ttext = text.toLowerCase();\n\t\ttargetText = targetText.toLowerCase();\n\t}\n\treturn text === targetText;\n}\n\n/*\nRead an array of browser File objects, invoking callback(tiddlerFieldsArray) once they're all read\n*/\nexports.readFiles = function(files,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\tvar result = [],\n\t\toutstanding = files.length,\n\t\treadFileCallback = function(tiddlerFieldsArray) {\n\t\t\tresult.push.apply(result,tiddlerFieldsArray);\n\t\t\tif(--outstanding === 0) {\n\t\t\t\tcallback(result);\n\t\t\t}\n\t\t};\n\tfor(var f=0; f<files.length; f++) {\n\t\tthis.readFile(files[f],$tw.utils.extend({},options,{callback: readFileCallback}));\n\t}\n\treturn files.length;\n};\n\n/*\nRead a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFile = function(file,options) {\n\tvar callback;\n\tif(typeof options === \"function\") {\n\t\tcallback = options;\n\t\toptions = {};\n\t} else {\n\t\tcallback = options.callback;\n\t}\n\t// Get the type, falling back to the filename extension\n\tvar self = this,\n\t\ttype = file.type;\n\tif(type === \"\" || !type) {\n\t\tvar dotPos = file.name.lastIndexOf(\".\");\n\t\tif(dotPos !== -1) {\n\t\t\tvar fileExtensionInfo = $tw.utils.getFileExtensionInfo(file.name.substr(dotPos));\n\t\t\tif(fileExtensionInfo) {\n\t\t\t\ttype = fileExtensionInfo.type;\n\t\t\t}\n\t\t}\n\t}\n\t// Figure out if we're reading a binary file\n\tvar contentTypeInfo = $tw.config.contentTypeInfo[type],\n\t\tisBinary = contentTypeInfo ? contentTypeInfo.encoding === \"base64\" : false;\n\t// Log some debugging information\n\tif($tw.log.IMPORT) {\n\t\tconsole.log(\"Importing file '\" + file.name + \"', type: '\" + type + \"', isBinary: \" + isBinary);\n\t}\n\t// Give the hook a chance to process the drag\n\tif($tw.hooks.invokeHook(\"th-importing-file\",{\n\t\tfile: file,\n\t\ttype: type,\n\t\tisBinary: isBinary,\n\t\tcallback: callback\n\t}) !== true) {\n\t\tthis.readFileContent(file,type,isBinary,options.deserializer,callback);\n\t}\n};\n\n/*\nLower level utility to read the content of a browser File object, invoking callback(tiddlerFieldsArray) with an array of tiddler fields objects\n*/\nexports.readFileContent = function(file,type,isBinary,deserializer,callback) {\n\tvar self = this;\n\t// Create the FileReader\n\tvar reader = new FileReader();\n\t// Onload\n\treader.onload = function(event) {\n\t\tvar text = event.target.result,\n\t\t\ttiddlerFields = {title: file.name || \"Untitled\"};\n\t\tif(isBinary) {\n\t\t\tvar commaPos = text.indexOf(\",\");\n\t\t\tif(commaPos !== -1) {\n\t\t\t\ttext = text.substr(commaPos + 1);\n\t\t\t}\n\t\t}\n\t\t// Check whether this is an encrypted TiddlyWiki file\n\t\tvar encryptedJson = $tw.utils.extractEncryptedStoreArea(text);\n\t\tif(encryptedJson) {\n\t\t\t// If so, attempt to decrypt it with the current password\n\t\t\t$tw.utils.decryptStoreAreaInteractive(encryptedJson,function(tiddlers) {\n\t\t\t\tcallback(tiddlers);\n\t\t\t});\n\t\t} else {\n\t\t\t// Otherwise, just try to deserialise any tiddlers in the file\n\t\t\tcallback(self.deserializeTiddlers(type,text,tiddlerFields,{deserializer: deserializer}));\n\t\t}\n\t};\n\t// Kick off the read\n\tif(isBinary) {\n\t\treader.readAsDataURL(file);\n\t} else {\n\t\treader.readAsText(file);\n\t}\n};\n\n/*\nFind any existing draft of a specified tiddler\n*/\nexports.findDraft = function(targetTitle) {\n\tvar draftTitle = undefined;\n\tthis.forEachTiddler({includeSystem: true},function(title,tiddler) {\n\t\tif(tiddler.fields[\"draft.title\"] && tiddler.fields[\"draft.of\"] === targetTitle) {\n\t\t\tdraftTitle = title;\n\t\t}\n\t});\n\treturn draftTitle;\n}\n\n/*\nCheck whether the specified draft tiddler has been modified.\nIf the original tiddler doesn't exist, create  a vanilla tiddler variable,\nto check if additional fields have been added.\n*/\nexports.isDraftModified = function(title) {\n\tvar tiddler = this.getTiddler(title);\n\tif(!tiddler.isDraft()) {\n\t\treturn false;\n\t}\n\tvar ignoredFields = [\"created\", \"modified\", \"title\", \"draft.title\", \"draft.of\"],\n\t\torigTiddler = this.getTiddler(tiddler.fields[\"draft.of\"]) || new $tw.Tiddler({text:\"\", tags:[]}),\n\t\ttitleModified = tiddler.fields[\"draft.title\"] !== tiddler.fields[\"draft.of\"];\n\treturn titleModified || !tiddler.isEqual(origTiddler,ignoredFields);\n};\n\n/*\nAdd a new record to the top of the history stack\ntitle: a title string or an array of title strings\nfromPageRect: page coordinates of the origin of the navigation\nhistoryTitle: title of history tiddler (defaults to $:/HistoryList)\n*/\nexports.addToHistory = function(title,fromPageRect,historyTitle) {\n\tvar story = new $tw.Story({wiki: this, historyTitle: historyTitle});\n\tstory.addToHistory(title,fromPageRect);\t\n\tconsole.log(\"$tw.wiki.addToHistory() is deprecated since V5.1.23! Use the this.story.addToHistory() from the story-object!\")\n};\n\n/*\nAdd a new tiddler to the story river\ntitle: a title string or an array of title strings\nfromTitle: the title of the tiddler from which the navigation originated\nstoryTitle: title of story tiddler (defaults to $:/StoryList)\noptions: see story.js\n*/\nexports.addToStory = function(title,fromTitle,storyTitle,options) {\n\tvar story = new $tw.Story({wiki: this, storyTitle: storyTitle});\n\tstory.addToStory(title,fromTitle,options);\n\tconsole.log(\"$tw.wiki.addToStory() is deprecated since V5.1.23! Use the this.story.addToStory() from the story-object!\")\n};\n\n/*\nGenerate a title for the draft of a given tiddler\n*/\nexports.generateDraftTitle = function(title) {\n\tvar c = 0,\n\t\tdraftTitle,\n\t\tusername = this.getTiddlerText(\"$:/status/UserName\"),\n\t\tattribution = username ? \" by \" + username : \"\";\n\tdo {\n\t\tdraftTitle = \"Draft \" + (c ? (c + 1) + \" \" : \"\") + \"of '\" + title + \"'\" + attribution;\n\t\tc++;\n\t} while(this.tiddlerExists(draftTitle));\n\treturn draftTitle;\n};\n\n/*\nInvoke the available upgrader modules\ntitles: array of tiddler titles to be processed\ntiddlers: hashmap by title of tiddler fields of pending import tiddlers. These can be modified by the upgraders. An entry with no fields indicates a tiddler that was pending import has been suppressed. When entries are added to the pending import the tiddlers hashmap may have entries that are not present in the titles array\nReturns a hashmap of messages keyed by tiddler title.\n*/\nexports.invokeUpgraders = function(titles,tiddlers) {\n\t// Collect up the available upgrader modules\n\tvar self = this;\n\tif(!this.upgraderModules) {\n\t\tthis.upgraderModules = [];\n\t\t$tw.modules.forEachModuleOfType(\"upgrader\",function(title,module) {\n\t\t\tif(module.upgrade) {\n\t\t\t\tself.upgraderModules.push(module);\n\t\t\t}\n\t\t});\n\t}\n\t// Invoke each upgrader in turn\n\tvar messages = {};\n\tfor(var t=0; t<this.upgraderModules.length; t++) {\n\t\tvar upgrader = this.upgraderModules[t],\n\t\t\tupgraderMessages = upgrader.upgrade(this,titles,tiddlers);\n\t\t$tw.utils.extend(messages,upgraderMessages);\n\t}\n\treturn messages;\n};\n\n// Determine whether a plugin by title is dynamically loadable\nexports.doesPluginRequireReload = function(title) {\n\treturn this.doesPluginInfoRequireReload(this.getPluginInfo(title) || this.getTiddlerDataCached(title));\n};\n\n// Determine whether a plugin info structure is dynamically loadable\nexports.doesPluginInfoRequireReload = function(pluginInfo) {\n\tif(pluginInfo) {\n\t\tvar foundModule = false;\n\t\t$tw.utils.each(pluginInfo.tiddlers,function(tiddler) {\n\t\t\tif(tiddler.type === \"application/javascript\" && $tw.utils.hop(tiddler,\"module-type\")) {\n\t\t\t\tfoundModule = true;\n\t\t\t}\n\t\t});\n\t\treturn foundModule;\n\t} else {\n\t\treturn null;\n\t}\n};\n\nexports.slugify = function(title,options) {\n\tvar tiddler = this.getTiddler(title),\n\t\tslug;\n\tif(tiddler && tiddler.fields.slug) {\n\t\tslug = tiddler.fields.slug;\n\t} else {\n\t\tslug = $tw.utils.transliterate(title.toString().toLowerCase()) // Replace diacritics with basic lowercase ASCII\n\t\t\t.replace(/\\s+/g,\"-\")                                       // Replace spaces with -\n\t\t\t.replace(/[^\\w\\-\\.]+/g,\"\")                                 // Remove all non-word chars except dash and dot\n\t\t\t.replace(/\\-\\-+/g,\"-\")                                     // Replace multiple - with single -\n\t\t\t.replace(/^-+/,\"\")                                         // Trim - from start of text\n\t\t\t.replace(/-+$/,\"\");                                        // Trim - from end of text\n\t}\n\t// If the resulting slug is blank (eg because the title is just punctuation characters)\n\tif(!slug) {\n\t\t// ...then just use the character codes of the title\n\t\tvar result = [];\n\t\t$tw.utils.each(title.split(\"\"),function(char) {\n\t\t\tresult.push(char.charCodeAt(0).toString());\n\t\t});\n\t\tslug = result.join(\"-\");\n\t}\n\treturn slug;\n};\n\n})();\n\n",
            "type": "application/javascript",
            "module-type": "wikimethod"
        },
        "$:/palettes/Blanca": {
            "title": "$:/palettes/Blanca",
            "name": "Blanca",
            "description": "A clean white palette to let you focus",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #66cccc\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ffffff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #7897f3\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ccc\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #ffffff\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #7897f3\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #eeeeee\ntab-border-selected: #cccccc\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffeedd\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: #eee\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #ff9900\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Blue": {
            "title": "$:/palettes/Blue",
            "name": "Blue",
            "description": "A blue theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333353\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #ddddff\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #5959c0\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: #ccccdd\ntab-border-selected: #ccccdd\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #eeeeff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #666666\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #ffffff\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #ffffff\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #5959c0\ntoolbar-new-button: #5eb95e\ntoolbar-options-button: rgb(128, 88, 165)\ntoolbar-save-button: #0e90d2\ntoolbar-info-button: #0e90d2\ntoolbar-edit-button: rgb(243, 123, 29)\ntoolbar-close-button: #dd514c\ntoolbar-delete-button: #dd514c\ntoolbar-cancel-button: rgb(243, 123, 29)\ntoolbar-done-button: #5eb95e\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/Muted": {
            "title": "$:/palettes/Muted",
            "name": "Muted",
            "description": "Bright tiddlers on a muted background",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #6f6f70\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #29a6ee\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #c2c1c2\nsidebar-foreground-shadow: rgba(255,255,255,0)\nsidebar-foreground: #d3d2d4\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #6f6f70\nsidebar-tab-background: #666667\nsidebar-tab-border-selected: #999\nsidebar-tab-border: #515151\nsidebar-tab-divider: #999\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #999\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #d1d0d2\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #d5ad34\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastLight": {
            "title": "$:/palettes/ContrastLight",
            "name": "Contrast (Light)",
            "description": "High contrast and unambiguous (light version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #fff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #000\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #000\ntag-foreground: #fff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/ContrastDark": {
            "title": "$:/palettes/ContrastDark",
            "name": "Contrast (Dark)",
            "description": "High contrast and unambiguous (dark version)",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #f00\nalert-border: <<colour background>>\nalert-highlight: <<colour foreground>>\nalert-muted-foreground: #800\nbackground: #000\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: <<colour background>>\nbutton-foreground: <<colour foreground>>\nbutton-border: <<colour foreground>>\ncode-background: <<colour background>>\ncode-border: <<colour foreground>>\ncode-foreground: <<colour foreground>>\ndirty-indicator: #f00\ndownload-background: #080\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: <<colour foreground>>\ndropdown-tab-background: <<colour foreground>>\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #00a\nexternal-link-foreground: #00e\nforeground: #fff\nmessage-background: <<colour foreground>>\nmessage-border: <<colour background>>\nmessage-foreground: <<colour background>>\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour foreground>>\nmodal-header-border: <<colour foreground>>\nmuted-foreground: <<colour foreground>>\nnotification-background: <<colour background>>\nnotification-border: <<colour foreground>>\npage-background: <<colour background>>\npre-background: <<colour background>>\npre-border: <<colour foreground>>\nprimary: #00f\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: <<colour background>>\nsidebar-controls-foreground: <<colour foreground>>\nsidebar-foreground-shadow: rgba(0,0,0, 0)\nsidebar-foreground: <<colour foreground>>\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: <<colour foreground>>\nsidebar-tab-background-selected: <<colour background>>\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: <<colour foreground>>\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: <<colour foreground>>\nsidebar-tiddler-link-foreground: <<colour primary>>\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: <<colour foreground>>\ntab-border-selected: <<colour foreground>>\ntab-border: <<colour foreground>>\ntab-divider: <<colour foreground>>\ntab-foreground-selected: <<colour foreground>>\ntab-foreground: <<colour background>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #fff\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour foreground>>\ntiddler-controls-foreground-hover: #ddd\ntiddler-controls-foreground-selected: #fdd\ntiddler-controls-foreground: <<colour foreground>>\ntiddler-editor-background: <<colour background>>\ntiddler-editor-border-image: <<colour foreground>>\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: <<colour background>>\ntiddler-editor-fields-odd: <<colour background>>\ntiddler-info-background: <<colour background>>\ntiddler-info-border: <<colour foreground>>\ntiddler-info-tab-background: <<colour background>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour foreground>>\ntiddler-title-foreground: <<colour foreground>>\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour foreground>>\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/CupertinoDark": {
            "title": "$:/palettes/CupertinoDark",
            "tags": "$:/tags/Palette",
            "name": "Cupertino Dark",
            "description": "A macOS inspired dark palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #FF453A\nalert-border: #FF453A\nalert-highlight: #FFD60A\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #282828\nblockquote-bar: <<colour page-background>>\nbutton-foreground: <<colour background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #FF453A\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour tiddler-info-background>>\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: #3F638B\ndropdown-tab-background: #323232\ndropzone-background: #30D158\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #BF5AF2\nexternal-link-foreground: #32D74B\nforeground: #FFFFFF\nmenubar-background: #464646\nmenubar-foreground: #ffffff\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: #98989D\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #323232\npre-background: #464646\npre-border: transparent\nprimary: #0A84FF\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour background>>\nsidebar-controls-foreground-hover: #FF9F0A\nsidebar-controls-foreground: #8E8E93\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: #3F638B\nsidebar-tab-background: <<colour background>>\nsidebar-tab-border-selected: <<colour background>>\nsidebar-tab-border: <<colour background>>\nsidebar-tab-divider: <<colour background>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: #ffffff\nstatic-alert-foreground: #B4B4B4\ntab-background-selected: #3F638B\ntab-background: <<colour page-background>>\ntab-border-selected: <<colour page-background>>\ntab-border: <<colour page-background>>\ntab-divider: <<colour page-background>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #464646\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #48484A\ntag-foreground: #323232\ntiddler-background: <<colour background>>\ntiddler-border: transparent\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: #48484A\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #1E1E1E\ntiddler-info-border: #1E1E1E\ntiddler-info-tab-background: #3F638B\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: #464646\nselection-background: #3F638B\nselection-foreground: #ffffff\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #3F638B\nwikilist-button-foreground: <<colour foreground>>\nwikilist-button-open: #32D74B\nwikilist-button-open-hover: #32D74B\nwikilist-button-reveal: #0A84FF\nwikilist-button-reveal-hover: #0A84FF\nwikilist-button-remove: #FF453A\nwikilist-button-remove-hover: #FF453A\nwikilist-droplink-dragover: #32D74B\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour foreground>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-url: <<colour muted-foreground>>\n"
        },
        "$:/palettes/DarkPhotos": {
            "title": "$:/palettes/DarkPhotos",
            "created": "20150402111612188",
            "description": "Good with dark photo backgrounds",
            "modified": "20150402112344080",
            "name": "DarkPhotos",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background: \nbutton-foreground: \nbutton-border: \ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #ddd\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #336438\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #ccf\nsidebar-controls-foreground: #fff\nsidebar-foreground-shadow: rgba(0,0,0, 0.5)\nsidebar-foreground: #fff\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #eee\nsidebar-tab-background-selected: rgba(255,255,255, 0.8)\nsidebar-tab-background: rgba(255,255,255, 0.4)\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: rgba(255,255,255, 0.2)\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #aaf\nsidebar-tiddler-link-foreground: #ddf\nsite-title-foreground: #fff\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/DesertSand": {
            "title": "$:/palettes/DesertSand",
            "tags": "$:/tags/Palette",
            "name": "Desert Sand",
            "description": "A desert sand palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #E9E0C7\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour foreground>>\ncode-background: #F3EDDF\ncode-border: #C3BAA1\ncode-foreground: #ab3250\ndiff-delete-background: #bd8b8b\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #91c093\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ad3434\ndownload-background: #6ca16c\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #E9E0C7\ndropdown-tab-background: #BAB29C\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #313163\nexternal-link-foreground: #555592\nforeground: #2D2A23\nmenubar-background: #CDC2A6\nmenubar-foreground: #5A5446\nmessage-background: #ECE5CF\nmessage-border: #D6CBAA\nmessage-foreground: #5f6e7d\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #8A8885\nmodal-footer-background: #CDC2A6\nmodal-footer-border: #9D998E\nmodal-header-border: #9D998E\nmuted-foreground: #9D998E\nnotification-background: #F0E9D7\nnotification-border: #939189\npage-background: #e0d3af\npre-background: #D6CBAA\npre-border: #CDC2A6\nprimary: #5B6F55\nselection-background: #9D947B\nselection-foreground: <<colour foreground>>\nselect-tag-background: #F0E9D7\nselect-tag-foreground: #2D2A23\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #2D2A23\nsidebar-controls-foreground: #867F69\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #867F69\nsidebar-muted-foreground-hover: #706A58\nsidebar-muted-foreground: #B3A98C\nsidebar-tab-background-selected: #e0d3af\nsidebar-tab-background: #A6A193\nsidebar-tab-border-selected: #C3BAA1\nsidebar-tab-border: #C3BAA1\nsidebar-tab-divider: #CDC2A6\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: #2D2A23\nsidebar-tiddler-link-foreground-hover: #433F35\nsidebar-tiddler-link-foreground: #706A58\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #A6A193\ntab-background-selected: #E9E0C7\ntab-background: #A6A193\ntab-border-selected: #C3BAA1\ntab-border: #C3BAA1\ntab-divider: #CDC2A6\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #2D2A23\ntable-border: #9D998E\ntable-footer-background: #8A8885\ntable-header-background: #B0AA98\ntag-background: #706A58\ntag-foreground: #E3D7B7\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #9D947B\ntiddler-controls-foreground-selected: #706A58\ntiddler-controls-foreground: #C3BAA1\ntiddler-editor-background: #E9E0C7\ntiddler-editor-border-image: #A6A193\ntiddler-editor-border: #A6A193\ntiddler-editor-fields-even: #D6CBAA\ntiddler-editor-fields-odd: #C3BAA1\ntiddler-info-background: #E3D7B7\ntiddler-info-border: #BAB29C\ntiddler-info-tab-background: #E9E0C7\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #867F69\ntiddler-title-foreground: #374464\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #8A8885\nvery-muted-foreground: #CDC2A6\nwikilist-background: <<colour page-background>>\nwikilist-item: #CDC2A6\nwikilist-info: #161512\nwikilist-title: #433F35\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #706A58\nwikilist-button-open: #7db66a\nwikilist-button-open-hover: #56a556\nwikilist-button-reveal: #5a6c9e\nwikilist-button-reveal-hover: #454591\nwikilist-button-remove: #bc5972\nwikilist-button-remove-hover: #814040\nwikilist-toolbar-background: #CDC2A6\nwikilist-toolbar-foreground: #2D2A23\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #A6A193\nwikilist-button-foreground: #161512\n"
        },
        "$:/palettes/GruvboxDark": {
            "title": "$:/palettes/GruvboxDark",
            "name": "Gruvbox Dark",
            "description": "Retro groove color scheme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "license": "https://github.com/morhetz/gruvbox",
            "text": "alert-background: #cc241d\nalert-border: #cc241d\nalert-highlight: #d79921\nalert-muted-foreground: #504945\nbackground: #3c3836\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #504945\ncode-border: #504945\ncode-foreground: #fb4934\ndiff-delete-background: #fb4934\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #b8bb26\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #fb4934\ndownload-background: #b8bb26\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #665c54\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ebdbb2\ndropdown-tab-background: #665c54\ndropzone-background: #98971a\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #d3869b\nexternal-link-foreground: #8ec07c\nforeground: #fbf1c7\nmenubar-background: #504945\nmenubar-foreground: <<colour foreground>>\nmessage-background: #83a598\nmessage-border: #83a598\nmessage-foreground: #3c3836\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #504945\nmodal-footer-background: #3c3836\nmodal-footer-border: #3c3836\nmodal-header-border: #3c3836\nmuted-foreground: #d5c4a1\nnotification-background: <<colour primary>>\nnotification-border: <<colour primary>>\npage-background: #282828\npre-background: #504945\npre-border: #504945\nprimary: #d79921\nselect-tag-background: #665c54\nselect-tag-foreground: <<colour foreground>>\nselection-background: #458588\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #7c6f64\nsidebar-controls-foreground: #504945\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #fbf1c7\nsidebar-muted-foreground-hover: #7c6f64\nsidebar-muted-foreground: #504945\nsidebar-tab-background-selected: #bdae93\nsidebar-tab-background: #3c3836\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #bdae93\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #282828\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #458588\nsidebar-tiddler-link-foreground: #98971a\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ebdbb2\ntab-background: #665c54\ntab-border-selected: #665c54\ntab-border: #665c54\ntab-divider: #bdae93\ntab-foreground-selected: #282828\ntab-foreground: #ebdbb2\ntable-border: #7c6f64\ntable-footer-background: #665c54\ntable-header-background: #504945\ntag-background: #d3869b\ntag-foreground: #282828\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #7c6f64\ntiddler-controls-foreground-selected: <<colour primary>>\ntiddler-controls-foreground: #665c54\ntiddler-editor-background: #32302f\ntiddler-editor-border-image: #282828\ntiddler-editor-border: #282828\ntiddler-editor-fields-even: #504945\ntiddler-editor-fields-odd: #7c6f64\ntiddler-info-background: #32302f\ntiddler-info-border: #ebdbb2\ntiddler-info-tab-background: #ebdbb2\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #7c6f64\ntiddler-title-foreground: #a89984\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #504945\nvery-muted-foreground: #bdae93\nwikilist-background: <<colour page-background>>\nwikilist-button-background: #acacac\nwikilist-button-foreground: <<colour button-foreground>>\nwikilist-item: <<colour background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-toolbar-foreground: <<colour foreground>>\nwikilist-title: <<colour foreground>>\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: <<colour muted-foreground>>\nwikilist-button-open-hover: <<colour primary>>\nwikilist-button-open: <<colour dropzone-background>>\nwikilist-button-remove: <<colour dirty-indicator>>\nwikilist-button-remove-hover: <<colour alert-background>>\nwikilist-droplink-dragover: <<colour dropzone-background>>\nwikilist-button-reveal: <<colour sidebar-tiddler-link-foreground-hover>>\nwikilist-button-reveal-hover: <<colour message-background>>\n"
        },
        "$:/palettes/Nord": {
            "title": "$:/palettes/Nord",
            "name": "Nord",
            "description": "An arctic, north-bluish color palette.",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "license": "MIT, arcticicestudio, https://github.com/arcticicestudio/nord/blob/develop/LICENSE.md",
            "text": "alert-background: #D08770\nalert-border: #D08770\nalert-highlight: #B48EAD\nalert-muted-foreground: #4C566A\nbackground: #3b4252\nblockquote-bar: <<colour muted-foreground>>\nbutton-foreground: <<colour page-background>>\ncode-background: #2E3440\ncode-border: #2E3440\ncode-foreground: #BF616A\ndiff-delete-background: #BF616A\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #A3BE8C\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #BF616A\ndownload-background: #A3BE8C\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour background>>\ndropdown-tab-background-selected: #ECEFF4\ndropdown-tab-background: #4C566A\ndropzone-background: #A3BE8C\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #5E81AC\nexternal-link-foreground: #8FBCBB\nforeground: #d8dee9\nmenubar-background: #2E3440\nmenubar-foreground: #d8dee9\nmessage-background: #2E3440\nmessage-border: #2E3440\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #3b4252\nmodal-footer-background: #3b4252\nmodal-footer-border: #3b4252\nmodal-header-border: #3b4252\nmuted-foreground: #4C566A\nnotification-background: <<colour primary>>\nnotification-border: #EBCB8B\npage-background: #2e3440\npre-background: #2E3440\npre-border: #2E3440\nprimary: #5E81AC\nselect-tag-background: #3b4252\nselect-tag-foreground: <<colour foreground>>\nselection-background: #5E81AC\nselection-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour page-background>>\nsidebar-controls-foreground-hover: #D8DEE9\nsidebar-controls-foreground: #4C566A\nsidebar-foreground-shadow: transparent\nsidebar-foreground: #D8DEE9\nsidebar-muted-foreground-hover: #4C566A\nsidebar-muted-foreground: #4C566A\nsidebar-tab-background-selected: #ECEFF4\nsidebar-tab-background: #4C566A\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: #4C566A\nsidebar-tab-divider: <<colour page-background>>\nsidebar-tab-foreground-selected: #4C566A\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #A3BE8C\nsidebar-tiddler-link-foreground: #81A1C1\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #B48EAD\ntab-background-selected: #ECEFF4\ntab-background: #4C566A\ntab-border-selected: #4C566A\ntab-border: #4C566A\ntab-divider: #4C566A\ntab-foreground-selected: #4C566A\ntab-foreground: #D8DEE9\ntable-border: #4C566A\ntable-footer-background: #2e3440\ntable-header-background: #2e3440\ntag-background: #A3BE8C\ntag-foreground: #4C566A\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: \ntiddler-controls-foreground-selected: #EBCB8B\ntiddler-controls-foreground: #4C566A\ntiddler-editor-background: #2e3440\ntiddler-editor-border-image: #2e3440\ntiddler-editor-border: #3b4252\ntiddler-editor-fields-even: #2e3440\ntiddler-editor-fields-odd: #2e3440\ntiddler-info-background: #2e3440\ntiddler-info-border: #2e3440\ntiddler-info-tab-background: #2e3440\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #4C566A\ntiddler-title-foreground: #81A1C1\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: #2d3038\nvery-muted-foreground: #2d3038\nwikilist-background: <<colour page-background>>\nwikilist-toolbar-background: <<colour background>>\nwikilist-item: <<colour background>>\nwikilist-title: <<colour foreground>>\nwikilist-info: <<colour muted-foreground>>\nwikilist-button-open: #A3BE8C\nwikilist-button-open-hover: #A3BE8C\nwikilist-button-reveal: #81A1C1\nwikilist-button-reveal-hover: #81A1C1\nwikilist-button-remove: #B48EAD\nwikilist-button-remove-hover: #B48EAD\n"
        },
        "$:/palettes/Rocker": {
            "title": "$:/palettes/Rocker",
            "name": "Rocker",
            "description": "A dark theme",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #999999\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #000\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #cc0000\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #ffffff\nsidebar-foreground-shadow: rgba(255,255,255, 0.0)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #000\nsidebar-tab-background: <<colour tab-background>>\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: <<colour tab-divider>>\nsidebar-tab-foreground-selected: \nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #ffbb99\nsidebar-tiddler-link-foreground: #cc0000\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ffbb99\ntag-foreground: #000\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #cc0000\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/SolarFlare": {
            "title": "$:/palettes/SolarFlare",
            "name": "Solar Flare",
            "description": "Warm, relaxing earth colours",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": ": Background Tones\n\nbase03: #002b36\nbase02: #073642\n\n: Content Tones\n\nbase01: #586e75\nbase00: #657b83\nbase0: #839496\nbase1: #93a1a1\n\n: Background Tones\n\nbase2: #eee8d5\nbase3: #fdf6e3\n\n: Accent Colors\n\nyellow: #b58900\norange: #cb4b16\nred: #dc322f\nmagenta: #d33682\nviolet: #6c71c4\nblue: #268bd2\ncyan: #2aa198\ngreen: #859900\n\n: Additional Tones (RA)\n\nbase10: #c0c4bb\nviolet-muted: #7c81b0\nblue-muted: #4e7baa\n\nyellow-hot: #ffcc44\norange-hot: #eb6d20\nred-hot: #ff2222\nblue-hot: #2298ee\ngreen-hot: #98ee22\n\n: Palette\n\n: Do not use colour macro for background and foreground\nbackground: #fdf6e3\n    download-foreground: <<colour background>>\n    dragger-foreground: <<colour background>>\n    dropdown-background: <<colour background>>\n    modal-background: <<colour background>>\n    sidebar-foreground-shadow: <<colour background>>\n    tiddler-background: <<colour background>>\n    tiddler-border: <<colour background>>\n    tiddler-link-background: <<colour background>>\n    tab-background-selected: <<colour background>>\n        dropdown-tab-background-selected: <<colour tab-background-selected>>\nforeground: #657b83\n    dragger-background: <<colour foreground>>\n    tab-foreground: <<colour foreground>>\n        tab-foreground-selected: <<colour tab-foreground>>\n            sidebar-tab-foreground-selected: <<colour tab-foreground-selected>>\n        sidebar-tab-foreground: <<colour tab-foreground>>\n    sidebar-button-foreground: <<colour foreground>>\n    sidebar-controls-foreground: <<colour foreground>>\n    sidebar-foreground: <<colour foreground>>\n: base03\n: base02\n: base01\n    alert-muted-foreground: <<colour base01>>\n: base00\n    code-foreground: <<colour base00>>\n    message-foreground: <<colour base00>>\n    tag-foreground: <<colour base00>>\n: base0\n    sidebar-tiddler-link-foreground: <<colour base0>>\n: base1\n    muted-foreground: <<colour base1>>\n        blockquote-bar: <<colour muted-foreground>>\n        dropdown-border: <<colour muted-foreground>>\n        sidebar-muted-foreground: <<colour muted-foreground>>\n        tiddler-title-foreground: <<colour muted-foreground>>\n            site-title-foreground: <<colour tiddler-title-foreground>>\n: base2\n    modal-footer-background: <<colour base2>>\n    page-background: <<colour base2>>\n        modal-backdrop: <<colour page-background>>\n        notification-background: <<colour page-background>>\n        code-background: <<colour page-background>>\n            code-border: <<colour code-background>>\n        pre-background: <<colour page-background>>\n            pre-border: <<colour pre-background>>\n        sidebar-tab-background-selected: <<colour page-background>>\n    table-header-background: <<colour base2>>\n    tag-background: <<colour base2>>\n    tiddler-editor-background: <<colour base2>>\n    tiddler-info-background: <<colour base2>>\n    tiddler-info-tab-background: <<colour base2>>\n    tab-background: <<colour base2>>\n        dropdown-tab-background: <<colour tab-background>>\n: base3\n    alert-background: <<colour base3>>\n    message-background: <<colour base3>>\n: yellow\n: orange\n: red\n: magenta\n    alert-highlight: <<colour magenta>>\n: violet\n    external-link-foreground: <<colour violet>>\n: blue\n: cyan\n: green\n: base10\n    tiddler-controls-foreground: <<colour base10>>\n: violet-muted\n    external-link-foreground-visited: <<colour violet-muted>>\n: blue-muted\n    primary: <<colour blue-muted>>\n        download-background: <<colour primary>>\n        tiddler-link-foreground: <<colour primary>>\n\nalert-border: #b99e2f\ndirty-indicator: #ff0000\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nmessage-border: #cfd6e6\nmodal-border: #999999\nselect-tag-background:\nselect-tag-foreground:\nsidebar-controls-foreground-hover:\nsidebar-muted-foreground-hover:\nsidebar-tab-background: #ded8c5\nsidebar-tiddler-link-foreground-hover:\nstatic-alert-foreground: #aaaaaa\ntab-border: #cccccc\n    modal-footer-border: <<colour tab-border>>\n    modal-header-border: <<colour tab-border>>\n    notification-border: <<colour tab-border>>\n    sidebar-tab-border: <<colour tab-border>>\n    tab-border-selected: <<colour tab-border>>\n        sidebar-tab-border-selected: <<colour tab-border-selected>>\ntab-divider: #d8d8d8\n    sidebar-tab-divider: <<colour tab-divider>>\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-border: #dddddd\ntiddler-subtitle-foreground: #c0c0c0\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\n"
        },
        "$:/palettes/SolarizedDark": {
            "title": "$:/palettes/SolarizedDark",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Precision dark colors for machines and people",
            "license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
            "name": "SolarizedDark",
            "text": "alert-background: #073642\nalert-border: #93a1a1\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #073642\nblockquote-bar: #d33682\nbutton-background: #073642\nbutton-border: #586e75\nbutton-foreground: #93a1a1\ncode-background: #073642\ncode-border: #586e75\ncode-foreground: #93a1a1\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #073642\ndragger-background: #073642\ndragger-foreground: #839496\ndropdown-background: #073642\ndropdown-border: #93a1a1\ndropdown-tab-background: #002b36\ndropdown-tab-background-selected: #073642\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover:\nexternal-link-foreground-visited: #268bd2\nforeground: #839496\nmessage-background: #002b36\nmessage-border: #586e75\nmessage-foreground: #839496\nmodal-backdrop: #657b83\nmodal-background: #002b36\nmodal-border: #586e75\nmodal-footer-background: #073642\nmodal-footer-border: #586e75\nmodal-header-border: #586e75\nmuted-foreground: #93a1a1\nnotification-background: #002b36\nnotification-border: #586e75\npage-background: #073642\npre-background: inherit\npre-border: #657b83\nprimary: #859900\nselect-tag-background: #002b36\nselect-tag-foreground: #839496\nsidebar-button-foreground: #93a1a1\nsidebar-controls-foreground: #93a1a1\nsidebar-controls-foreground-hover: #eee8d5\nsidebar-foreground: #93a1a1\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #839496\nsidebar-muted-foreground-hover: #93a1a1\nsidebar-tab-background: #002b36\nsidebar-tab-background-selected: #073642\nsidebar-tab-border: #073642\nsidebar-tab-border-selected: #839496\nsidebar-tab-divider: #002b36\nsidebar-tab-foreground: #657b83\nsidebar-tab-foreground-selected: #93a1a1\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #eee8d5\nsite-title-foreground: #d33682\nstatic-alert-foreground: #93a1a1\ntab-background: #073642\ntab-background-selected: #002b36\ntab-border: #586e75\ntab-border-selected: #93a1a1\ntab-divider: #93a1a1\ntab-foreground: #839496\ntab-foreground-selected: #93a1a1\ntable-border: #586e75\ntable-footer-background: #073642\ntable-header-background: #073642\ntag-background: #b58900\ntag-foreground: #002b36\ntiddler-background: #002b36\ntiddler-border: #586e75\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #002b36\ntiddler-editor-border: #073642\ntiddler-editor-border-image: #002b36\ntiddler-editor-fields-even: #002b36\ntiddler-editor-fields-odd: #073642\ntiddler-info-background: #073642\ntiddler-info-border: #657b83\ntiddler-info-tab-background: #002b36\ntiddler-link-background: #002b36\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #839496\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #839496\ntoolbar-close-button: #839496\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #839496\ntoolbar-edit-button: #839496\ntoolbar-info-button: #839496\ntoolbar-new-button: #839496\ntoolbar-options-button: #839496\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #586e75\n"
        },
        "$:/palettes/SolarizedLight": {
            "title": "$:/palettes/SolarizedLight",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Precision colors for machines and people",
            "license": "MIT, Ethan Schoonover, https://github.com/altercation/solarized/blob/master/LICENSE",
            "name": "SolarizedLight",
            "text": "alert-background: #eee8d5\nalert-border: #586e75\nalert-highlight: #d33682\nalert-muted-foreground: #d33682\nbackground: #eee8d5\nblockquote-bar: #d33682\nbutton-background: #eee8d5\nbutton-border: #93a1a1\nbutton-foreground: #586e75\ncode-background: #eee8d5\ncode-border: #93a1a1\ncode-foreground: #586e75\ndirty-indicator: inherit\ndownload-background: #859900\ndownload-foreground: #eee8d5\ndragger-background: #eee8d5\ndragger-foreground: #657b83\ndropdown-background: #eee8d5\ndropdown-border: #586e75\ndropdown-tab-background: #fdf6e3\ndropdown-tab-background-selected: #eee8d5\ndropzone-background: #859900\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: #268bd2\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #268bd2\nforeground: #657b83\nmessage-background: #fdf6e3\nmessage-border: #93a1a1\nmessage-foreground: #657b83\nmodal-backdrop: #839496\nmodal-background: #fdf6e3\nmodal-border: #93a1a1\nmodal-footer-background: #eee8d5\nmodal-footer-border: #93a1a1\nmodal-header-border: #93a1a1\nmuted-foreground: #586e75\nnotification-background: #fdf6e3\nnotification-border: #93a1a1\npage-background: #eee8d5\npre-background: #eee8d5\npre-border: #839496\nprimary: #859900\nselect-tag-background: #fdf6e3\nselect-tag-foreground: #657b83\nsidebar-button-foreground: #586e75\nsidebar-controls-foreground: #586e75\nsidebar-controls-foreground-hover: #d33682\nsidebar-foreground: #586e75\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: #657b83\nsidebar-muted-foreground-hover: #586e75\nsidebar-tab-background: #fdf6e3\nsidebar-tab-background-selected: #eee8d5\nsidebar-tab-border: #eee8d5\nsidebar-tab-border-selected: #657b83\nsidebar-tab-divider: #fdf6e3\nsidebar-tab-foreground: #839496\nsidebar-tab-foreground-selected: #586e75\nsidebar-tiddler-link-foreground: #2aa198\nsidebar-tiddler-link-foreground-hover: #002b36\nsite-title-foreground: #d33682\nstatic-alert-foreground: #586e75\ntab-background: #eee8d5\ntab-background-selected: #fdf6e3\ntab-border: #93a1a1\ntab-border-selected: #586e75\ntab-divider: #586e75\ntab-foreground: #657b83\ntab-foreground-selected: #586e75\ntable-border: #93a1a1\ntable-footer-background: #eee8d5\ntable-header-background: #eee8d5\ntag-background: #b58900\ntag-foreground: #fdf6e3\ntiddler-background: #fdf6e3\ntiddler-border: #93a1a1\ntiddler-controls-foreground: inherit\ntiddler-controls-foreground-hover: #d33682\ntiddler-controls-foreground-selected: #2aa198\ntiddler-editor-background: #fdf6e3\ntiddler-editor-border: #eee8d5\ntiddler-editor-border-image: #fdf6e3\ntiddler-editor-fields-even: #fdf6e3\ntiddler-editor-fields-odd: #eee8d5\ntiddler-info-background: #eee8d5\ntiddler-info-border: #839496\ntiddler-info-tab-background: #fdf6e3\ntiddler-link-background: #fdf6e3\ntiddler-link-foreground: #2aa198\ntiddler-subtitle-foreground: #657b83\ntiddler-title-foreground: #d33682\ntoolbar-cancel-button: #657b83\ntoolbar-close-button: #657b83\ntoolbar-delete-button: #dc322f\ntoolbar-done-button: #657b83\ntoolbar-edit-button: #657b83\ntoolbar-info-button: #657b83\ntoolbar-new-button: #657b83\ntoolbar-options-button: #657b83\ntoolbar-save-button: inherit\nuntagged-background: #586e75\nvery-muted-foreground: #93a1a1\n"
        },
        "$:/palettes/SpartanDay": {
            "title": "$:/palettes/SpartanDay",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Cold, spartan day colors",
            "name": "Spartan Day",
            "text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #FAFAFA\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: #ececec\ncode-border: #ececec\ncode-foreground: \ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #FFFFFF\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #F5F5F5\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: \nexternal-link-foreground: \nforeground: rgba(0, 0, 0, 0.87)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(0, 0, 0, 0.54)\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour very-muted-foreground>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(0, 0, 0, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #f4f4f4\npre-background: #ececec\npre-border: #ececec\nprimary: #3949ab\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #aeaeae\nsidebar-controls-foreground: #c6c6c6\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground-hover: rgba(0, 0, 0, 0.54)\nsidebar-muted-foreground: rgba(0, 0, 0, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(0, 0, 0, 0.87)\nsidebar-tab-foreground: rgba(0, 0, 0, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(0, 0, 0, 0.87)\nsidebar-tiddler-link-foreground: rgba(0, 0, 0, 0.54)\nsite-title-foreground: rgba(0, 0, 0, 0.87)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(0, 0, 0, 0.87)\ntab-foreground: rgba(0, 0, 0, 0.54)\ntable-border: #d8d8d8\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: #f9f9f9\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: #e8e7e7\ntiddler-editor-fields-even: rgba(0, 0, 0, 0.1)\ntiddler-editor-fields-odd: rgba(0, 0, 0, 0.04)\ntiddler-info-background: #F5F5F5\ntiddler-info-border: #F5F5F5\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #000000\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(0, 0, 0, 0.12)\n"
        },
        "$:/palettes/SpartanNight": {
            "title": "$:/palettes/SpartanNight",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "description": "Dark spartan colors",
            "name": "Spartan Night",
            "text": "alert-background: <<colour background>>\nalert-border: <<colour very-muted-foreground>>\nalert-highlight: <<colour very-muted-foreground>>\nalert-muted-foreground: <<colour muted-foreground>>\nbackground: #303030\nblockquote-bar: <<colour page-background>>\nbutton-background: transparent\nbutton-foreground: inherit\nbutton-border: <<colour tag-background>>\ncode-background: <<colour pre-background>>\ncode-border: <<colour pre-border>>\ncode-foreground: rgba(255, 255, 255, 0.54)\ndirty-indicator: #c80000\ndownload-background: <<colour primary>>\ndownload-foreground: <<colour foreground>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: #424242\ndropdown-border: <<colour dropdown-background>>\ndropdown-tab-background-selected: <<colour dropdown-background>>\ndropdown-tab-background: #050505\ndropzone-background: <<colour tag-background>>\nexternal-link-background-hover: transparent\nexternal-link-background-visited: transparent\nexternal-link-background: transparent\nexternal-link-foreground-hover: \nexternal-link-foreground-visited: #7c318c\nexternal-link-foreground: #9e3eb3\nforeground: rgba(255, 255, 255, 0.7)\nmessage-background: <<colour background>>\nmessage-border: <<colour very-muted-foreground>>\nmessage-foreground: rgba(255, 255, 255, 0.54)\nmodal-backdrop: <<colour page-background>>\nmodal-background: <<colour background>>\nmodal-border: <<colour very-muted-foreground>>\nmodal-footer-background: <<colour background>>\nmodal-footer-border: <<colour background>>\nmodal-header-border: <<colour very-muted-foreground>>\nmuted-foreground: rgba(255, 255, 255, 0.54)\nnotification-background: <<colour dropdown-background>>\nnotification-border: <<colour dropdown-background>>\npage-background: #212121\npre-background: #2a2a2a\npre-border: transparent\nprimary: #5656f3\nselect-tag-background: <<colour background>>\nselect-tag-foreground: <<colour foreground>>\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #494949\nsidebar-controls-foreground: #5d5d5d\nsidebar-foreground-shadow: transparent\nsidebar-foreground: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground-hover: rgba(255, 255, 255, 0.54)\nsidebar-muted-foreground: rgba(255, 255, 255, 0.38)\nsidebar-tab-background-selected: <<colour page-background>>\nsidebar-tab-background: transparent\nsidebar-tab-border-selected: <<colour table-border>>\nsidebar-tab-border: transparent\nsidebar-tab-divider: <<colour table-border>>\nsidebar-tab-foreground-selected: rgba(255, 255, 255, 0.87)\nsidebar-tab-foreground: rgba(255, 255, 255, 0.54)\nsidebar-tiddler-link-foreground-hover: rgba(255, 255, 255, 0.7)\nsidebar-tiddler-link-foreground: rgba(255, 255, 255, 0.54)\nsite-title-foreground: rgba(255, 255, 255, 0.7)\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: <<colour background>>\ntab-background: transparent\ntab-border-selected: <<colour table-border>>\ntab-border: transparent\ntab-divider: <<colour table-border>>\ntab-foreground-selected: rgba(255, 255, 255, 0.87)\ntab-foreground: rgba(255, 255, 255, 0.54)\ntable-border: #3a3a3a\ntable-footer-background: <<colour tiddler-editor-fields-odd>>\ntable-header-background: <<colour tiddler-editor-fields-even>>\ntag-background: #ec6\ntag-foreground: <<colour button-foreground>>\ntiddler-background: <<colour background>>\ntiddler-border: rgb(55,55,55)\ntiddler-controls-foreground-hover: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground-selected: <<colour sidebar-controls-foreground-hover>>\ntiddler-controls-foreground: <<colour sidebar-controls-foreground>>\ntiddler-editor-background: transparent\ntiddler-editor-border-image: \ntiddler-editor-border: rgba(255, 255, 255, 0.08)\ntiddler-editor-fields-even: rgba(255, 255, 255, 0.1)\ntiddler-editor-fields-odd: rgba(255, 255, 255, 0.04)\ntiddler-info-background: #454545\ntiddler-info-border: #454545\ntiddler-info-tab-background: <<colour tiddler-editor-fields-odd>>\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: <<colour muted-foreground>>\ntiddler-title-foreground: #FFFFFF\ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \ntoolbar-info-button: \ntoolbar-edit-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-cancel-button: \ntoolbar-done-button: \nuntagged-background: <<colour very-muted-foreground>>\nvery-muted-foreground: rgba(255, 255, 255, 0.12)\n"
        },
        "$:/palettes/Twilight": {
            "title": "$:/palettes/Twilight",
            "tags": "$:/tags/Palette",
            "author": "Thomas Elmiger",
            "type": "application/x-tiddler-dictionary",
            "name": "Twilight",
            "description": "Delightful, soft darkness.",
            "text": "alert-background: rgb(255, 255, 102)\nalert-border: rgb(232, 232, 125)\nalert-highlight: rgb(255, 51, 51)\nalert-muted-foreground: rgb(224, 82, 82)\nbackground: rgb(38, 38, 38)\nblockquote-bar: rgba(240, 196, 117, 0.7)\nbutton-background: rgb(63, 63, 63)\nbutton-border: rgb(127, 127, 127)\nbutton-foreground: rgb(179, 179, 179)\ncode-background: rgba(0,0,0,0.03)\ncode-border: rgba(0,0,0,0.08)\ncode-foreground: rgb(255, 94, 94)\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: rgb(255, 94, 94)\ndownload-background: #19a974\ndownload-foreground: rgb(38, 38, 38)\ndragger-background: rgb(179, 179, 179)\ndragger-foreground: rgb(38, 38, 38)\ndropdown-background: rgb(38, 38, 38)\ndropdown-border: rgb(255, 255, 255)\ndropdown-tab-background: rgba(0,0,0,.1)\ndropdown-tab-background-selected: rgba(255,255,255,1)\ndropzone-background: #9eebcf\nexternal-link-background: inherit\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-foreground: rgb(179, 179, 255)\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: rgb(153, 153, 255)\nforeground: rgb(179, 179, 179)\nmessage-background: <<colour tag-foreground>>\nmessage-border: #96ccff\nmessage-foreground: <<colour tag-background>>\nmodal-backdrop: rgb(179, 179, 179)\nmodal-background: rgb(38, 38, 38)\nmodal-border: rgba(0,0,0,.5)\nmodal-footer-background: #f4f4f4\nmodal-footer-border: rgba(0,0,0,.1)\nmodal-header-border: rgba(0,0,0,.2)\nmuted-foreground: rgb(255, 255, 255)\nnotification-background: <<colour tag-foreground>>\nnotification-border: <<colour tag-background>>\npage-background: rgb(26, 26, 26)\npre-background: rgb(25, 25, 25)\npre-border: rgba(0,0,0,.2)\nprimary: rgb(255, 201, 102)\nselect-tag-background: \nselect-tag-foreground: \nsidebar-button-foreground: rgb(179, 179, 179)\nsidebar-controls-foreground: rgb(153, 153, 153)\nsidebar-controls-foreground-hover: <<colour tiddler-controls-foreground-hover>>\nsidebar-foreground: rgb(141, 141, 141)\nsidebar-foreground-shadow: transparent\nsidebar-muted-foreground: rgba(0, 0, 0, 0.5)\nsidebar-muted-foreground-hover: rgb(141, 141, 141)\nsidebar-tab-background: rgba(141, 141, 141, 0.2)\nsidebar-tab-background-selected: rgb(26, 26, 26)\nsidebar-tab-border: rgb(127, 127, 127)\nsidebar-tab-border-selected: rgb(127, 127, 127)\nsidebar-tab-divider: rgb(127, 127, 127)\nsidebar-tab-foreground: rgb(179, 179, 179)\nsidebar-tab-foreground-selected: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground: rgb(179, 179, 179)\nsidebar-tiddler-link-foreground-hover: rgb(115, 115, 115)\nsite-title-foreground: rgb(255, 201, 102)\nstatic-alert-foreground: rgba(0,0,0,.3)\ntab-background: rgba(0,0,0,0.125)\ntab-background-selected: rgb(38, 38, 38)\ntab-border: rgb(255, 201, 102)\ntab-border-selected: rgb(255, 201, 102)\ntab-divider: rgb(255, 201, 102)\ntab-foreground: rgb(179, 179, 179)\ntab-foreground-selected: rgb(179, 179, 179)\ntable-border: rgba(255,255,255,.3)\ntable-footer-background: rgba(0,0,0,.4)\ntable-header-background: rgba(0,0,0,.1)\ntag-background: rgb(255, 201, 102)\ntag-foreground: rgb(25, 25, 25)\ntiddler-background: rgb(38, 38, 38)\ntiddler-border: rgba(240, 196, 117, 0.7)\ntiddler-controls-foreground: rgb(128, 128, 128)\ntiddler-controls-foreground-hover: rgba(255, 255, 255, 0.8)\ntiddler-controls-foreground-selected: rgba(255, 255, 255, 0.9)\ntiddler-editor-background: rgb(33, 33, 33)\ntiddler-editor-border: rgb(63, 63, 63)\ntiddler-editor-border-image: rgb(25, 25, 25)\ntiddler-editor-fields-even: rgb(33, 33, 33)\ntiddler-editor-fields-odd: rgb(28, 28, 28)\ntiddler-info-background: rgb(43, 43, 43)\ntiddler-info-border: rgb(25, 25, 25)\ntiddler-info-tab-background: rgb(43, 43, 43)\ntiddler-link-background: rgb(38, 38, 38)\ntiddler-link-foreground: rgb(204, 204, 255)\ntiddler-subtitle-foreground: rgb(255, 255, 255)\ntiddler-title-foreground: rgb(255, 192, 76)\ntoolbar-cancel-button: \ntoolbar-close-button: \ntoolbar-delete-button: \ntoolbar-done-button: \ntoolbar-edit-button: \ntoolbar-info-button: \ntoolbar-new-button: \ntoolbar-options-button: \ntoolbar-save-button: \nuntagged-background: rgb(255, 255, 255)\nvery-muted-foreground: rgba(240, 196, 117, 0.7)\n"
        },
        "$:/palettes/Vanilla": {
            "title": "$:/palettes/Vanilla",
            "name": "Vanilla",
            "description": "Pale and unobtrusive",
            "tags": "$:/tags/Palette",
            "type": "application/x-tiddler-dictionary",
            "text": "alert-background: #ffe476\nalert-border: #b99e2f\nalert-highlight: #881122\nalert-muted-foreground: #b99e2f\nbackground: #ffffff\nblockquote-bar: <<colour muted-foreground>>\nbutton-background:\nbutton-foreground:\nbutton-border:\ncode-background: #f7f7f9\ncode-border: #e1e1e8\ncode-foreground: #dd1144\ndiff-delete-background: #ffc9c9\ndiff-delete-foreground: <<colour foreground>>\ndiff-equal-background: \ndiff-equal-foreground: <<colour foreground>>\ndiff-insert-background: #aaefad\ndiff-insert-foreground: <<colour foreground>>\ndiff-invisible-background: \ndiff-invisible-foreground: <<colour muted-foreground>>\ndirty-indicator: #ff0000\ndownload-background: #34c734\ndownload-foreground: <<colour background>>\ndragger-background: <<colour foreground>>\ndragger-foreground: <<colour background>>\ndropdown-background: <<colour background>>\ndropdown-border: <<colour muted-foreground>>\ndropdown-tab-background-selected: #fff\ndropdown-tab-background: #ececec\ndropzone-background: rgba(0,200,0,0.7)\nexternal-link-background-hover: inherit\nexternal-link-background-visited: inherit\nexternal-link-background: inherit\nexternal-link-foreground-hover: inherit\nexternal-link-foreground-visited: #0000aa\nexternal-link-foreground: #0000ee\nforeground: #333333\nmessage-background: #ecf2ff\nmessage-border: #cfd6e6\nmessage-foreground: #547599\nmodal-backdrop: <<colour foreground>>\nmodal-background: <<colour background>>\nmodal-border: #999999\nmodal-footer-background: #f5f5f5\nmodal-footer-border: #dddddd\nmodal-header-border: #eeeeee\nmuted-foreground: #bbb\nnotification-background: #ffffdd\nnotification-border: #999999\npage-background: #f4f4f4\npre-background: #f5f5f5\npre-border: #cccccc\nprimary: #5778d8\nselection-background:\nselection-foreground:\nselect-tag-background:\nselect-tag-foreground:\nsidebar-button-foreground: <<colour foreground>>\nsidebar-controls-foreground-hover: #000000\nsidebar-controls-foreground: #aaaaaa\nsidebar-foreground-shadow: rgba(255,255,255, 0.8)\nsidebar-foreground: #acacac\nsidebar-muted-foreground-hover: #444444\nsidebar-muted-foreground: #c0c0c0\nsidebar-tab-background-selected: #f4f4f4\nsidebar-tab-background: #e0e0e0\nsidebar-tab-border-selected: <<colour tab-border-selected>>\nsidebar-tab-border: <<colour tab-border>>\nsidebar-tab-divider: #e4e4e4\nsidebar-tab-foreground-selected:\nsidebar-tab-foreground: <<colour tab-foreground>>\nsidebar-tiddler-link-foreground-hover: #444444\nsidebar-tiddler-link-foreground: #999999\nsite-title-foreground: <<colour tiddler-title-foreground>>\nstatic-alert-foreground: #aaaaaa\ntab-background-selected: #ffffff\ntab-background: #d8d8d8\ntab-border-selected: #d8d8d8\ntab-border: #cccccc\ntab-divider: #d8d8d8\ntab-foreground-selected: <<colour tab-foreground>>\ntab-foreground: #666666\ntable-border: #dddddd\ntable-footer-background: #a8a8a8\ntable-header-background: #f0f0f0\ntag-background: #ec6\ntag-foreground: #ffffff\ntiddler-background: <<colour background>>\ntiddler-border: <<colour background>>\ntiddler-controls-foreground-hover: #888888\ntiddler-controls-foreground-selected: #444444\ntiddler-controls-foreground: #cccccc\ntiddler-editor-background: #f8f8f8\ntiddler-editor-border-image: #ffffff\ntiddler-editor-border: #cccccc\ntiddler-editor-fields-even: #e0e8e0\ntiddler-editor-fields-odd: #f0f4f0\ntiddler-info-background: #f8f8f8\ntiddler-info-border: #dddddd\ntiddler-info-tab-background: #f8f8f8\ntiddler-link-background: <<colour background>>\ntiddler-link-foreground: <<colour primary>>\ntiddler-subtitle-foreground: #c0c0c0\ntiddler-title-foreground: #182955\ntoolbar-new-button:\ntoolbar-options-button:\ntoolbar-save-button:\ntoolbar-info-button:\ntoolbar-edit-button:\ntoolbar-close-button:\ntoolbar-delete-button:\ntoolbar-cancel-button:\ntoolbar-done-button:\nuntagged-background: #999999\nvery-muted-foreground: #888888\nwikilist-background: #e5e5e5\nwikilist-item: #fff\nwikilist-info: #000\nwikilist-title: #666\nwikilist-title-svg: <<colour wikilist-title>>\nwikilist-url: #aaa\nwikilist-button-open: #4fb82b\nwikilist-button-open-hover: green\nwikilist-button-reveal: #5778d8\nwikilist-button-reveal-hover: blue\nwikilist-button-remove: #d85778\nwikilist-button-remove-hover: red\nwikilist-toolbar-background: #d3d3d3\nwikilist-toolbar-foreground: #888\nwikilist-droplink-dragover: rgba(255,192,192,0.5)\nwikilist-button-background: #acacac\nwikilist-button-foreground: #000\n"
        },
        "$:/core/readme": {
            "title": "$:/core/readme",
            "text": "This plugin contains TiddlyWiki's core components, comprising:\n\n* JavaScript code modules\n* Icons\n* Templates needed to create TiddlyWiki's user interface\n* British English (''en-GB'') translations of the localisable strings used by the core\n"
        },
        "$:/library/sjcl.js/license": {
            "title": "$:/library/sjcl.js/license",
            "type": "text/plain",
            "text": "SJCL is open. You can use, modify and redistribute it under a BSD\nlicense or under the GNU GPL, version 2.0.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/BSD-2-Clause\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University. All rights reserved.\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are\nmet:\n\n1. Redistributions of source code must retain the above copyright\nnotice, this list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright\nnotice, this list of conditions and the following disclaimer in the\ndocumentation and/or other materials provided with the distribution.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS\nIS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED\nTO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A\nPARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\nHOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\nSPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED\nTO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR\nPROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF\nLIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING\nNEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS\nSOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n\n---------------------------------------------------------------------\n\nhttp://opensource.org/licenses/GPL-2.0\n\nThe Stanford Javascript Crypto Library (hosted here on GitHub) is a\nproject by the Stanford Computer Security Lab to build a secure,\npowerful, fast, small, easy-to-use, cross-browser library for\ncryptography in Javascript.\n\nCopyright (c) 2009-2015, Emily Stark, Mike Hamburg and Dan Boneh at\nStanford University.\n\nThis program is free software; you can redistribute it and/or modify it\nunder the terms of the GNU General Public License as published by the\nFree Software Foundation; either version 2 of the License, or (at your\noption) any later version.\n\nThis program is distributed in the hope that it will be useful, but\nWITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General\nPublic License for more details.\n\nYou should have received a copy of the GNU General Public License along\nwith this program; if not, write to the Free Software Foundation, Inc.,\n59 Temple Place, Suite 330, Boston, MA 02111-1307 USA"
        },
        "$:/core/templates/MOTW.html": {
            "title": "$:/core/templates/MOTW.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline entity\n<!-- The following comment is called a MOTW comment and is necessary for the TiddlyIE Internet Explorer extension -->\n<!-- saved from url=(0021)https://tiddlywiki.com -->&#13;&#10;"
        },
        "$:/core/templates/alltiddlers.template.html": {
            "title": "$:/core/templates/alltiddlers.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "<!-- This template is provided for backwards compatibility with older versions of TiddlyWiki -->\n\n<$set name=\"exportFilter\" value=\"[!is[system]sort[title]]\">\n\n{{$:/core/templates/exporters/StaticRiver}}\n\n</$set>\n"
        },
        "$:/core/templates/canonical-uri-external-image": {
            "title": "$:/core/templates/canonical-uri-external-image",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external images.\n\nChange the `./images/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./images/<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-raw": {
            "title": "$:/core/templates/canonical-uri-external-raw",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external raw files that are stored in the same directory\n\n-->\n<$view field=\"title\" format=\"doubleurlencoded\"/>"
        },
        "$:/core/templates/canonical-uri-external-text": {
            "title": "$:/core/templates/canonical-uri-external-text",
            "text": "<!--\n\nThis template is used to assign the ''_canonical_uri'' field to external text files.\n\nChange the `./text/` part to a different base URI. The URI can be relative or absolute.\n\n-->\n./text/<$view field=\"title\" format=\"doubleurlencoded\"/>.tid"
        },
        "$:/core/templates/css-tiddler": {
            "title": "$:/core/templates/css-tiddler",
            "text": "<!--\n\nThis template is used for saving CSS tiddlers as a style tag with data attributes representing the tiddler fields.\n\n-->`<style`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/css\">`<$view field=\"text\" format=\"text\" />`</style>`"
        },
        "$:/core/templates/exporters/CsvFile": {
            "title": "$:/core/templates/exporters/CsvFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/CsvFile}}",
            "extension": ".csv",
            "text": "<$macrocall $name=\"csvtiddlers\" filter=<<exportFilter>> format=\"quoted-comma-sep\" $output=\"text/raw\"/>\n"
        },
        "$:/core/templates/exporters/JsonFile": {
            "title": "$:/core/templates/exporters/JsonFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/JsonFile}}",
            "extension": ".json",
            "text": "<$macrocall $name=\"jsontiddlers\" filter=<<exportFilter>> $output=\"text/raw\"/>\n"
        },
        "$:/core/templates/exporters/StaticRiver": {
            "title": "$:/core/templates/exporters/StaticRiver",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/StaticRiver}}",
            "extension": ".html",
            "text": "\\define tv-wikilink-template() #$uri_encoded$\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n<section class=\"tc-story-river tc-static-story-river\">\n{{$:/core/templates/exporters/StaticRiver/Content||$:/core/templates/html-tiddler}}\n</section>\n</body>\n</html>\n"
        },
        "$:/core/templates/exporters/StaticRiver/Content": {
            "title": "$:/core/templates/exporters/StaticRiver/Content",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ ||$:/core/templates/static-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>\n"
        },
        "$:/core/templates/exporters/TidFile": {
            "title": "$:/core/templates/exporters/TidFile",
            "tags": "$:/tags/Exporter",
            "description": "{{$:/language/Exporters/TidFile}}",
            "extension": ".tid",
            "condition": "[<count>compare:lte[1]]",
            "text": "\\define renderContent()\n{{{ $(exportFilter)$ +[limit[1]] ||$:/core/templates/tid-tiddler}}}\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<<renderContent>>"
        },
        "$:/core/save/all-external-js": {
            "title": "$:/core/save/all-external-js",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/core]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5-external-js.html}}\n"
        },
        "$:/core/templates/tiddlywiki5.js": {
            "title": "$:/core/templates/tiddlywiki5.js",
            "text": "\\rules only filteredtranscludeinline transcludeinline codeinline\n\n/*\n{{ $:/core/copyright.txt ||$:/core/templates/plain-text-tiddler}}\n`*/\n`<!--~~ Library modules ~~-->\n{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/plain-text-tiddler}}}\n<!--~~ Boot prefix ~~-->\n{{ $:/boot/bootprefix.js ||$:/core/templates/plain-text-tiddler}}\n<!--~~ Core plugin ~~-->\n{{$:/core/templates/tiddlywiki5.js/tiddlers}}\n<!--~~ Boot kernel ~~-->\n{{ $:/boot/boot.js ||$:/core/templates/plain-text-tiddler}}\n"
        },
        "$:/core/templates/tiddlywiki5.js/tiddlers": {
            "title": "$:/core/templates/tiddlywiki5.js/tiddlers",
            "text": "`\n$tw.preloadTiddlerArray(`<$text text=<<jsontiddlers \"[[$:/core]]\">>/>`);\n`\n"
        },
        "$:/core/templates/tiddlywiki5-external-js.html": {
            "title": "$:/core/templates/tiddlywiki5-external-js.html",
            "text": "\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n{{$:/core/templates/MOTW.html}}<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"{{$:/core/copyright.txt}}\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/core/wiki/rawmarkup]] [all[shadows+tiddlers]tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n{{$:/core/templates/static.area}}\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n{{$:/core/templates/store.area.template.html}}\n<!--~~ Raw markup for the bottom of the body section ~~-->\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}\n</body>\n<script src=\"%24%3A%2Fcore%2Ftemplates%2Ftiddlywiki5.js\" onerror=\"alert('Error: Cannot load tiddlywiki.js');\"></script>\n</html>\n"
        },
        "$:/core/templates/html-div-skinny-tiddler": {
            "title": "$:/core/templates/html-div-skinny-tiddler",
            "text": "<!--\n\nThis template is a variant of $:/core/templates/html-div-tiddler used for saving skinny tiddlers (with no text field)\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre></pre>\n</div>`\n"
        },
        "$:/core/templates/html-div-tiddler": {
            "title": "$:/core/templates/html-div-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as an HTML DIV tag with attributes representing the tiddler fields.\n\n-->`<div`<$fields template=' $name$=\"$encoded_value$\"'></$fields>`>\n<pre>`<$view field=\"text\" format=\"htmlencoded\" />`</pre>\n</div>`\n"
        },
        "$:/core/templates/html-tiddler": {
            "title": "$:/core/templates/html-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw HTML\n\n--><$view field=\"text\" format=\"htmlwikified\" />"
        },
        "$:/core/templates/javascript-tiddler": {
            "title": "$:/core/templates/javascript-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields.\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\">`<$view field=\"text\" format=\"text\" />`</script>`"
        },
        "$:/core/templates/json-tiddler": {
            "title": "$:/core/templates/json-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as raw JSON\n\n--><$text text=<<jsontiddler>>/>"
        },
        "$:/core/templates/module-tiddler": {
            "title": "$:/core/templates/module-tiddler",
            "text": "<!--\n\nThis template is used for saving JavaScript tiddlers as a script tag with data attributes representing the tiddler fields. The body of the tiddler is wrapped in a call to the `$tw.modules.define` function in order to define the body of the tiddler as a module\n\n-->`<script`<$fields template=' data-tiddler-$name$=\"$encoded_value$\"'></$fields>` type=\"text/javascript\" data-module=\"yes\">$tw.modules.define(\"`<$view field=\"title\" format=\"jsencoded\" />`\",\"`<$view field=\"module-type\" format=\"jsencoded\" />`\",function(module,exports,require) {`<$view field=\"text\" format=\"text\" />`});\n</script>`"
        },
        "$:/core/templates/plain-text-tiddler": {
            "title": "$:/core/templates/plain-text-tiddler",
            "text": "<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/raw-static-tiddler": {
            "title": "$:/core/templates/raw-static-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers as static HTML\n\n--><$view field=\"text\" format=\"plainwikified\" />"
        },
        "$:/core/save/all": {
            "title": "$:/core/save/all",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[prefix[$:/temp/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] $(publishFilter)$\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/empty": {
            "title": "$:/core/save/empty",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-all": {
            "title": "$:/core/save/lazy-all",
            "text": "\\define saveTiddlerFilter()\n[is[system]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[!is[system]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/save/lazy-images": {
            "title": "$:/core/save/lazy-images",
            "text": "\\define saveTiddlerFilter()\n[is[tiddler]] -[prefix[$:/state/popup/]] -[[$:/HistoryList]] -[[$:/boot/boot.css]] -[type[application/javascript]library[yes]] -[[$:/boot/boot.js]] -[[$:/boot/bootprefix.js]] -[!is[system]is[image]] +[sort[title]] \n\\end\n\\define skinnySaveTiddlerFilter()\n[is[image]]\n\\end\n{{$:/core/templates/tiddlywiki5.html}}\n"
        },
        "$:/core/templates/server/static.sidebar.wikitext": {
            "title": "$:/core/templates/server/static.sidebar.wikitext",
            "text": "\\whitespace trim\n<div class=\"tc-sidebar-scrollable\" style=\"overflow: auto;\">\n<div class=\"tc-sidebar-header\">\n<h1 class=\"tc-site-title\">\n<$transclude tiddler=\"$:/SiteTitle\"/>\n</h1>\n<div class=\"tc-site-subtitle\">\n<$transclude tiddler=\"$:/SiteSubtitle\"/>\n</div>\n<h2>\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$list filter={{$:/DefaultTiddlers}}>\n<div class=\"tc-menu-list-subitem\">\n<$link><$text text=<<currentTiddler>>/></$link>\n</div>\n</$list>\n</div>\n<!-- Currently disabled the recent list as it is unweildy when the responsive narrow view kicks in\n<h2>\n{{$:/language/SideBar/Recent/Caption}}\n</h2>\n<div class=\"tc-sidebar-lists\">\n<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n</div>\n</div>\n</div>\n-->\n"
        },
        "$:/core/templates/server/static.tiddler.html": {
            "title": "$:/core/templates/server/static.tiddler.html",
            "text": "\\whitespace trim\n\\define tv-wikilink-template() $uri_encoded$\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content={{$:/core/templates/version}} />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"%24%3A%2Fcore%2Ftemplates%2Fstatic.template.css\">\n<title><$view field=\"caption\" format=\"plainwikified\"><$view field=\"title\"/></$view>: <$view tiddler=\"$:/core/wiki/title\" format=\"plainwikified\"/></title>\n</head>\n<body class=\"tc-body\">\n<$transclude tiddler=\"$:/core/templates/server/static.sidebar.wikitext\" mode=\"inline\"/>\n<section class=\"tc-story-river\">\n<div class=\"tc-tiddler-frame\">\n<$transclude tiddler=\"$:/core/templates/server/static.tiddler.wikitext\" mode=\"inline\"/>\n</div>\n</section>\n</body>\n</html>"
        },
        "$:/core/templates/server/static.tiddler.wikitext": {
            "title": "$:/core/templates/server/static.tiddler.wikitext",
            "text": "\\whitespace trim\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<h2><$text text=<<currentTiddler>>/></h2>\n</div>\n</div>\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}}>\n<$view field=\"modifier\"/>\n</$link> <$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n<div class=\"tc-tags-wrapper\">\n<$list filter=\"[all[current]tags[]sort[title]]\">\n<a href={{{ [<currentTiddler>encodeuricomponent[]] }}}>\n<$macrocall $name=\"tag-pill\" tag=<<currentTiddler>>/>\n</a>\n</$list>\n</div>\n<div class=\"tc-tiddler-body\">\n<$transclude mode=\"block\"/>\n</div>\n"
        },
        "$:/core/templates/single.tiddler.window": {
            "title": "$:/core/templates/single.tiddler.window",
            "text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n\n<$transclude mode=\"block\"/>\n\n</$navigator>\n\n</div>\n\n</$vars>\n"
        },
        "$:/core/templates/split-recipe": {
            "title": "$:/core/templates/split-recipe",
            "text": "<$list filter=\"[!is[system]]\">\ntiddler: <$view field=\"title\" format=\"urlencoded\"/>.tid\n</$list>\n"
        },
        "$:/core/templates/static-tiddler": {
            "title": "$:/core/templates/static-tiddler",
            "text": "<a name=<<currentTiddler>>>\n<$transclude tiddler=\"$:/core/ui/ViewTemplate\"/>\n</a>"
        },
        "$:/core/templates/static.area": {
            "title": "$:/core/templates/static.area",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n{{{ [all[shadows+tiddlers]tag[$:/tags/RawStaticContent]!has[draft.of]] ||$:/core/templates/raw-static-tiddler}}}\n{{$:/core/templates/static.content||$:/core/templates/html-tiddler}}\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\nThis file contains an encrypted ~TiddlyWiki. Enable ~JavaScript and enter the decryption password when prompted.\n</$reveal>\n<!-- ensure splash screen isn't shown when JS is disabled -->\n`<style>\n.tc-remove-when-wiki-loaded {display: none;}\n</style>`\n"
        },
        "$:/core/templates/static.content": {
            "title": "$:/core/templates/static.content",
            "text": "<!-- For Google, and people without JavaScript-->\nThis [[TiddlyWiki|https://tiddlywiki.com]] contains the following tiddlers:\n\n<ul>\n<$list filter=<<saveTiddlerFilter>>>\n<li><$view field=\"title\" format=\"text\"></$view></li>\n</$list>\n</ul>\n"
        },
        "$:/core/templates/static.template.css": {
            "title": "$:/core/templates/static.template.css",
            "text": "{{$:/boot/boot.css||$:/core/templates/plain-text-tiddler}}\n\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n"
        },
        "$:/core/templates/static.template.html": {
            "title": "$:/core/templates/static.template.html",
            "type": "text/vnd.tiddlywiki-html",
            "text": "\\define tv-wikilink-template() static/$uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\rules only filteredtranscludeinline transcludeinline\n<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"{{$:/core/templates/version}}\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>{{$:/core/wiki/title}}</title>\n<div id=\"styleArea\">\n{{$:/boot/boot.css||$:/core/templates/css-tiddler}}\n</div>\n<style type=\"text/css\">\n{{$:/core/ui/PageStylesheet||$:/core/templates/wikified-tiddler}}\n</style>\n</head>\n<body class=\"tc-body\">\n{{$:/StaticBanner||$:/core/templates/html-tiddler}}\n{{$:/core/ui/PageTemplate||$:/core/templates/html-tiddler}}\n</body>\n</html>\n"
        },
        "$:/core/templates/static.tiddler.html": {
            "title": "$:/core/templates/static.tiddler.html",
            "text": "\\define tv-wikilink-template() $uri_doubleencoded$.html\n\\define tv-config-toolbar-icons() no\n\\define tv-config-toolbar-text() no\n\\define tv-config-toolbar-class() tc-btn-invisible\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n`<!doctype html>\n<html>\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\">\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<link rel=\"stylesheet\" href=\"static.css\">\n<title>`<$view field=\"caption\"><$view field=\"title\"/></$view>: {{$:/core/wiki/title}}`</title>\n</head>\n<body class=\"tc-body\">\n`{{$:/StaticBanner||$:/core/templates/html-tiddler}}`\n<section class=\"tc-story-river tc-static-story-river\">\n`<$view tiddler=\"$:/core/ui/ViewTemplate\" format=\"htmlwikified\"/>`\n</section>\n</body>\n</html>\n`\n"
        },
        "$:/core/templates/store.area.template.html": {
            "title": "$:/core/templates/store.area.template.html",
            "text": "<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n`<div id=\"storeArea\" style=\"display:none;\">`\n<$list filter=<<saveTiddlerFilter>> template=\"$:/core/templates/html-div-tiddler\"/>\n<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} template=\"$:/core/templates/html-div-skinny-tiddler\"/>\n`</div>`\n</$reveal>\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n`<!--~~ Encrypted tiddlers ~~-->`\n`<pre id=\"encryptedStoreArea\" type=\"text/plain\" style=\"display:none;\">`\n<$encrypt filter=<<saveTiddlerFilter>>/>\n`</pre>`\n</$reveal>"
        },
        "$:/core/templates/tid-tiddler": {
            "title": "$:/core/templates/tid-tiddler",
            "text": "<!--\n\nThis template is used for saving tiddlers in TiddlyWeb *.tid format\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>`\n`<$view field=\"text\" format=\"text\" />"
        },
        "$:/core/templates/tiddler-metadata": {
            "title": "$:/core/templates/tiddler-metadata",
            "text": "<!--\n\nThis template is used for saving tiddler metadata *.meta files\n\n--><$fields exclude='text bag' template='$name$: $value$\n'></$fields>"
        },
        "$:/core/templates/tiddlywiki5.html": {
            "title": "$:/core/templates/tiddlywiki5.html",
            "text": "<$set name=\"saveTiddlerAndShadowsFilter\" filter=\"[subfilter<saveTiddlerFilter>] [subfilter<saveTiddlerFilter>plugintiddlers[]]\">\n`<!doctype html>\n`{{$:/core/templates/MOTW.html}}`<html lang=\"`<$text text={{{ [{$:/language}get[name]] }}}/>`\">\n<head>\n<meta http-equiv=\"Content-Type\" content=\"text/html;charset=utf-8\" />\n<!--~~ Raw markup for the top of the head section ~~-->\n`{{{ [<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopHead]] ||$:/core/templates/raw-static-tiddler}}}`\n<meta http-equiv=\"X-UA-Compatible\" content=\"IE=Edge\"/>\n<meta name=\"application-name\" content=\"TiddlyWiki\" />\n<meta name=\"generator\" content=\"TiddlyWiki\" />\n<meta name=\"tiddlywiki-version\" content=\"`{{$:/core/templates/version}}`\" />\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n<meta name=\"apple-mobile-web-app-capable\" content=\"yes\" />\n<meta name=\"apple-mobile-web-app-status-bar-style\" content=\"black-translucent\" />\n<meta name=\"mobile-web-app-capable\" content=\"yes\"/>\n<meta name=\"format-detection\" content=\"telephone=no\" />\n<meta name=\"copyright\" content=\"`{{$:/core/copyright.txt}}`\" />\n<link id=\"faviconLink\" rel=\"shortcut icon\" href=\"favicon.ico\">\n<title>`{{$:/core/wiki/title}}`</title>\n<!--~~ This is a Tiddlywiki file. The points of interest in the file are marked with this pattern ~~-->\n\n<!--~~ Raw markup ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/core/wiki/rawmarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkup]] ||$:/core/templates/plain-text-tiddler}}}\n{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified]] ||$:/core/templates/raw-static-tiddler}}}`\n</head>\n<body class=\"tc-body\">\n<!--~~ Raw markup for the top of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/TopBody]] ||$:/core/templates/raw-static-tiddler}}}`\n<!--~~ Static styles ~~-->\n<div id=\"styleArea\">\n`{{$:/boot/boot.css||$:/core/templates/css-tiddler}}`\n</div>\n<!--~~ Static content for Google and browsers without JavaScript ~~-->\n<noscript>\n<div id=\"splashArea\">\n`{{$:/core/templates/static.area}}`\n</div>\n</noscript>\n<!--~~ Ordinary tiddlers ~~-->\n`{{$:/core/templates/store.area.template.html}}`\n<!--~~ Library modules ~~-->\n<div id=\"libraryModules\" style=\"display:none;\">\n`{{{ [is[system]type[application/javascript]library[yes]] ||$:/core/templates/javascript-tiddler}}}`\n</div>\n<!--~~ Boot kernel prologue ~~-->\n<div id=\"bootKernelPrefix\" style=\"display:none;\">\n`{{ $:/boot/bootprefix.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Boot kernel ~~-->\n<div id=\"bootKernel\" style=\"display:none;\">\n`{{ $:/boot/boot.js ||$:/core/templates/javascript-tiddler}}`\n</div>\n<!--~~ Raw markup for the bottom of the body section ~~-->\n`{{{ [enlist<saveTiddlerAndShadowsFilter>tag[$:/tags/RawMarkupWikified/BottomBody]] ||$:/core/templates/raw-static-tiddler}}}`\n</body>\n</html>`\n"
        },
        "$:/core/templates/version": {
            "title": "$:/core/templates/version",
            "text": "<<version>>"
        },
        "$:/core/templates/wikified-tiddler": {
            "title": "$:/core/templates/wikified-tiddler",
            "text": "<$transclude />"
        },
        "$:/core/ui/AboveStory/tw2-plugin-check": {
            "title": "$:/core/ui/AboveStory/tw2-plugin-check",
            "tags": "$:/tags/AboveStory",
            "text": "\\define lingo-base() $:/language/AboveStory/ClassicPlugin/\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]limit[1]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n<ul>\n\n<$list filter=\"[all[system+tiddlers]tag[systemConfig]]\">\n\n<li>\n\n<$link><$view field=\"title\"/></$link>\n\n</li>\n\n</$list>\n\n</ul>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/Actions/new-image": {
            "title": "$:/core/ui/Actions/new-image",
            "tags": "$:/tags/Actions",
            "description": "create a new image tiddler",
            "text": "\\define get-type()\nimage/$(imageType)$\n\\end\n\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars imageType={{$:/config/NewImageType}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" type=<<get-type>> tags=<<get-tags>>/>\n</$vars>\n"
        },
        "$:/core/ui/Actions/new-journal": {
            "title": "$:/core/ui/Actions/new-journal",
            "tags": "$:/tags/Actions",
            "description": "create a new journal tiddler",
            "text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars journalTitleTemplate={{$:/config/NewJournal/Title}} textFieldTags={{$:/config/NewJournal/Tags}} tagsFieldTags={{$:/config/NewJournal/Tags!!tags}} journalText={{$:/config/NewJournal/Text}}>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$reveal type=\"nomatch\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text={{{ [<journalTitle>get[]] }}}/>\n</$reveal>\n<$reveal type=\"match\" state=<<journalTitle>> text=\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<get-tags>> text=<<journalText>>/>\n</$reveal>\n</$wikify>\n</$vars>\n"
        },
        "$:/core/ui/Actions/new-tiddler": {
            "title": "$:/core/ui/Actions/new-tiddler",
            "tags": "$:/tags/Actions",
            "description": "create a new empty tiddler",
            "text": "\\define get-tags() $(textFieldTags)$ $(tagsFieldTags)$\n<$vars textFieldTags={{$:/config/NewTiddler/Tags}} tagsFieldTags={{$:/config/NewTiddler/Tags!!tags}}>\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<get-tags>>/>\n</$vars>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter": {
            "title": "$:/core/ui/AdvancedSearch/Filter",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Filter/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch/input}!match{$:/temp/advancedsearch}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Filter/Hint>>\n\n<div class=\"tc-search tc-advanced-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\" \n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/temp/advancedsearch]]\" firstSearchFilterField=\"text\" \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tinputCancelActions=<<cancel-search-actions>>/>\n</$keyboard>\n</$keyboard>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch/FilterButton]!has[draft.of]]\"><$transclude/></$list>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\n<div class=\"tc-search-results\">\n<<lingo Filter/Matches>>\n<$list filter={{$:/temp/advancedsearch}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</div>\n</$set>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/clear",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\" />\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/delete",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button popup=<<qualify \"$:/state/filterDeleteDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/delete-button}}\n</$button>\n</$reveal>\n\n<$reveal state=<<qualify \"$:/state/filterDeleteDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<div class=\"tc-dropdown-item-plain\">\n<$set name=\"resultCount\" value=\"\"\"<$count filter={{$:/temp/advancedsearch}}/>\"\"\">\nAre you sure you wish to delete <<resultCount>> tiddler(s)?\n</$set>\n</div>\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn\">\n<$action-deletetiddler $filter={{$:/temp/advancedsearch}}/>\nDelete these tiddlers\n</$button>\n</div>\n</div>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/filterDropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</span>\n\n<$reveal state=<<qualify \"$:/state/filterDropdown\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=\"$:/temp/advancedsearch\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text=<<navigateTo>>/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param='.tc-advanced-search input' />\"\"\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Filter]]\"><$link to={{!!filter}}><$transclude field=\"description\"/></$link>\n</$list>\n</div>\n</div>\n</$linkcatcher>\n</$set>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export": {
            "title": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/export",
            "tags": "$:/tags/AdvancedSearch/FilterButton",
            "text": "<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$macrocall $name=\"exportButton\" exportFilter={{$:/temp/advancedsearch}} lingoBase=\"$:/language/Buttons/ExportTiddlers/\"/>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Shadows": {
            "title": "$:/core/ui/AdvancedSearch/Shadows",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Shadows/Caption}}",
            "first-search-filter": "[all[shadows]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]",
            "text": "\\define lingo-base() $:/language/Search/\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Shadows/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/Shadows]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>>  filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[all[shadows]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo Shadows/Matches>>\n\n<$list filter=\"[all[shadows]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/Standard": {
            "title": "$:/core/ui/AdvancedSearch/Standard",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/Standard/Caption}}",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define next-search-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/advancedsearch\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo Standard/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"shift-alt-Right\" actions=<<next-search-tab>>>\n<$keyboard key=\"shift-alt-Left\" actions=<<next-search-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\" type=\"search\"\n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"\n\t\tfilterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$vars userInput={{{ [[$:/temp/advancedsearch]get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} searchListState=\"$:/temp/advancedsearch/selected-item\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude/>\n</$list>\n\"\"\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/standard/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/advancedsearch\" />\n</$list>\n</$vars>\n</$list>\n</$reveal>\n"
        },
        "$:/core/ui/AdvancedSearch/System": {
            "title": "$:/core/ui/AdvancedSearch/System",
            "tags": "$:/tags/AdvancedSearch",
            "caption": "{{$:/language/Search/System/Caption}}",
            "first-search-filter": "[is[system]search<userInput>sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]",
            "text": "\\define lingo-base() $:/language/Search/\n\\define set-next-input-tab(beforeafter:\"after\",stateTitle,tag,defaultState,currentTabTiddler) <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab--1498284803\" tag=\"$:/tags/AdvancedSearch\" beforeafter=\"$beforeafter$\" defaultState=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define cancel-search-actions() <$list filter=\"[{$:/temp/advancedsearch}!match{$:/temp/advancedsearch/input}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/advancedsearch]] [[$:/temp/advancedsearch/input]] [[$:/temp/advancedsearch/selected-item]]\" />\"\"\"><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/advancedsearch}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/></$list><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\".tc-advanced-search input\"\"\"/>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n<<lingo System/Hint>>\n\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=\"$:/temp/advancedsearch/input\" storeTitle=\"$:/temp/advancedsearch\"\n\t\trefreshTitle=\"$:/temp/advancedsearch/refresh\" selectionStateTitle=\"$:/temp/advancedsearch/selected-item\"\n\t\ttype=\"search\" tag=\"input\" focus={{$:/config/Search/AutoFocus}} configTiddlerFilter=\"[[$:/core/ui/AdvancedSearch/System]]\"\n\t\tinputCancelActions=<<cancel-search-actions>> inputAcceptActions=<<input-accept-actions>> \n\t\tinputAcceptVariantActions=<<input-accept-variant-actions>> filterMinLength={{$:/config/Search/MinLength}}/>\n</$keyboard>\n</$keyboard>\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"nomatch\" text=\"\">\n\n<$list filter=\"[{$:/temp/advancedsearch}minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[is[system]search{$:/temp/advancedsearch}] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\"/>\"\"\">\n\n<div class=\"tc-search-results\">\n\n<<lingo System/Matches>>\n\n<$list filter=\"[is[system]search{$:/temp/advancedsearch}sort[title]limit[250]] -[[$:/temp/advancedsearch]] -[[$:/temp/advancedsearch/input]] -[[$:/temp/advancedsearch/selected-item]]\">\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[[$:/temp/advancedsearch/selected-item]get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n\n</div>\n\n</$set>\n\n</$list>\n\n</$reveal>\n\n<$reveal state=\"$:/temp/advancedsearch\" type=\"match\" text=\"\">\n\n</$reveal>\n"
        },
        "$:/AdvancedSearch": {
            "title": "$:/AdvancedSearch",
            "icon": "$:/core/images/advanced-search-button",
            "color": "#bbb",
            "text": "<div class=\"tc-advanced-search\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/AdvancedSearch]!has[draft.of]]\" default=\"$:/core/ui/AdvancedSearch/System\" actions=\"\"\"<$action-setfield $tiddler=\"$:/state/advancedsearch/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab--1498284803\"/>\n</div>\n"
        },
        "$:/core/ui/AlertTemplate": {
            "title": "$:/core/ui/AlertTemplate",
            "text": "<div class=\"tc-alert\">\n<div class=\"tc-alert-toolbar\">\n<$button class=\"tc-btn-invisible\"><$action-deletetiddler $tiddler=<<currentTiddler>>/>{{$:/core/images/cancel-button}}</$button>\n</div>\n<div class=\"tc-alert-subtitle\">\n<$wikify name=\"format\" text=<<lingo Tiddler/DateFormat>>>\n<$view field=\"component\"/> - <$view field=\"modified\" format=\"date\" template=<<format>>/> <$reveal type=\"nomatch\" state=\"!!count\" text=\"\"><span class=\"tc-alert-highlight\">({{$:/language/Count}}: <$view field=\"count\"/>)</span></$reveal>\n</$wikify>\n</div>\n<div class=\"tc-alert-body\">\n\n<$transclude/>\n\n</div>\n</div>\n"
        },
        "$:/core/ui/BinaryWarning": {
            "title": "$:/core/ui/BinaryWarning",
            "text": "\\define lingo-base() $:/language/BinaryWarning/\n<<lingo Prompt>>\n"
        },
        "$:/core/ui/Components/plugin-info": {
            "title": "$:/core/ui/Components/plugin-info",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define popup-state-macro()\n$(qualified-state)$-$(currentTiddler)$\n\\end\n\n\\define tabs-state-macro()\n$(popup-state)$-$(pluginInfoType)$\n\\end\n\n\\define plugin-icon-title()\n$(currentTiddler)$/icon\n\\end\n\n\\define plugin-disable-title()\n$:/config/Plugins/Disabled/$(currentTiddler)$\n\\end\n\n\\define plugin-table-body(type,disabledMessage,default-popup-state)\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\" default=\"\"\"$default-popup-state$\"\"\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<plugin-icon-title>>>\n<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\n</$transclude>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1>\n''<$text text={{{ [<currentTiddler>get[name]] ~[<currentTiddler>split[/]last[1]] }}}/>'': <$view field=\"description\"><$view field=\"title\"/></$view> $disabledMessage$\n</h1>\n<h2>\n<$view field=\"title\"/>\n</h2>\n<h2>\n<div><em><$view field=\"version\"/></em></div>\n</h2>\n</div>\n\\end\n\n\\define plugin-info(type,default-popup-state)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$link to={{!!title}} class=\"tc-plugin-info tc-plugin-info-disabled\">\n<<plugin-table-body type:\"$type$\" default-popup-state:\"\"\"$default-popup-state$\"\"\" disabledMessage:\"<$macrocall $name='lingo' title='Disabled/Status'/>\">>\n</$link>\n</$reveal>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>> default=\"\"\"$default-popup-state$\"\"\">\n<div class=\"tc-plugin-info-dropdown\">\n<div class=\"tc-plugin-info-dropdown-body\">\n<$list filter=\"[all[current]] -[[$:/core]]\">\n<div style=\"float:right;\">\n<$reveal type=\"nomatch\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"yes\" tooltip={{$:/language/ControlPanel/Plugins/Disable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Disable/Caption}}>\n<<lingo Disable/Caption>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<plugin-disable-title>> text=\"yes\">\n<$button set=<<plugin-disable-title>> setTo=\"no\" tooltip={{$:/language/ControlPanel/Plugins/Enable/Hint}} aria-label={{$:/language/ControlPanel/Plugins/Enable/Caption}}>\n<<lingo Enable/Caption>>\n</$button>\n</$reveal>\n</div>\n</$list>\n<$set name=\"tabsList\" filter=\"[<currentTiddler>list[]] contents\">\n<$macrocall $name=\"tabs\" state=<<tabs-state-macro>> tabsList=<<tabsList>> default={{{ [enlist<tabsList>] }}} template=\"$:/core/ui/PluginInfo\"/>\n</$set>\n</div>\n</div>\n</$reveal>\n</$set>\n\\end\n\n<$macrocall $name=\"plugin-info\" type=<<plugin-type>> default-popup-state=<<default-popup-state>>/>\n"
        },
        "$:/core/ui/Components/tag-link": {
            "title": "$:/core/ui/Components/tag-link",
            "text": "<$link>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<span style=<<tag-styles>> class=\"tc-tag-label\">\n<$view field=\"title\" format=\"text\"/>\n</span>\n</$set>\n</$link>"
        },
        "$:/core/ui/ControlPanel/Advanced": {
            "title": "$:/core/ui/ControlPanel/Advanced",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Advanced/Caption}}",
            "text": "{{$:/language/ControlPanel/Advanced/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Advanced]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/TiddlerFields\" explicitState=\"$:/state/tab--959111941\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Appearance": {
            "title": "$:/core/ui/ControlPanel/Appearance",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Appearance/Caption}}",
            "text": "{{$:/language/ControlPanel/Appearance/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Appearance]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Theme\" explicitState=\"$:/state/tab--1963855381\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Basics": {
            "title": "$:/core/ui/ControlPanel/Basics",
            "tags": "$:/tags/ControlPanel/Info",
            "caption": "{{$:/language/ControlPanel/Basics/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n\n\\define show-filter-count(filter)\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"$:/temp/advancedsearch\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" $value=\"\"\"$filter$\"\"\"/>\n<$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/>\n<$action-setfield $tiddler=\"$:/state/tab--1498284803\" $value=\"$:/core/ui/AdvancedSearch/Filter\"/>\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-advanced-search input\"/>\n''<$count filter=\"\"\"$filter$\"\"\"/>''\n{{$:/core/images/advanced-search-button}}\n</$button>\n\\end\n\n|<<lingo Version/Prompt>> |''<<version>>'' |\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/status/UserName\"><<lingo Username/Prompt>></$link> |<$edit-text tiddler=\"$:/status/UserName\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/AnimationDuration\"><<lingo AnimDuration/Prompt>></$link> |<$edit-text tiddler=\"$:/config/AnimationDuration\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\" class=\"tc-edit-texteditor\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n|<$link to=\"$:/language/DefaultNewTiddlerTitle\"><<lingo NewTiddler/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/language/DefaultNewTiddlerTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Title\"><<lingo NewJournal/Title/Prompt>></$link> |<$edit-text tiddler=\"$:/config/NewJournal/Title\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/config/NewJournal/Text\"><<lingo NewJournal/Text/Prompt>></$link> |<$edit tiddler=\"$:/config/NewJournal/Text\" tag=\"textarea\" class=\"tc-edit-texteditor\" default=\"\"/> |\n|<$link to=\"$:/config/NewTiddler/Tags\"><<lingo NewTiddler/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewTiddler/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/NewJournal/Tags\"><<lingo NewJournal/Tags/Prompt>></$link> |<$vars currentTiddler=\"$:/config/NewJournal/Tags\" tagField=\"text\">{{||$:/core/ui/EditTemplate/tags}}<$list filter=\"[<currentTiddler>tags[]] +[limit[1]]\" variable=\"ignore\"><$button tooltip={{$:/language/ControlPanel/Basics/RemoveTags/Hint}}><<lingo RemoveTags>><$action-listops $tiddler=<<currentTiddler>> $field=\"text\" $subfilter={{{ [<currentTiddler>get[tags]] }}}/><$action-setfield $tiddler=<<currentTiddler>> tags=\"\"/></$button></$list></$vars> |\n|<$link to=\"$:/config/AutoFocus\"><<lingo AutoFocus/Prompt>></$link> |{{$:/snippets/minifocusswitcher}} |\n|<<lingo Language/Prompt>> |{{$:/snippets/minilanguageswitcher}} |\n|<<lingo Tiddlers/Prompt>> |<<show-filter-count \"[!is[system]sort[title]]\">> |\n|<<lingo Tags/Prompt>> |<<show-filter-count \"[tags[]sort[title]]\">> |\n|<<lingo SystemTiddlers/Prompt>> |<<show-filter-count \"[is[system]sort[title]]\">> |\n|<<lingo ShadowTiddlers/Prompt>> |<<show-filter-count \"[all[shadows]sort[title]]\">> |\n|<<lingo OverriddenShadowTiddlers/Prompt>> |<<show-filter-count \"[is[tiddler]is[shadow]sort[title]]\">> |\n"
        },
        "$:/core/ui/ControlPanel/EditorTypes": {
            "title": "$:/core/ui/ControlPanel/EditorTypes",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/EditorTypes/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/EditorTypes/\n\n<<lingo Hint>>\n\n<table>\n<tbody>\n<tr>\n<th><<lingo Type/Caption>></th>\n<th><<lingo Editor/Caption>></th>\n</tr>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/config/EditorTypeMappings/]sort[title]]\">\n<tr>\n<td>\n<$link>\n<$list filter=\"[all[current]removeprefix[$:/config/EditorTypeMappings/]]\">\n<$text text={{!!title}}/>\n</$list>\n</$link>\n</td>\n<td>\n<$view field=\"text\"/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/Info": {
            "title": "$:/core/ui/ControlPanel/Info",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Info/Caption}}",
            "text": "{{$:/language/ControlPanel/Info/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Info]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Basics\" explicitState=\"$:/state/tab--2112689675\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/KeyboardShortcuts": {
            "title": "$:/core/ui/ControlPanel/KeyboardShortcuts",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/KeyboardShortcuts/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/KeyboardShortcuts/\n\n\\define new-shortcut(title)\n<div class=\"tc-dropdown-item-plain\">\n<$edit-shortcut tiddler=\"$title$\" placeholder={{$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt}} focus=\"true\" style=\"width:auto;\"/> <$button>\n<<lingo Add/Caption>>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"[{$title$}]\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"$title$\"\n/>\n</$button>\n</div>\n\\end\n\n\\define shortcut-list-item(caption)\n<td>\n</td>\n<td style=\"text-align:right;font-size:0.7em;\">\n<<lingo Platform/$caption$>>\n</td>\n<td>\n<div style=\"position:relative;\">\n<$button popup=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> class=\"tc-btn-invisible\">\n{{$:/core/images/edit-button}}\n</$button>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutTitle)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\n<$reveal state=<<qualify \"$:/state/dropdown/$(shortcutTitle)$\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-block-dropdown-wrapper\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown tc-popup-keep\">\n<$list filter=\"[list[$(shortcutTitle)$!!text]sort[title]]\" variable=\"shortcut\" emptyMessage=\"\"\"\n<div class=\"tc-dropdown-item-plain\">\n//<<lingo NoShortcuts/Caption>>//\n</div>\n\"\"\">\n<div class=\"tc-dropdown-item-plain\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint}}>\n<$action-listops\n\t$tiddler=\"$(shortcutTitle)$\"\n\t$field=\"text\"\n\t$subfilter=\"+[remove<shortcut>]\"\n/>\n<small>{{$:/core/images/close-button}}</small>\n</$button>\n<kbd>\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts=<<shortcut>>/>\n</kbd>\n</div>\n</$list>\n<hr/>\n<$macrocall $name=\"new-shortcut\" title=<<qualify \"$:/state/new-shortcut/$(shortcutTitle)$\">>/>\n</div>\n</div>\n</$reveal>\n</div>\n</td>\n\\end\n\n\\define shortcut-list(caption,prefix)\n<tr>\n<$list filter=\"[[$prefix$$(shortcutName)$]]\" variable=\"shortcutTitle\">\n<<shortcut-list-item \"$caption$\">>\n</$list>\n</tr>\n\\end\n\n\\define shortcut-editor()\n<<shortcut-list \"All\" \"$:/config/shortcuts/\">>\n<<shortcut-list \"Mac\" \"$:/config/shortcuts-mac/\">>\n<<shortcut-list \"NonMac\" \"$:/config/shortcuts-not-mac/\">>\n<<shortcut-list \"Linux\" \"$:/config/shortcuts-linux/\">>\n<<shortcut-list \"NonLinux\" \"$:/config/shortcuts-not-linux/\">>\n<<shortcut-list \"Windows\" \"$:/config/shortcuts-windows/\">>\n<<shortcut-list \"NonWindows\" \"$:/config/shortcuts-not-windows/\">>\n\\end\n\n\\define shortcut-preview()\n<$macrocall $name=\"displayshortcuts\" $output=\"text/html\" shortcuts={{$(shortcutPrefix)$$(shortcutName)$}} prefix=\"<kbd>\" separator=\"</kbd> <kbd>\" suffix=\"</kbd>\"/>\n\\end\n\n\\define shortcut-item-inner()\n<tr>\n<td>\n<$reveal type=\"nomatch\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"open\"\n/>\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<dropdownStateTitle>> text=\"open\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield\n\t$tiddler=<<dropdownStateTitle>>\n\t$value=\"close\"\n/>\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n''<$text text=<<shortcutName>>/>''\n</td>\n<td>\n<$transclude tiddler=\"$:/config/ShortcutInfo/$(shortcutName)$\"/>\n</td>\n<td>\n<$list filter=\"$:/config/shortcuts/ $:/config/shortcuts-mac/ $:/config/shortcuts-not-mac/ $:/config/shortcuts-linux/ $:/config/shortcuts-not-linux/ $:/config/shortcuts-windows/ $:/config/shortcuts-not-windows/\" variable=\"shortcutPrefix\">\n<<shortcut-preview>>\n</$list>\n</td>\n</tr>\n<$set name=\"dropdownState\" value={{$(dropdownStateTitle)$}}>\n<$list filter=\"[<dropdownState>match[open]]\" variable=\"listItem\">\n<<shortcut-editor>>\n</$list>\n</$set>\n\\end\n\n\\define shortcut-item()\n<$set name=\"dropdownStateTitle\" value=<<qualify \"$:/state/dropdown/keyboardshortcut/$(shortcutName)$\">>>\n<<shortcut-item-inner>>\n</$set>\n\\end\n\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]removeprefix[$:/config/ShortcutInfo/]]\" variable=\"shortcutName\">\n<<shortcut-item>>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ControlPanel/LoadedModules": {
            "title": "$:/core/ui/ControlPanel/LoadedModules",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/LoadedModules/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n<<lingo LoadedModules/Hint>>\n\n{{$:/snippets/modules}}\n"
        },
        "$:/core/ui/ControlPanel/Modals/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Modals/AddPlugins",
            "subtitle": "{{$:/core/images/download-button}} {{$:/language/ControlPanel/Plugins/Add/Caption}}",
            "text": "\\define install-plugin-actions()\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url={{!!url}} title={{$(assetInfo)$!!original-title}}/>\n<$set name=\"url\" value={{!!url}}>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$action-sendmessage $message=\"tm-load-plugin-from-library\" url=<<url>> title=<<dependency>>/>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define install-plugin-button()\n<div>\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$set name=\"reinstall-type\" value={{{ [<libraryVersion>compare:version:eq<installedVersion>then[tc-reinstall]] [<libraryVersion>compare:version:gt<installedVersion>then[tc-reinstall-upgrade]] [<libraryVersion>compare:version:lt<installedVersion>then[tc-reinstall-downgrade]] }}}>\n<$button actions=<<install-plugin-actions>> class={{{ [<assetInfo>get[original-title]has[version]then<reinstall-type>] tc-btn-invisible tc-install-plugin +[join[ ]] }}}>\n{{$:/core/images/download-button}}\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Install/Caption}}\">\n<$list filter=\"[<libraryVersion>compare:version:gt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[<libraryVersion>compare:version:lt<installedVersion>]\" variable=\"ignore\" emptyMessage=\"{{$:/language/ControlPanel/Plugins/Reinstall/Caption}}\">\n{{$:/language/ControlPanel/Plugins/Downgrade/Caption}}\n</$list>\n\"\"\">\n{{$:/language/ControlPanel/Plugins/Update/Caption}}\n</$list>\n</$list>\n</$button>\n<div>\n</div>\n<$reveal stateTitle=<<assetInfo>> stateField=\"requires-reload\" type=\"match\" text=\"yes\">{{$:/language/ControlPanel/Plugins/PluginWillRequireReload}}</$reveal>\n</$set>\n</$set>\n</$set>\n</div>\n\\end\n\n\\define popup-state-macro()\n$:/state/add-plugin-info/$(connectionTiddler)$/$(assetInfo)$\n\\end\n\n\\define display-plugin-info(type)\n<$set name=\"popup-state\" value=<<popup-state-macro>>>\n<div class=\"tc-plugin-info\">\n<div class=\"tc-plugin-info-chunk tc-plugin-info-toggle\">\n<$reveal type=\"nomatch\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"yes\">\n{{$:/core/images/chevron-right}}\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<popup-state>> text=\"yes\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<popup-state>> setTo=\"no\">\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-icon\">\n<$list filter=\"[<assetInfo>has[icon]]\" emptyMessage=\"\"\"<$transclude tiddler=\"$:/core/images/plugin-generic-$type$\"/>\"\"\">\n<img src={{$(assetInfo)$!!icon}}/>\n</$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-description\">\n<h1><strong><$text text={{{ [<assetInfo>get[name]] ~[<assetInfo>get[original-title]split[/]last[1]] }}}/></strong>: <$view tiddler=<<assetInfo>> field=\"description\"/></h1>\n<h2><$view tiddler=<<assetInfo>> field=\"original-title\"/></h2>\n<div><em><$view tiddler=<<assetInfo>> field=\"version\"/></em></div>\n<$list filter=\"[<assetInfo>get[original-title]get[version]]\" variable=\"installedVersion\"><div><em>{{$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint}}</em></div></$list>\n</div>\n<div class=\"tc-plugin-info-chunk tc-plugin-info-buttons\">\n<<install-plugin-button>>\n</div>\n</div>\n<$set name=\"original-title\" value={{{ [<assetInfo>get[original-title]] }}}>\n<$reveal type=\"match\" text=\"yes\" state=<<popup-state>>>\n<div class=\"tc-plugin-info-dropdown\">\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]] ~[<assetInfo>get[original-title]!is[tiddler]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-dropdown-message\">\n<$list filter=\"[<assetInfo>get[original-title]!is[tiddler]]\">\n{{$:/language/ControlPanel/Plugins/NotInstalled/Hint}}\n</$list>\n<$set name=\"currentTiddler\" value=<<assetInfo>>>\n<$list filter=\"[enlist{!!dependents}] [<currentTiddler>get[parent-plugin]] +[limit[1]]\" variable=\"ignore\">\n<div>\n{{$:/language/ControlPanel/Plugins/AlsoRequires}}\n<$list filter=\"[enlist{!!dependents}] [{!!parent-plugin}] +[sort[name]]\" variable=\"dependency\">\n<$text text=<<dependency>>/>\n</$list>\n</div>\n</$list>\n</$set>\n</div>\n</$list>\n<div class=\"tc-plugin-info-dropdown-body\">\n<$transclude tiddler=<<assetInfo>> field=\"readme\" mode=\"block\"/>\n</div>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<div class=\"tc-plugin-info-sub-plugins\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>sort[name]]\" variable=\"assetInfo\">\n<<display-plugin-info \"$type$\">>\n</$list>\n</div>\n</$list>\n</div>\n</$reveal>\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>limit[1]]\" variable=\"ignore\">\n<$reveal type=\"nomatch\" text=\"yes\" state=<<popup-state>> tag=\"div\" class=\"tc-plugin-info-sub-plugin-indicator\">\n<$wikify name=\"count\" text=\"\"\"<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]has[parent-plugin]parent-plugin<original-title>]\"/>\"\"\">\n<$button class=\"tc-btn-invisible\" set=<<popup-state>> setTo=\"yes\">\n{{$:/language/ControlPanel/Plugins/SubPluginPrompt}}\n</$button>\n</$wikify>\n</$reveal>\n</$list>\n</$set>\n</$set>\n\\end\n\n\\define load-plugin-library-button()\n<$list filter=\"[<currentTiddler>get[enabled]else[yes]match[yes]]\" variable=\"ignore\">\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-load-plugin-library\" url={{!!url}} infoTitlePrefix=\"$:/temp/RemoteAssetInfo/\"/>\n{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Plugins/OpenPluginLibrary}}\n</$button>\n</$list>\n\\end\n\n\\define display-server-assets(type)\n{{$:/language/Search/Search}}: <$edit-text tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" default=\"\" type=\"search\" tag=\"input\"/>\n<$reveal state=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" type=\"nomatch\" text=\"\">\n<$button class=\"tc-btn-invisible\">\n<$action-setfield $tiddler=\"\"\"$:/temp/RemoteAssetSearch/$(currentTiddler)$\"\"\" $field=\"text\" $value=\"\"/>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n<div class=\"tc-plugin-library-listing\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[$type$]search:author,description,original-title,readme,title{$:/temp/RemoteAssetSearch/$(currentTiddler)$}sort[name]]\" variable=\"assetInfo\">\n<$list filter=\"[[$:/temp/RemoteAssetSearch/$(currentTiddler)$]has[text]] ~[<assetInfo>!has[parent-plugin]]\" variable=\"ignore\"><!-- Hide sub-plugins if we're not searching -->\n<<display-plugin-info \"$type$\">>\n</$list>\n</$list>\n</div>\n\\end\n\n\\define display-server-connection()\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/ServerConnection]suffix{!!url}]\" variable=\"connectionTiddler\" emptyMessage=<<load-plugin-library-button>>>\n\n<$set name=\"transclusion\" value=<<connectionTiddler>>>\n\n<<tabs \"[[$:/core/ui/ControlPanel/Plugins/Add/Updates]] [[$:/core/ui/ControlPanel/Plugins/Add/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Add/Themes]] [[$:/core/ui/ControlPanel/Plugins/Add/Languages]]\" \"$:/core/ui/ControlPanel/Plugins/Add/Plugins\">>\n\n</$set>\n\n</$list>\n\\end\n\n\\define close-library-button()\n<$reveal type='nomatch' state='$:/temp/ServerConnection/$(PluginLibraryURL)$' text=''>\n<$button class='tc-btn-big-green'>\n<$action-sendmessage $message=\"tm-unload-plugin-library\" url={{!!url}}/>\n{{$:/core/images/chevron-left}} {{$:/language/ControlPanel/Plugins/ClosePluginLibrary}}\n<$action-deletetiddler $filter=\"[prefix[$:/temp/ServerConnection/$(PluginLibraryURL)$]][prefix[$:/temp/RemoteAssetInfo/$(PluginLibraryURL)$]]\"/>\n</$button>\n</$reveal>\n\\end\n\n\\define plugin-library-listing()\n<div class=\"tc-tab-set\">\n<$set name=\"defaultTab\" value={{{ [all[tiddlers+shadows]tag[$:/tags/PluginLibrary]] }}}>\n<div class=\"tc-tab-buttons\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$button set=<<qualify \"$:/state/addplugins/tab\">> setTo=<<currentTiddler>> default=<<defaultTab>> selectedClass=\"tc-tab-selected\">\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude field=\"caption\"/>\n</$set>\n</$button>\n</$list>\n</div>\n<div class=\"tc-tab-divider\"/>\n<div class=\"tc-tab-content\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/PluginLibrary]]\">\n<$reveal type=\"match\" state=<<qualify \"$:/state/addplugins/tab\">> text=<<currentTiddler>> default=<<defaultTab>>>\n<h2><$link><$transclude field=\"caption\"><$view field=\"title\"/></$transclude></$link></h2>\n//<$view field=\"url\"/>//\n<$transclude mode=\"block\"/>\n<$set name=PluginLibraryURL value={{!!url}}>\n<<close-library-button>>\n</$set>\n<<display-server-connection>>\n</$reveal>\n</$list>\n</div>\n</$set>\n</div>\n\\end\n\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<div>\n<<plugin-library-listing>>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Palette": {
            "title": "$:/core/ui/ControlPanel/Palette",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Palette/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/\n\n{{$:/snippets/paletteswitcher}}\n\n<$reveal type=\"nomatch\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"yes\"><<lingo ShowEditor/Caption>></$button>\n\n</$reveal>\n\n<$reveal type=\"match\" state=\"$:/state/ShowPaletteEditor\" text=\"yes\">\n\n<$button set=\"$:/state/ShowPaletteEditor\" setTo=\"no\"><<lingo HideEditor/Caption>></$button>\n{{$:/PaletteManager}}\n\n</$reveal>\n\n"
        },
        "$:/core/ui/ControlPanel/Parsing": {
            "title": "$:/core/ui/ControlPanel/Parsing",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Parsing/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Parsing/\n\n\\define toggle(Type)\n<$checkbox\ntiddler=\"\"\"$:/config/WikiParserRules/$Type$/$(rule)$\"\"\"\nfield=\"text\"\nchecked=\"enable\"\nunchecked=\"disable\"\ndefault=\"enable\">\n<<rule>>\n</$checkbox>\n\\end\n\n\\define rules(type,Type)\n<$list filter=\"[wikiparserrules[$type$]]\" variable=\"rule\">\n<dd><<toggle $Type$>></dd>\n</$list>\n\\end\n\n<<lingo Hint>>\n\n<dl>\n<dt><<lingo Pragma/Caption>></dt>\n<<rules pragma Pragma>>\n<dt><<lingo Inline/Caption>></dt>\n<<rules inline Inline>>\n<dt><<lingo Block/Caption>></dt>\n<<rules block Block>>\n</dl>"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[language]]\"/>)",
            "text": "<<display-server-assets language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[plugin]]\"/>)",
            "text": "<<display-server-assets plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}  (<$count filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}original-plugin-type[theme]]\"/>)",
            "text": "<<display-server-assets theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Add/Updates": {
            "title": "$:/core/ui/ControlPanel/Plugins/Add/Updates",
            "caption": "<$importvariables filter=\"$:/core/ui/ControlPanel/Plugins/Add/Updates\">{{$:/language/ControlPanel/Plugins/Updates/Caption}} (<<update-count>>)</$importvariables>",
            "text": "\\define each-updateable-plugin(body)\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/RemoteAssetInfo]server-url{!!url}sort[title]]\" variable=\"assetInfo\">\n<$set name=\"libraryVersion\" value={{{ [<assetInfo>get[version]] }}}>\n<$list filter=\"[<assetInfo>get[original-title]has[version]!version<libraryVersion>]\" variable=\"ignore\">\n<$set name=\"installedVersion\" value={{{ [<assetInfo>get[original-title]get[version]] }}}>\n<$list filter=\"[<installedversion>!match<libraryVersion>]\" variable=\"ignore\">\n$body$\n</$list>\n</$set>\n</$list>\n</$set>\n</$list>\n\\end\n\n\\define update-all-actions()\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<<install-plugin-actions>>\n\"\"\"/>\n\\end\n\n\\define update-count()\n<$wikify name=\"count-filter\" text=<<each-updateable-plugin \"&#91;&#91;<$text text=<<assetInfo>>/>]]\">>><$count filter=<<count-filter>>/></$wikify>\n\\end\n\n<$button actions=<<update-all-actions>> class=\"tc-btn-invisible tc-install-plugin tc-reinstall-upgrade\">\n{{$:/core/images/download-button}} {{||$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption}}\n</$button>\n\n<div class=\"tc-plugin-library-listing\">\n<$macrocall $name=\"each-updateable-plugin\" body=\"\"\"\n<$macrocall $name=\"display-plugin-info\" type={{{ [<assetInfo>get[original-plugin-type]] }}}/>\n\"\"\"/>\n</div>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/AddPlugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/AddPlugins",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n<$button message=\"tm-modal\" param=\"$:/core/ui/ControlPanel/Modals/AddPlugins\" tooltip={{$:/language/ControlPanel/Plugins/Add/Hint}} class=\"tc-btn-big-green tc-primary-btn\">\n{{$:/core/images/download-button}} <<lingo Add/Caption>>\n</$button>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Languages": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Languages",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[language]]\"/>)",
            "text": "<<plugin-table language>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[plugin]]\"/>)",
            "text": "<<plugin-table plugin>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins/Installed/Themes": {
            "title": "$:/core/ui/ControlPanel/Plugins/Installed/Themes",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}} (<$count filter=\"[!has[draft.of]plugin-type[theme]]\"/>)",
            "text": "<<plugin-table theme>>\n"
        },
        "$:/core/ui/ControlPanel/Plugins": {
            "title": "$:/core/ui/ControlPanel/Plugins",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Plugins/\n\n\\define plugin-table(type)\n<$set name=\"plugin-type\" value=\"\"\"$type$\"\"\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n<$list filter=\"[!has[draft.of]plugin-type[$type$]sort[name]]\" emptyMessage=<<lingo \"Empty/Hint\">> template=\"$:/core/ui/Components/plugin-info\"/>\n</$set>\n</$set>\n\\end\n\n{{$:/core/ui/ControlPanel/Plugins/AddPlugins}}\n\n<<lingo Installed/Hint>>\n\n<$macrocall $name=\"tabs\" tabsList=\"[[$:/core/ui/ControlPanel/Plugins/Installed/Plugins]] [[$:/core/ui/ControlPanel/Plugins/Installed/Themes]] [[$:/core/ui/ControlPanel/Plugins/Installed/Languages]]\" default=\"$:/core/ui/ControlPanel/Plugins/Installed/Plugins\" explicitState=\"$:/state/tab--86143343\"/>\n"
        },
        "$:/core/ui/ControlPanel/Saving/DownloadSaver": {
            "title": "$:/core/ui/ControlPanel/Saving/DownloadSaver",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/DownloadSaver/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/DownloadSaver/\n\n<<lingo Hint>>\n\n!! <$link to=\"$:/config/DownloadSaver/AutoSave\"><<lingo AutoSave/Hint>></$link>\n\n<$checkbox tiddler=\"$:/config/DownloadSaver/AutoSave\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <<lingo AutoSave/Description>> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Saving/General": {
            "title": "$:/core/ui/ControlPanel/Saving/General",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/General/Caption}}",
            "list-before": "",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n{{$:/language/ControlPanel/Saving/General/Hint}}\n\n!! <$link to=\"$:/config/AutoSave\"><<lingo AutoSave/Caption>></$link>\n\n<<lingo AutoSave/Hint>>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"yes\"> <<lingo AutoSave/Enabled/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/AutoSave\" value=\"no\"> <<lingo AutoSave/Disabled/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Saving/GitHub": {
            "title": "$:/core/ui/ControlPanel/Saving/GitHub",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/GitHub/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitHub\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitHub/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitHub/Password>> |<$password name=\"github\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitHub/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitHub/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitHub/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitHub/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitHub/ServerURL\" default=\"https://api.github.com\" tag=\"input\"/> |"
        },
        "$:/core/ui/ControlPanel/Saving/GitLab": {
            "title": "$:/core/ui/ControlPanel/Saving/GitLab",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/GitLab/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~GitLab\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/GitLab/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo GitLab/Password>> |<$password name=\"gitlab\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/GitLab/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/GitLab/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/GitLab/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/GitLab/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/GitLab/ServerURL\" default=\"https://gitlab.com/api/v4\" tag=\"input\"/> |"
        },
        "$:/core/ui/ControlPanel/Saving/TiddlySpot": {
            "title": "$:/core/ui/ControlPanel/Saving/TiddlySpot",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/TiddlySpot/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/TiddlySpot/\n\n\\define siteURL(path)\nhttp://$(userName)$.tiddlyspot.com/$path$/\n\\end\n\\define siteLink(path)\n<$reveal type=\"nomatch\" state=\"$:/UploadName\" text=\"\">\n<$set name=\"userName\" value={{$:/UploadName}}>\n<$reveal type=\"match\" state=\"$:/UploadURL\" text=\"\">\n<<siteURL $path$>>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/UploadURL\" text=\"\">\n<$macrocall $name=resolvePath source={{$:/UploadBackupDir}} root={{$:/UploadURL}}>>\n</$reveal>\n</$set>\n</$reveal>\n\\end\n\n<div class=\"tc-message-box\">\n\n<<lingo ReadOnly>>\n\n</div>\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/UploadName\" default=\"\" tag=\"input\"/> |\n|<<lingo Password>> |<$password name=\"upload\"/> |\n|<<lingo Backups>> |<<siteLink backup>> |\n|<<lingo ControlPanel>> |<<siteLink controlpanel>> |\n\n''<<lingo Advanced/Heading>>''\n\n|<<lingo ServerURL>>  |<$edit-text tiddler=\"$:/UploadURL\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/UploadFilename\" default=\"index.html\" tag=\"input\"/> |\n|<<lingo UploadDir>> |<$edit-text tiddler=\"$:/UploadDir\" default=\".\" tag=\"input\"/> |\n|<<lingo BackupDir>> |<$edit-text tiddler=\"$:/UploadBackupDir\" default=\".\" tag=\"input\"/> |\n\n<<lingo TiddlySpot/Hint>>\n"
        },
        "$:/core/ui/ControlPanel/Saving/Gitea": {
            "title": "$:/core/ui/ControlPanel/Saving/Gitea",
            "tags": "$:/tags/ControlPanel/Saving",
            "caption": "{{$:/language/ControlPanel/Saving/GitService/Gitea/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Saving/GitService/\n\\define service-name() ~Gitea\n\n<<lingo Description>>\n\n|<<lingo UserName>> |<$edit-text tiddler=\"$:/Gitea/Username\" default=\"\" tag=\"input\"/> |\n|<<lingo Gitea/Password>> |<$password name=\"Gitea\"/> |\n|<<lingo Repo>> |<$edit-text tiddler=\"$:/Gitea/Repo\" default=\"\" tag=\"input\"/> |\n|<<lingo Branch>> |<$edit-text tiddler=\"$:/Gitea/Branch\" default=\"master\" tag=\"input\"/> |\n|<<lingo Path>> |<$edit-text tiddler=\"$:/Gitea/Path\" default=\"\" tag=\"input\"/> |\n|<<lingo Filename>> |<$edit-text tiddler=\"$:/Gitea/Filename\" default=\"\" tag=\"input\"/> |\n|<<lingo ServerURL>> |<$edit-text tiddler=\"$:/Gitea/ServerURL\" default=\"https://gitea/api/v1\" tag=\"input\"/> |\n"
        },
        "$:/core/ui/ControlPanel/Saving": {
            "title": "$:/core/ui/ControlPanel/Saving",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Saving/Caption}}",
            "text": "{{$:/language/ControlPanel/Saving/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Saving]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Saving/General\" explicitState=\"$:/state/tab-2065006209\"/>\n</div>\n"
        },
        "$:/core/buttonstyles/Borderless": {
            "title": "$:/core/buttonstyles/Borderless",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless}}",
            "text": "tc-btn-invisible"
        },
        "$:/core/buttonstyles/Boxed": {
            "title": "$:/core/buttonstyles/Boxed",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed}}",
            "text": "tc-btn-boxed"
        },
        "$:/core/buttonstyles/Rounded": {
            "title": "$:/core/buttonstyles/Rounded",
            "tags": "$:/tags/ToolbarButtonStyle",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded}}",
            "text": "tc-btn-rounded"
        },
        "$:/core/ui/ControlPanel/Settings/CamelCase": {
            "title": "$:/core/ui/ControlPanel/Settings/CamelCase",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/CamelCase/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/CamelCase/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/WikiParserRules/Inline/wikilink\" field=\"text\" checked=\"enable\" unchecked=\"disable\" default=\"enable\"> <$link to=\"$:/config/WikiParserRules/Inline/wikilink\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultMoreSidebarTab/\n\n<$link to=\"$:/config/DefaultMoreSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultMoreSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab": {
            "title": "$:/core/ui/ControlPanel/Settings/DefaultSidebarTab",
            "caption": "{{$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption}}",
            "tags": "$:/tags/ControlPanel/Settings",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/DefaultSidebarTab/\n\n<$link to=\"$:/config/DefaultSidebarTab\"><<lingo Hint>></$link>\n\n<$select tiddler=\"$:/config/DefaultSidebarTab\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\">\n<option value=<<currentTiddler>>><$transclude field=\"caption\"><$text text=<<currentTiddler>>/></$transclude></option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Settings/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/EditorToolbar/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/TextEditor/EnableToolbar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/TextEditor/EnableToolbar\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/InfoPanelMode": {
            "title": "$:/core/ui/ControlPanel/Settings/InfoPanelMode",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/InfoPanelMode/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/InfoPanelMode/\n<$link to=\"$:/config/TiddlerInfo/Mode\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"popup\"> <<lingo Popup/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/TiddlerInfo/Mode\" value=\"sticky\"> <<lingo Sticky/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/LinkToBehaviour": {
            "title": "$:/core/ui/ControlPanel/Settings/LinkToBehaviour",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/LinkToBehaviour/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/LinkToBehaviour/\n\n<$link to=\"$:/config/Navigation/openLinkFromInsideRiver\"><<lingo \"InsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromInsideRiver\">\n  <option value=\"above\"><<lingo \"OpenAbove\">></option>\n  <option value=\"below\"><<lingo \"OpenBelow\">></option>\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n\n<$link to=\"$:/config/Navigation/openLinkFromOutsideRiver\"><<lingo \"OutsideRiver/Hint\">></$link>\n\n<$select tiddler=\"$:/config/Navigation/openLinkFromOutsideRiver\">\n  <option value=\"top\"><<lingo \"OpenAtTop\">></option>\n  <option value=\"bottom\"><<lingo \"OpenAtBottom\">></option>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/MissingLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/MissingLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/MissingLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/MissingLinks/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/MissingLinks\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/MissingLinks\"><<lingo Description>></$link> </$checkbox>\n\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationAddressBar": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationAddressBar",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationAddressBar/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationAddressBar/\n\n<$link to=\"$:/config/Navigation/UpdateAddressBar\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permaview\"> <<lingo Permaview/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"permalink\"> <<lingo Permalink/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateAddressBar\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationHistory": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationHistory",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationHistory/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationHistory/\n<$link to=\"$:/config/Navigation/UpdateHistory\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Navigation/UpdateHistory\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode": {
            "title": "$:/core/ui/ControlPanel/Settings/NavigationPermalinkviewMode",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/NavigationPermalinkviewMode/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/CopyToClipboard\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/CopyToClipboard\"><<lingo CopyToClipboard/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Navigation/Permalinkview/UpdateAddressBar\"><<lingo UpdateAddressBar/Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation": {
            "title": "$:/core/ui/ControlPanel/Settings/PerformanceInstrumentation",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/PerformanceInstrumentation/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Performance/Instrumentation\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Performance/Instrumentation\"><<lingo Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings/TitleLinks": {
            "title": "$:/core/ui/ControlPanel/Settings/TitleLinks",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/TitleLinks/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/TitleLinks/\n<$link to=\"$:/config/Tiddlers/TitleLinks\"><<lingo Hint>></$link>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"yes\"> <<lingo Yes/Description>> </$radio>\n\n<$radio tiddler=\"$:/config/Tiddlers/TitleLinks\" value=\"no\"> <<lingo No/Description>> </$radio>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtonStyle",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtonStyle/\n<$link to=\"$:/config/Toolbar/ButtonClass\"><<lingo \"Hint\">></$link>\n\n<$select tiddler=\"$:/config/Toolbar/ButtonClass\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ToolbarButtonStyle]]\">\n<option value={{!!text}}>{{!!caption}}</option>\n</$list>\n</$select>\n"
        },
        "$:/core/ui/ControlPanel/Settings/ToolbarButtons": {
            "title": "$:/core/ui/ControlPanel/Settings/ToolbarButtons",
            "tags": "$:/tags/ControlPanel/Settings",
            "caption": "{{$:/language/ControlPanel/Settings/ToolbarButtons/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/ToolbarButtons/\n<<lingo Hint>>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Icons\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"yes\"> <$link to=\"$:/config/Toolbar/Icons\"><<lingo Icons/Description>></$link> </$checkbox>\n\n<$checkbox tiddler=\"$:/config/Toolbar/Text\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> <$link to=\"$:/config/Toolbar/Text\"><<lingo Text/Description>></$link> </$checkbox>\n"
        },
        "$:/core/ui/ControlPanel/Settings": {
            "title": "$:/core/ui/ControlPanel/Settings",
            "tags": "$:/tags/ControlPanel",
            "caption": "{{$:/language/ControlPanel/Settings/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/Settings/\n\n<<lingo Hint>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Settings]]\">\n\n<div style=\"border-top:1px solid #eee;\">\n\n!! <$link><$transclude field=\"caption\"/></$link>\n\n<$transclude/>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ControlPanel/StoryView": {
            "title": "$:/core/ui/ControlPanel/StoryView",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/StoryView/Caption}}",
            "text": "{{$:/snippets/viewswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/Stylesheets": {
            "title": "$:/core/ui/ControlPanel/Stylesheets",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/Stylesheets/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo Stylesheets/Hint>>\n\n{{$:/snippets/peek-stylesheets}}\n"
        },
        "$:/core/ui/ControlPanel/Theme": {
            "title": "$:/core/ui/ControlPanel/Theme",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Theme/Caption}}",
            "text": "{{$:/snippets/themeswitcher}}\n"
        },
        "$:/core/ui/ControlPanel/TiddlerFields": {
            "title": "$:/core/ui/ControlPanel/TiddlerFields",
            "tags": "$:/tags/ControlPanel/Advanced",
            "caption": "{{$:/language/ControlPanel/TiddlerFields/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\n<<lingo TiddlerFields/Hint>>\n\n{{$:/snippets/allfields}}"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"><$transclude tiddler={{!!icon}}/></span> <$transclude field=\"caption\"/> -- <i class=\"tc-muted\"><$transclude field=\"description\"/></i>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/EditorToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/EditorToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/EditorToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/EditorToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/EditorToolbar/Hint}}\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/EditorToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/EditorItemTemplate\"/>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ItemTemplate": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ItemTemplate",
            "text": "\\define config-title()\n$(config-base)$$(currentTiddler)$\n\\end\n\n<$draggable tiddler=<<currentTiddler>>>\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <span class=\"tc-icon-wrapper\"> <$transclude field=\"caption\"/> <i class=\"tc-muted\">-- <$transclude field=\"description\"/></i></span>\n</$draggable>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/PageControls": {
            "title": "$:/core/ui/ControlPanel/Toolbars/PageControls",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/PageControls/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/PageControlButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/PageControls/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/PageControls\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars/ViewToolbar": {
            "title": "$:/core/ui/ControlPanel/Toolbars/ViewToolbar",
            "tags": "$:/tags/ControlPanel/Toolbars",
            "caption": "{{$:/language/ControlPanel/Toolbars/ViewToolbar/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\n\\define config-base() $:/config/ViewToolbarButtons/Visibility/\n\n{{$:/language/ControlPanel/Toolbars/ViewToolbar/Hint}}\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$macrocall $name=\"list-tagged-draggable\" tag=\"$:/tags/ViewToolbar\" itemTemplate=\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\"/>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/ControlPanel/Toolbars": {
            "title": "$:/core/ui/ControlPanel/Toolbars",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/Toolbars/Caption}}",
            "text": "{{$:/language/ControlPanel/Toolbars/Hint}}\n\n<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel/Toolbars]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Toolbars/ViewToolbar\" class=\"tc-vertical\" explicitState=\"$:/state/tabs/controlpanel/toolbars-1345989671\"/>\n</div>\n"
        },
        "$:/ControlPanel": {
            "title": "$:/ControlPanel",
            "icon": "$:/core/images/options-button",
            "color": "#bbb",
            "text": "<div class=\"tc-control-panel\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/ControlPanel]!has[draft.of]]\" default=\"$:/core/ui/ControlPanel/Info\" explicitState=\"$:/state/tab-1749438307\"/>\n</div>\n"
        },
        "$:/core/ui/DefaultSearchResultList": {
            "title": "$:/core/ui/DefaultSearchResultList",
            "tags": "$:/tags/SearchResults",
            "caption": "{{$:/language/Search/DefaultResults/Caption}}",
            "first-search-filter": "[!is[system]search:title<userInput>sort[title]limit[250]]",
            "second-search-filter": "[!is[system]search<userInput>sort[title]limit[250]]",
            "text": "\\define searchResultList()\n//<small>{{$:/language/Search/Matches/Title}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[first-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-primaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\n\n//<small>{{$:/language/Search/Matches/All}}</small>//\n\n<$list filter=\"[<userInput>minlength[1]]\" variable=\"ignore\">\n<$list filter={{{ [<configTiddler>get[second-search-filter]] }}}>\n<span class={{{[<currentTiddler>addsuffix[-secondaryList]] -[<searchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</span>\n</$list>\n</$list>\n\n\\end\n<<searchResultList>>\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-current": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-current",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from current",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/diffs-shadow": {
            "title": "$:/core/ui/EditTemplate/body/preview/diffs-shadow",
            "tags": "$:/tags/EditPreview",
            "caption": "differences from shadow (if any)",
            "list-after": "$:/core/ui/EditTemplate/body/preview/output",
            "text": "<$list filter=\"[<currentTiddler>!is[image]]\" emptyMessage={{$:/core/ui/EditTemplate/body/preview/output}}>\n\n<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle={{{ [{!!draft.of}shadowsource[]] }}} sourceSubTiddlerTitle={{!!draft.of}} destTiddlerTitle=<<currentTiddler>>/>\n\n</$list>\n\n"
        },
        "$:/core/ui/EditTemplate/body/preview/output": {
            "title": "$:/core/ui/EditTemplate/body/preview/output",
            "tags": "$:/tags/EditPreview",
            "caption": "{{$:/language/EditTemplate/Body/Preview/Type/Output}}",
            "text": "\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$set name=\"tv-tiddler-preview\" value=\"yes\">\n\n<$transclude />\n\n</$set>\n"
        },
        "$:/state/showeditpreview": {
            "title": "$:/state/showeditpreview",
            "text": "no"
        },
        "$:/core/ui/EditTemplate/body/editor": {
            "title": "$:/core/ui/EditTemplate/body/editor",
            "text": "<$edit\n\n  field=\"text\"\n  class=\"tc-edit-texteditor tc-edit-texteditor-body\"\n  placeholder={{$:/language/EditTemplate/Body/Placeholder}}\n  tabindex={{$:/config/EditTabIndex}}\n  focus={{{ [{$:/config/AutoFocus}match[text]then[true]] ~[[false]] }}}\n  cancelPopups=\"yes\"\n\n><$set\n\n  name=\"targetTiddler\"\n  value=<<currentTiddler>>\n\n><$list\n\n  filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]]\"\n\n><$reveal\n\n  type=\"nomatch\"\n  state=<<config-visibility-title>>\n  text=\"hide\"\n  class=\"tc-text-editor-toolbar-item-wrapper\"\n\n><$transclude\n\n  tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\"\n  mode=\"inline\"\n\n/></$reveal></$list></$set></$edit>\n"
        },
        "$:/core/ui/EditTemplate/body/toolbar/button": {
            "title": "$:/core/ui/EditTemplate/body/toolbar/button",
            "text": "\\define toolbar-button-icon()\n<$list\n\n  filter=\"[all[current]!has[custom-icon]]\"\n  variable=\"no-custom-icon\"\n\n><$transclude\n\n  tiddler={{!!icon}}\n\n/></$list>\n\\end\n\n\\define toolbar-button-tooltip()\n{{!!description}}<$macrocall $name=\"displayshortcuts\" $output=\"text/plain\" shortcuts={{!!shortcuts}} prefix=\"` - [\" separator=\"] [\" suffix=\"]`\"/>\n\\end\n\n\\define toolbar-button()\n<$list\n\n  filter={{!!condition}}\n  variable=\"list-condition\"\n\n><$wikify\n\n  name=\"tooltip-text\"\n  text=<<toolbar-button-tooltip>>\n  mode=\"inline\"\n  output=\"text\"\n\n><$list\n\n  filter=\"[all[current]!has[dropdown]]\"\n  variable=\"no-dropdown\"\n\n><$button\n\n  class=\"tc-btn-invisible $(buttonClasses)$\"\n  tooltip=<<tooltip-text>>\n  actions={{!!actions}}\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button></$list><$list\n\n  filter=\"[all[current]has[dropdown]]\"\n  variable=\"dropdown\"\n\n><$set\n\n  name=\"dropdown-state\"\n  value=<<qualify \"$:/state/EditorToolbarDropdown\">>\n\n><$button\n\n  popup=<<dropdown-state>>\n  class=\"tc-popup-keep tc-btn-invisible $(buttonClasses)$\"\n  selectedClass=\"tc-selected\"\n  tooltip=<<tooltip-text>>\n  actions={{!!actions}}\n\n><span\n\n  data-tw-keyboard-shortcut={{!!shortcuts}}\n\n/><<toolbar-button-icon>><$transclude\n\n  tiddler=<<currentTiddler>>\n  field=\"text\"\n\n/></$button><$reveal\n\n  state=<<dropdown-state>>\n  type=\"popup\"\n  position=\"below\"\n  animate=\"yes\"\n  tag=\"span\"\n\n><div\n\n  class=\"tc-drop-down tc-popup-keep\"\n\n><$transclude\n\n  tiddler={{!!dropdown}}\n  mode=\"block\"\n\n/></div></$reveal></$set></$list></$wikify></$list>\n\\end\n\n\\define toolbar-button-outer()\n<$set\n\n  name=\"buttonClasses\"\n  value={{!!button-classes}}\n\n><<toolbar-button>></$set>\n\\end\n\n<<toolbar-button-outer>>"
        },
        "$:/core/ui/EditTemplate/body": {
            "title": "$:/core/ui/EditTemplate/body",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Body/\n\\define config-visibility-title()\n$:/config/EditorToolbarButtons/Visibility/$(currentTiddler)$\n\\end\n<$list filter=\"[all[current]has[_canonical_uri]]\">\n\n<div class=\"tc-message-box\">\n\n<<lingo External/Hint>>\n\n<a href={{!!_canonical_uri}}><$text text={{!!_canonical_uri}}/></a>\n\n<$edit-text field=\"_canonical_uri\" class=\"tc-edit-fields\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"></$edit-text>\n\n</div>\n\n</$list>\n\n<$list filter=\"[all[current]!has[_canonical_uri]]\">\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\">\n\n<div class=\"tc-tiddler-preview\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n<div class=\"tc-tiddler-preview-preview\">\n\n<$transclude tiddler={{$:/state/editpreviewtype}} mode=\"inline\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/preview/output\" mode=\"inline\"/>\n\n</$transclude>\n\n</div>\n\n</div>\n\n</$reveal>\n\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\">\n\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/editor\" mode=\"inline\"/>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/EditTemplate/controls": {
            "title": "$:/core/ui/EditTemplate/controls",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define config-title()\n$:/config/EditToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title tc-tiddler-edit-title\">\n<$view field=\"title\"/>\n<span class=\"tc-tiddler-controls tc-titlebar\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$transclude tiddler=<<listItem>>/></$reveal></$list></span>\n<div style=\"clear: both;\"></div>\n</div>\n"
        },
        "$:/core/ui/EditTemplate/fields": {
            "title": "$:/core/ui/EditTemplate/fields",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\\define config-title()\n$:/config/EditTemplateFields/Visibility/$(currentField)$\n\\end\n\n\\define config-filter()\n[[hide]] -[title{$(config-title)$}]\n\\end\n\n\\define current-tiddler-new-field-selector()\n[data-tiddler-title=\"$(currentTiddlerCSSescaped)$\"] .tc-edit-field-add-name-wrapper input\n\\end\n\n\\define new-field-actions()\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/>\n\\end\n\n\\define delete-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\n\\define cancel-search-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newFieldNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-state-tiddlers>>\n</$list>\n\\end\n\n\\define cancel-search-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newFieldNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newFieldNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define new-field()\n<$vars name={{{ [<newFieldNameTiddler>get[text]] }}}>\n<$reveal type=\"nomatch\" text=\"\" default=<<name>>>\n<$button tooltip=<<lingo Fields/Add/Button/Hint>>>\n<$action-sendmessage $message=\"tm-add-field\"\n$name=<<name>>\n$value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<storeTitle>] [<searchListState>]\"/>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n<$reveal type=\"match\" text=\"\" default=<<name>>>\n<$button>\n<<lingo Fields/Add/Button>>\n</$button>\n</$reveal>\n</$vars>\n\\end\n\\whitespace trim\n\n<div class=\"tc-edit-fields\">\n<table class={{{ [all[current]fields[]] :filter[lookup[$:/config/EditTemplateFields/Visibility/]!match[hide]] +[count[]!match[0]] +[then[tc-edit-fields]] ~[[tc-edit-fields tc-edit-fields-small]] }}}>\n<tbody>\n<$list filter=\"[all[current]fields[]] +[sort[title]]\" variable=\"currentField\" storyview=\"pop\">\n<$list filter=<<config-filter>> variable=\"temp\">\n<tr class=\"tc-edit-field\">\n<td class=\"tc-edit-field-name\">\n<$text text=<<currentField>>/>:</td>\n<td class=\"tc-edit-field-value\">\n<$keyboard key=\"((delete-field))\" actions=\"\"\"<$action-deletefield $field=<<currentField>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\"\"\">\n<$edit-text tiddler=<<currentTiddler>> field=<<currentField>> placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\n</td>\n<td class=\"tc-edit-field-remove\">\n<$button class=\"tc-btn-invisible\" tooltip={{$:/language/EditTemplate/Field/Remove/Hint}} aria-label={{$:/language/EditTemplate/Field/Remove/Caption}}>\n<$action-deletefield $field=<<currentField>>/><$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<current-tiddler-new-field-selector>>/></$set>\n{{$:/core/images/delete-button}}\n</$button>\n</td>\n</tr>\n</$list>\n</$list>\n</tbody>\n</table>\n</div>\n\n<$fieldmangler>\n<div class=\"tc-edit-field-add\">\n<em class=\"tc-edit tc-big-gap-right\">\n<<lingo Fields/Add/Prompt>>\n</em>\n<$vars refreshTitle=<<qualify \"$:/temp/fieldname/refresh\">> storeTitle=<<newFieldNameInputTiddler>> searchListState=<<newFieldNameSelectionTiddler>>>\n<div class=\"tc-edit-field-add-name-wrapper\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newFieldNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<searchListState>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Name/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}}\n\t\tfocus={{{ [{$:/config/AutoFocus}match[fields]then[true]] ~[[false]] }}} cancelPopups=\"yes\"\n\t\tconfigTiddlerFilter=\"[[$:/config/EditMode/fieldname-filter]]\" inputCancelActions=<<cancel-search-actions>> />\n<$button popup=<<qualify \"$:/state/popup/field-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" tooltip={{$:/language/EditTemplate/Field/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Field/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/field-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$linkcatcher to=<<newFieldNameTiddler>>>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/User>>\n</div>\n<$set name=\"newFieldName\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[!is[shadow]!is[system]fields[]search:title<newFieldName>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type\"  variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-primaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n<div class=\"tc-dropdown-item\">\n<<lingo Fields/Add/Dropdown/System>>\n</div>\n<$list filter=\"[fields[]search:title<newFieldName>sort[]] -[!is[shadow]!is[system]fields[]]\" variable=\"currentField\">\n<$list filter=\"[<currentField>addsuffix[-secondaryList]] -[<searchListState>get[text]]\" emptyMessage=\"\"\"<$link to=<<currentField>> class=\"tc-list-item-selected\"><$text text=<<currentField>>/></$link>\"\"\">\n<$link to=<<currentField>>>\n<$text text=<<currentField>>/>\n</$link>\n</$list>\n</$list>\n</$set>\n</$linkcatcher>\n</$set>\n</div>\n</$reveal>\n</div>\n<span class=\"tc-edit-field-add-value tc-small-gap-right\">\n<$set name=\"currentTiddlerCSSescaped\" value={{{ [<currentTiddler>escapecss[]] }}}>\n<$keyboard key=\"((add-field))\" actions=<<new-field-actions>>>\n<$edit-text tiddler=<<newFieldValueTiddler>> tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Fields/Add/Value/Placeholder}} class=\"tc-edit-texteditor\" tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n</$keyboard>\n</$set>\n</span>\n<span class=\"tc-edit-field-add-button\">\n<$macrocall $name=\"new-field\"/>\n</span>\n</$vars>\n</div>\n</$fieldmangler>\n"
        },
        "$:/core/ui/EditTemplate/shadow": {
            "title": "$:/core/ui/EditTemplate/shadow",
            "tags": "$:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/EditTemplate/Shadow/\n\\define pluginLinkBody()\n<$link to=\"\"\"$(pluginTitle)$\"\"\">\n<$text text=\"\"\"$(pluginTitle)$\"\"\"/>\n</$link>\n\\end\n<$list filter=\"[all[current]get[draft.of]is[shadow]!is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo Warning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>\n\n<$list filter=\"[all[current]get[draft.of]is[shadow]is[tiddler]]\">\n\n<$list filter=\"[all[current]shadowsource[]]\" variable=\"pluginTitle\">\n\n<$set name=\"pluginLink\" value=<<pluginLinkBody>>>\n<div class=\"tc-message-box\">\n\n<<lingo OverriddenWarning>>\n\n</div>\n</$set>\n</$list>\n\n</$list>"
        },
        "$:/core/ui/EditTemplate/tags": {
            "title": "$:/core/ui/EditTemplate/tags",
            "tags": "$:/tags/EditTemplate",
            "text": "\\whitespace trim\n\n\\define lingo-base() $:/language/EditTemplate/\n\n\\define tag-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-body-inner(colour,fallbackTarget,colourA,colourB,icon,tagField:\"tags\")\n\\whitespace trim\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<span style=<<tag-styles>> class=\"tc-tag-label tc-tag-list-item\">\n<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view field=\"title\" format=\"text\" />\n<$button class=\"tc-btn-invisible tc-remove-tag-button\"><$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[{!!title}]\"/>{{$:/core/images/close-button}}</$button>\n</span>\n</$vars>\n\\end\n\n\\define tag-body(colour,palette,icon,tagField:\"tags\")\n<$macrocall $name=\"tag-body-inner\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} icon=\"\"\"$icon$\"\"\" tagField=<<__tagField__>>/>\n\\end\n\n\\define edit-tags-template(tagField:\"tags\")\n\\whitespace trim\n<div class=\"tc-edit-tags\">\n<$list filter=\"[list[!!$tagField$]sort[title]]\" storyview=\"pop\">\n<$macrocall $name=\"tag-body\" colour={{!!color}} palette={{$:/palette}} icon={{!!icon}} tagField=<<__tagField__>>/>\n</$list>\n<$vars tabIndex={{$:/config/EditTabIndex}} cancelPopups=\"yes\">\n<$macrocall $name=\"tag-picker\" tagField=<<__tagField__>>/>\n</$vars>\n</div>\n\\end\n<$set name=\"saveTiddler\" value=<<currentTiddler>>>\n<$macrocall $name=\"edit-tags-template\" tagField=<<tagField>>/>\n</$set>\n"
        },
        "$:/core/ui/EditTemplate/title": {
            "title": "$:/core/ui/EditTemplate/title",
            "tags": "$:/tags/EditTemplate",
            "text": "<$edit-text field=\"draft.title\" class=\"tc-titlebar tc-edit-texteditor\" focus={{{ [{$:/config/AutoFocus}match[title]then[true]] ~[[false]] }}} tabindex={{$:/config/EditTabIndex}} cancelPopups=\"yes\"/>\n\n<$vars pattern=\"\"\"[\\|\\[\\]{}]\"\"\" bad-chars=\"\"\"`| [ ] { }`\"\"\">\n\n<$list filter=\"[all[current]regexp:draft.title<pattern>]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/BadCharacterWarning}}\n\n</div>\n\n</$list>\n\n</$vars>\n\n<$reveal state=\"!!draft.title\" type=\"nomatch\" text={{!!draft.of}} tag=\"div\">\n\n<$list filter=\"[{!!draft.title}!is[missing]]\" variable=\"listItem\">\n\n<div class=\"tc-message-box\">\n\n{{$:/core/images/warning}} {{$:/language/EditTemplate/Title/Exists/Prompt}}\n\n</div>\n\n</$list>\n\n<$list filter=\"[{!!draft.of}!is[missing]]\" variable=\"listItem\">\n\n<$vars fromTitle={{!!draft.of}} toTitle={{!!draft.title}}>\n\n<$checkbox tiddler=\"$:/config/RelinkOnRename\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"no\"> {{$:/language/EditTemplate/Title/Relink/Prompt}}</$checkbox>\n\n<$list filter=\"[title<fromTitle>backlinks[]limit[1]]\" variable=\"listItem\">\n\n<$vars stateTiddler=<<qualify \"$:/state/edit/references\">> >\n\n<$reveal type=\"nomatch\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"show\" class=\"tc-btn-invisible\">{{$:/core/images/right-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$button set=<<stateTiddler>> setTo=\"hide\" class=\"tc-btn-invisible\">{{$:/core/images/down-arrow}} \n<<lingo EditTemplate/Title/References/Prompt>></$button>\n</$reveal>\n\n<$reveal type=\"match\" state=<<stateTiddler>> text=\"show\">\n<$tiddler tiddler=<<fromTitle>> >\n<$transclude tiddler=\"$:/core/ui/TiddlerInfo/References\"/>\n</$tiddler>\n</$reveal>\n\n</$vars>\n\n</$list>\n\n</$vars>\n\n</$list>\n\n</$reveal>\n"
        },
        "$:/core/ui/EditTemplate/type": {
            "title": "$:/core/ui/EditTemplate/type",
            "tags": "$:/tags/EditTemplate",
            "first-search-filter": "[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]sort[description]sort[group-sort]removeprefix[$:/language/Docs/Types/]search<userInput>]",
            "text": "\\define lingo-base() $:/language/EditTemplate/\n\\define input-cancel-actions() <$list filter=\"[<storeTitle>get[text]] [<currentTiddler>get[type]] +[limit[1]]\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\"><$action-sendmessage $message=\"tm-remove-field\" $param=\"type\"/><$action-deletetiddler $filter=\"[<typeInputTiddler>] [<refreshTitle>] [<typeSelectionTiddler>]\"/></$list>\n\\whitespace trim\n<$set name=\"refreshTitle\" value=<<qualify \"$:/temp/type-search/refresh\">>>\n<div class=\"tc-edit-type-selector-wrapper\">\n<em class=\"tc-edit tc-big-gap-right\"><<lingo Type/Prompt>></em>\n<div class=\"tc-type-selector-dropdown-wrapper\">\n<div class=\"tc-type-selector\"><$fieldmangler>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<currentTiddler>> storeTitle=<<typeInputTiddler>> refreshTitle=<<refreshTitle>> selectionStateTitle=<<typeSelectionTiddler>> field=\"type\" tag=\"input\" default=\"\" placeholder={{$:/language/EditTemplate/Type/Placeholder}} focusPopup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-edit-typeeditor tc-edit-texteditor tc-popup-handle\" tabindex={{$:/config/EditTabIndex}} focus={{{ [{$:/config/AutoFocus}match[type]then[true]] ~[[false]] }}} cancelPopups=\"yes\" configTiddlerFilter=\"[[$:/core/ui/EditTemplate/type]]\" inputCancelActions=<<input-cancel-actions>>/><$button popup=<<qualify \"$:/state/popup/type-dropdown\">> class=\"tc-btn-invisible tc-btn-dropdown tc-small-gap\" tooltip={{$:/language/EditTemplate/Type/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Type/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button><$button message=\"tm-remove-field\" param=\"type\" class=\"tc-btn-invisible tc-btn-icon\" tooltip={{$:/language/EditTemplate/Type/Delete/Hint}} aria-label={{$:/language/EditTemplate/Type/Delete/Caption}}>{{$:/core/images/delete-button}}<$action-deletetiddler $filter=\"[<storeTitle>] [<refreshTitle>] [<selectionStateTitle>]\"/></$button>\n</$fieldmangler></div>\n\n<div class=\"tc-block-dropdown-wrapper\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$reveal state=<<qualify \"$:/state/popup/type-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-edit-type-dropdown\">\n<$linkcatcher to=\"!!type\">\n<$list filter='[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]each[group]sort[group-sort]]'>\n<div class=\"tc-dropdown-item\">\n<$text text={{!!group}}/>\n</div>\n<$set name=\"userInput\" value={{{ [<typeInputTiddler>get[text]] }}}>\n<$list filter=\"[all[shadows+tiddlers]prefix[$:/language/Docs/Types/]group{!!group}] +[sort[description]] +[removeprefix[$:/language/Docs/Types/]] +[search<userInput>]\"><span class={{{ [<currentTiddler>addsuffix[-primaryList]] -[<typeSelectionTiddler>get[text]] +[then[]else[tc-list-item-selected]] }}}><$link to={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]get[name]] }}}><$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"description\"/> (<$view tiddler={{{ [<currentTiddler>addprefix[$:/language/Docs/Types/]] }}} field=\"name\"/>)</$link></span>\n</$list>\n</$set>\n</$list>\n</$linkcatcher>\n</div>\n</$reveal>\n</$set>\n</div>\n</div>\n</div>\n</$set>\n"
        },
        "$:/core/ui/EditTemplate": {
            "title": "$:/core/ui/EditTemplate",
            "text": "\\define delete-edittemplate-state-tiddlers() <$action-deletetiddler $filter=\"[<newFieldNameTiddler>] [<newFieldValueTiddler>] [<newFieldNameInputTiddler>] [<newFieldNameSelectionTiddler>] [<newTagNameTiddler>] [<newTagNameInputTiddler>] [<newTagNameSelectionTiddler>] [<typeInputTiddler>] [<typeSelectionTiddler>]\"/>\n\\define save-tiddler-actions()\n<$action-sendmessage $message=\"tm-add-tag\" $param={{{ [<newTagNameTiddler>get[text]] }}}/>\n<$action-sendmessage $message=\"tm-add-field\" $name={{{ [<newFieldNameTiddler>get[text]] }}} $value={{{ [<newFieldValueTiddler>get[text]] }}}/>\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-save-tiddler\"/>\n\\end\n\\define cancel-delete-tiddler-actions(message)\n<<delete-edittemplate-state-tiddlers>>\n<$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\end\n<div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-edit-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}>\n<$fieldmangler>\n<$vars storyTiddler=<<currentTiddler>> newTagNameTiddler=<<qualify \"$:/temp/NewTagName\">> newFieldNameTiddler=<<qualify \"$:/temp/NewFieldName\">> newFieldValueTiddler=<<qualify \"$:/temp/NewFieldValue\">> newFieldNameInputTiddler=<<qualify \"$:/temp/NewFieldName/input\">> newFieldNameSelectionTiddler=<<qualify \"$:/temp/NewFieldName/selected-item\">> newTagNameInputTiddler=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddler=<<qualify \"$:/temp/NewTagName/selected-item\">> typeInputTiddler=<<qualify \"$:/temp/Type/input\">> typeSelectionTiddler=<<qualify \"$:/temp/Type/selected-item\">>>\n<$keyboard key=\"((cancel-edit-tiddler))\" actions=<<cancel-delete-tiddler-actions \"cancel\">>>\n<$keyboard key=\"((save-tiddler))\" actions=<<save-tiddler-actions>>>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditTemplate]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>>/>\n</$set>\n</$list>\n</$keyboard>\n</$keyboard>\n</$vars>\n</$fieldmangler>\n</div>\n"
        },
        "$:/core/ui/Buttons/cancel": {
            "title": "$:/core/ui/Buttons/cancel",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/cancel-button}} {{$:/language/Buttons/Cancel/Caption}}",
            "description": "{{$:/language/Buttons/Cancel/Hint}}",
            "text": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"cancel\">> tooltip={{$:/language/Buttons/Cancel/Hint}} aria-label={{$:/language/Buttons/Cancel/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/cancel-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Cancel/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/delete": {
            "title": "$:/core/ui/Buttons/delete",
            "tags": "$:/tags/EditToolbar $:/tags/ViewToolbar",
            "caption": "{{$:/core/images/delete-button}} {{$:/language/Buttons/Delete/Caption}}",
            "description": "{{$:/language/Buttons/Delete/Hint}}",
            "text": "\\whitespace trim\n<$button actions=<<cancel-delete-tiddler-actions \"delete\">> tooltip={{$:/language/Buttons/Delete/Hint}} aria-label={{$:/language/Buttons/Delete/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/delete-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Delete/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/save": {
            "title": "$:/core/ui/Buttons/save",
            "tags": "$:/tags/EditToolbar",
            "caption": "{{$:/core/images/done-button}} {{$:/language/Buttons/Save/Caption}}",
            "description": "{{$:/language/Buttons/Save/Hint}}",
            "text": "\\define save-tiddler-button()\n\\whitespace trim\n<$fieldmangler><$button tooltip={{$:/language/Buttons/Save/Hint}} aria-label={{$:/language/Buttons/Save/Caption}} class=<<tv-config-toolbar-class>>>\n<<save-tiddler-actions>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/done-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Save/Caption}}/></span>\n</$list>\n</$button></$fieldmangler>\n\\end\n<<save-tiddler-button>>\n"
        },
        "$:/core/ui/EditorToolbar/bold": {
            "title": "$:/core/ui/EditorToolbar/bold",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/bold",
            "caption": "{{$:/language/Buttons/Bold/Caption}}",
            "description": "{{$:/language/Buttons/Bold/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((bold))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"''\"\n\tsuffix=\"''\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/clear-dropdown": {
            "title": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": "''{{$:/language/Buttons/Clear/Hint}}''\n\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"clear\"\n\tcolour=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/clear": {
            "title": "$:/core/ui/EditorToolbar/clear",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/erase",
            "caption": "{{$:/language/Buttons/Clear/Caption}}",
            "description": "{{$:/language/Buttons/Clear/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/clear-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/editor-height-dropdown": {
            "title": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/EditorHeight/\n''<<lingo Hint>>''\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"auto\"> {{$:/core/images/auto-height}} <<lingo Caption/Auto>></$radio>\n\n<$radio tiddler=\"$:/config/TextEditor/EditorHeight/Mode\" value=\"fixed\"> {{$:/core/images/fixed-height}} <<lingo Caption/Fixed>> <$edit-text tag=\"input\" tiddler=\"$:/config/TextEditor/EditorHeight/Height\" default=\"100px\"/></$radio>\n"
        },
        "$:/core/ui/EditorToolbar/editor-height": {
            "title": "$:/core/ui/EditorToolbar/editor-height",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/fixed-height",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/EditorHeight/Caption}}",
            "description": "{{$:/language/Buttons/EditorHeight/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[first[]]",
            "dropdown": "$:/core/ui/EditorToolbar/editor-height-dropdown",
            "text": "<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n{{$:/core/images/fixed-height}}\n</$reveal>\n<$reveal tag=\"span\" state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n{{$:/core/images/auto-height}}\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/excise-dropdown": {
            "title": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Excise/\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<<lingo Caption/NewTitle>> <$edit-text tag=\"input\" tiddler=\"$config-title$/new-title\" default=\"\" focus=\"true\"/>\n\n<$set name=\"new-title\" value={{$config-title$/new-title}}>\n<$list filter=\"\"\"[<new-title>is[tiddler]]\"\"\">\n<div class=\"tc-error\">\n<<lingo Caption/TiddlerExists>>\n</div>\n</$list>\n</$set>\n\n<$checkbox tiddler=\"\"\"$config-title$/tagnew\"\"\" field=\"text\" checked=\"yes\" unchecked=\"no\" default=\"false\"> <<lingo Caption/Tag>></$checkbox>\n\n<<lingo Caption/Replace>> <$select tiddler=\"\"\"$config-title$/type\"\"\" default=\"transclude\">\n<option value=\"link\"><<lingo Caption/Replace/Link>></option>\n<option value=\"transclude\"><<lingo Caption/Replace/Transclusion>></option>\n<option value=\"macro\"><<lingo Caption/Replace/Macro>></option>\n</$select>\n\n<$reveal state=\"\"\"$config-title$/type\"\"\" type=\"match\" text=\"macro\">\n<<lingo Caption/MacroName>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/macro-title\"\"\" default=\"translink\"/>\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"excise\"\n\ttitle={{$config-title$/new-title}}\n\ttype={{$config-title$/type}}\n\tmacro={{$config-title$/macro-title}}\n\ttagnew={{$config-title$/tagnew}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"$config-title$/new-title\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Excise>>\n</$button>\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Excise/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/excise": {
            "title": "$:/core/ui/EditorToolbar/excise",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/excise",
            "caption": "{{$:/language/Buttons/Excise/Caption}}",
            "description": "{{$:/language/Buttons/Excise/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>type[text/vnd.tiddlywiki]] +[first[]]",
            "shortcuts": "((excise))",
            "dropdown": "$:/core/ui/EditorToolbar/excise-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/heading-1": {
            "title": "$:/core/ui/EditorToolbar/heading-1",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-1",
            "caption": "{{$:/language/Buttons/Heading1/Caption}}",
            "description": "{{$:/language/Buttons/Heading1/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((heading-1))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-2": {
            "title": "$:/core/ui/EditorToolbar/heading-2",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-2",
            "caption": "{{$:/language/Buttons/Heading2/Caption}}",
            "description": "{{$:/language/Buttons/Heading2/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-2))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"2\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-3": {
            "title": "$:/core/ui/EditorToolbar/heading-3",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-3",
            "caption": "{{$:/language/Buttons/Heading3/Caption}}",
            "description": "{{$:/language/Buttons/Heading3/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-3))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"3\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/core/ui/EditorToolbar/heading-4",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-4",
            "caption": "{{$:/language/Buttons/Heading4/Caption}}",
            "description": "{{$:/language/Buttons/Heading4/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-4))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"4\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/core/ui/EditorToolbar/heading-5",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-5",
            "caption": "{{$:/language/Buttons/Heading5/Caption}}",
            "description": "{{$:/language/Buttons/Heading5/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-5))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"5\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/core/ui/EditorToolbar/heading-6",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/heading-6",
            "caption": "{{$:/language/Buttons/Heading6/Caption}}",
            "description": "{{$:/language/Buttons/Heading6/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((heading-6))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"!\"\n\tcount=\"6\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/italic": {
            "title": "$:/core/ui/EditorToolbar/italic",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/italic",
            "caption": "{{$:/language/Buttons/Italic/Caption}}",
            "description": "{{$:/language/Buttons/Italic/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((italic))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"//\"\n\tsuffix=\"//\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/line-width-dropdown": {
            "title": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/LineWidth/\n\n\\define toolbar-line-width-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(line-width)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/LineWidth\"\n\t$value=\"$(line-width)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; margin: 4px calc(80px - $(line-width)$); background-color: #000; width: calc(100px + $(line-width)$ * 2); height: $(line-width)$; border-radius: 120px; vertical-align: middle;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(line-width)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/LineWidth\" type=\"match\" text=\"\"\"$(line-width)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/LineWidths}} variable=\"line-width\">\n\n<<toolbar-line-width-inner>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/line-width": {
            "title": "$:/core/ui/EditorToolbar/line-width",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/line-width",
            "caption": "{{$:/language/Buttons/LineWidth/Caption}}",
            "description": "{{$:/language/Buttons/LineWidth/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/line-width-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/LineWidth}}/>\n"
        },
        "$:/core/ui/EditorToolbar/link-dropdown": {
            "title": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Link/\n\n\\define add-link-actions()\n<$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"make-link\" text={{$(linkTiddler)$}} />\n<$action-deletetiddler $filter=\"[<dropdown-state>] [<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\n\\end\n\n\\define get-focus-selector() [data-tiddler-title=\"$(cssEscapedTitle)$\"] .tc-create-wikitext-link input\n\n\\define cancel-search-actions-inner()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}><$list filter=\"[<searchTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[<searchTiddler>] [<linkTiddler>] [<storeTitle>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=<<searchTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/></$list></$set>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<storeTitle>!has[text]] +[<searchTiddler>!has[text]]\" emptyMessage=\"\"\"<<cancel-search-actions-inner>>\"\"\"><$action-sendmessage $message=\"tm-edit-text-operation\" $param=\"wrap-selection\" prefix=\"\" suffix=\"\"/></$list>\n\n\\define external-link()\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\" actions=<<add-link-actions>>>\n{{$:/core/images/chevron-right}}\n</$button>\n\\end\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define body(config-title)\n''<<lingo Hint>>''\n\n<$vars searchTiddler=\"\"\"$config-title$/search\"\"\" linkTiddler=\"\"\"$config-title$/link\"\"\" linktext=\"\" searchListState=<<qualify \"$:/temp/link-search/selected-item\">> refreshTitle=<<qualify \"$:/temp/link-search/refresh\">> storeTitle=<<qualify \"$:/temp/link-search/input\">>>\n\n<$vars linkTiddler=<<searchTiddler>>>\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">> class=\"tc-create-wikitext-link\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<searchTiddler>> storeTitle=<<storeTitle>>\n\t\tselectionStateTitle=<<searchListState>> refreshTitle=<<refreshTitle>> type=\"search\" filterMinLength=\"1\"\n\t\ttag=\"input\" focus=\"true\" class=\"tc-popup-handle\" inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<add-link-actions>> placeholder={{$:/language/Search/Search}} default=\"\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\" />\n</$keyboard>\n</$keyboard>\n<$reveal tag=\"span\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n<<external-link>>\n<$button class=\"tc-btn-invisible\" style=\"width: auto; display: inline-block; background-colour: inherit;\">\n<<cancel-search-actions>><$set name=\"cssEscapedTitle\" value={{{ [<storyTiddler>escapecss[]] }}}><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-focus-selector>>/></$set>\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</$vars>\n\n<$reveal tag=\"div\" state=<<storeTitle>> type=\"nomatch\" text=\"\">\n\n<$linkcatcher actions=<<add-link-actions>> to=<<linkTiddler>>>\n\n<$vars userInput={{{ [<storeTitle>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n\n{{$:/core/ui/SearchResults}}\n\n</$vars>\n\n</$linkcatcher>\n\n</$reveal>\n\n</$vars>\n\n\\end\n\n<$macrocall $name=\"body\" config-title=<<qualify \"$:/state/Link/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/link": {
            "title": "$:/core/ui/EditorToolbar/link",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/link",
            "caption": "{{$:/language/Buttons/Link/Caption}}",
            "description": "{{$:/language/Buttons/Link/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((link))",
            "dropdown": "$:/core/ui/EditorToolbar/link-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/linkify": {
            "title": "$:/core/ui/EditorToolbar/linkify",
            "caption": "{{$:/language/Buttons/Linkify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Linkify/Hint}}",
            "icon": "$:/core/images/linkify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((linkify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"[[\"\n\tsuffix=\"]]\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-bullet": {
            "title": "$:/core/ui/EditorToolbar/list-bullet",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-bullet",
            "caption": "{{$:/language/Buttons/ListBullet/Caption}}",
            "description": "{{$:/language/Buttons/ListBullet/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-bullet))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"*\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/list-number": {
            "title": "$:/core/ui/EditorToolbar/list-number",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/list-number",
            "caption": "{{$:/language/Buttons/ListNumber/Caption}}",
            "description": "{{$:/language/Buttons/ListNumber/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((list-number))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"prefix-lines\"\n\tcharacter=\"#\"\n\tcount=\"1\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-block": {
            "title": "$:/core/ui/EditorToolbar/mono-block",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-block",
            "caption": "{{$:/language/Buttons/MonoBlock/Caption}}",
            "description": "{{$:/language/Buttons/MonoBlock/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((mono-block))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n```\"\n\tsuffix=\"```\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/mono-line": {
            "title": "$:/core/ui/EditorToolbar/mono-line",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/mono-line",
            "caption": "{{$:/language/Buttons/MonoLine/Caption}}",
            "description": "{{$:/language/Buttons/MonoLine/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((mono-line))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"`\"\n\tsuffix=\"`\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/more-dropdown": {
            "title": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": "\\define config-title()\n$:/config/EditorToolbarButtons/Visibility/$(toolbarItem)$\n\\end\n\n\\define conditional-button()\n<$list filter={{$(toolbarItem)$!!condition}} variable=\"condition\">\n<$transclude tiddler=\"$:/core/ui/EditTemplate/body/toolbar/button\" mode=\"inline\"/> <$transclude tiddler=<<toolbarItem>> field=\"description\"/>\n</$list>\n\\end\n\n<div class=\"tc-text-editor-toolbar-more\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditorToolbar]!has[draft.of]] -[[$:/core/ui/EditorToolbar/more]]\">\n<$reveal type=\"match\" state=<<config-visibility-title>> text=\"hide\" tag=\"div\">\n<<conditional-button>>\n</$reveal>\n</$list>\n</div>\n"
        },
        "$:/core/ui/EditorToolbar/more": {
            "title": "$:/core/ui/EditorToolbar/more",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/down-arrow",
            "caption": "{{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "condition": "[<targetTiddler>]",
            "dropdown": "$:/core/ui/EditorToolbar/more-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/opacity-dropdown": {
            "title": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Opacity/\n\n\\define toolbar-opacity-inner()\n<$button tag=\"a\" tooltip=\"\"\"$(opacity)$\"\"\">\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Opacity\"\n\t$value=\"$(opacity)$\"\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(current-paint-colour)$; opacity: $(opacity)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\n<span style=\"margin-left: 8px;\">\n\n<$text text=\"\"\"$(opacity)$\"\"\"/>\n\n<$reveal state=\"$:/config/BitmapEditor/Opacity\" type=\"match\" text=\"\"\"$(opacity)$\"\"\" tag=\"span\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</span>\n\n</$button>\n\\end\n\n\\define toolbar-opacity()\n''<<lingo Hint>>''\n\n<$list filter={{$:/config/BitmapEditor/Opacities}} variable=\"opacity\">\n\n<<toolbar-opacity-inner>>\n\n</$list>\n\\end\n\n<$set name=\"current-paint-colour\" value={{$:/config/BitmapEditor/Colour}}>\n\n<$set name=\"current-opacity\" value={{$:/config/BitmapEditor/Opacity}}>\n\n<<toolbar-opacity>>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/opacity": {
            "title": "$:/core/ui/EditorToolbar/opacity",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/opacity",
            "caption": "{{$:/language/Buttons/Opacity/Caption}}",
            "description": "{{$:/language/Buttons/Opacity/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/opacity-dropdown",
            "text": "<$text text={{$:/config/BitmapEditor/Opacity}}/>\n"
        },
        "$:/core/ui/EditorToolbar/paint-dropdown": {
            "title": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "''{{$:/language/Buttons/Paint/Hint}}''\n\n<$macrocall $name=\"colour-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/config/BitmapEditor/Colour\"\n\t$value=<<colour-picker-value>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/paint": {
            "title": "$:/core/ui/EditorToolbar/paint",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/paint",
            "caption": "{{$:/language/Buttons/Paint/Caption}}",
            "description": "{{$:/language/Buttons/Paint/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/paint-dropdown",
            "text": "\\define toolbar-paint()\n<div style=\"display: inline-block; vertical-align: middle; background-color: $(colour-picker-value)$; width: 1em; height: 1em; border-radius: 50%;\"/>\n\\end\n<$set name=\"colour-picker-value\" value={{$:/config/BitmapEditor/Colour}}>\n<<toolbar-paint>>\n</$set>\n"
        },
        "$:/core/ui/EditorToolbar/picture-dropdown": {
            "title": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": "\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n''{{$:/language/Buttons/Picture/Hint}}''\n\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext=<<replacement-text>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n\"\"\"/>\n"
        },
        "$:/core/ui/EditorToolbar/picture": {
            "title": "$:/core/ui/EditorToolbar/picture",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/picture",
            "caption": "{{$:/language/Buttons/Picture/Caption}}",
            "description": "{{$:/language/Buttons/Picture/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((picture))",
            "dropdown": "$:/core/ui/EditorToolbar/picture-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/preview-type-dropdown": {
            "title": "$:/core/ui/EditorToolbar/preview-type-dropdown",
            "text": "\\define preview-type-button()\n<$button tag=\"a\">\n\n<$action-setfield $tiddler=\"$:/state/editpreviewtype\" $value=\"$(previewType)$\"/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<previewType>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<previewType>> field=\"title\" mode=\"inline\"/>\n\n</$transclude> \n\n<$reveal tag=\"span\" state=\"$:/state/editpreviewtype\" type=\"match\" text=<<previewType>> default=\"$:/core/ui/EditTemplate/body/preview/output\">\n\n<$entity entity=\"&nbsp;\"/>\n\n<$entity entity=\"&#x2713;\"/>\n\n</$reveal>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]]\" variable=\"previewType\">\n\n<<preview-type-button>>\n\n</$list>\n"
        },
        "$:/core/ui/EditorToolbar/preview-type": {
            "title": "$:/core/ui/EditorToolbar/preview-type",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/chevron-down",
            "caption": "{{$:/language/Buttons/PreviewType/Caption}}",
            "description": "{{$:/language/Buttons/PreviewType/Hint}}",
            "condition": "[all[shadows+tiddlers]tag[$:/tags/EditPreview]!has[draft.of]butfirst[]limit[1]]",
            "button-classes": "tc-text-editor-toolbar-item-adjunct",
            "dropdown": "$:/core/ui/EditorToolbar/preview-type-dropdown"
        },
        "$:/core/ui/EditorToolbar/preview": {
            "title": "$:/core/ui/EditorToolbar/preview",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/preview-open",
            "custom-icon": "yes",
            "caption": "{{$:/language/Buttons/Preview/Caption}}",
            "description": "{{$:/language/Buttons/Preview/Hint}}",
            "condition": "[<targetTiddler>]",
            "button-classes": "tc-text-editor-toolbar-item-start-group",
            "shortcuts": "((preview))",
            "text": "<$reveal state=\"$:/state/showeditpreview\" type=\"match\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-open}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"no\"/>\n</$reveal>\n<$reveal state=\"$:/state/showeditpreview\" type=\"nomatch\" text=\"yes\" tag=\"span\">\n{{$:/core/images/preview-closed}}\n<$action-setfield $tiddler=\"$:/state/showeditpreview\" $value=\"yes\"/>\n</$reveal>\n"
        },
        "$:/core/ui/EditorToolbar/quote": {
            "title": "$:/core/ui/EditorToolbar/quote",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/quote",
            "caption": "{{$:/language/Buttons/Quote/Caption}}",
            "description": "{{$:/language/Buttons/Quote/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((quote))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-lines\"\n\tprefix=\"\n<<<\"\n\tsuffix=\"<<<\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/rotate-left": {
            "title": "$:/core/ui/EditorToolbar/rotate-left",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/rotate-left",
            "caption": "{{$:/language/Buttons/RotateLeft/Caption}}",
            "description": "{{$:/language/Buttons/RotateLeft/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"rotate-left\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/size-dropdown": {
            "title": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": "\\define lingo-base() $:/language/Buttons/Size/\n\n\\define toolbar-button-size-preset(config-title)\n<$set name=\"width\" filter=\"$(sizePair)$ +[first[]]\">\n\n<$set name=\"height\" filter=\"$(sizePair)$ +[last[]]\">\n\n<$button tag=\"a\">\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n\t$value=<<width>>\n/>\n\n<$action-setfield\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n\t$value=<<height>>\n/>\n\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/presets-popup\"\"\"\n/>\n\n<$text text=<<width>>/> &times; <$text text=<<height>>/>\n\n</$button>\n\n</$set>\n\n</$set>\n\\end\n\n\\define toolbar-button-size(config-title)\n''{{$:/language/Buttons/Size/Hint}}''\n\n<<lingo Caption/Width>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-width\"\"\" default=<<tv-bitmap-editor-width>> focus=\"true\" size=\"8\"/> <<lingo Caption/Height>> <$edit-text tag=\"input\" tiddler=\"\"\"$config-title$/new-height\"\"\" default=<<tv-bitmap-editor-height>> size=\"8\"/> <$button popup=\"\"\"$config-title$/presets-popup\"\"\" class=\"tc-btn-invisible tc-popup-keep\" style=\"width: auto; display: inline-block; background-colour: inherit;\" selectedClass=\"tc-selected\">\n{{$:/core/images/down-arrow}}\n</$button>\n\n<$reveal tag=\"span\" state=\"\"\"$config-title$/presets-popup\"\"\" type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down tc-popup-keep\">\n\n<$list filter={{$:/config/BitmapEditor/ImageSizes}} variable=\"sizePair\">\n\n<$macrocall $name=\"toolbar-button-size-preset\" config-title=\"$config-title$\"/>\n\n</$list>\n\n</div>\n\n</$reveal>\n\n<$button>\n<$action-sendmessage\n\t$message=\"tm-edit-bitmap-operation\"\n\t$param=\"resize\"\n\twidth={{$config-title$/new-width}}\n\theight={{$config-title$/new-height}}\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-width\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=\"\"\"$config-title$/new-height\"\"\"\n/>\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n<<lingo Caption/Resize>>\n</$button>\n\\end\n\n<$macrocall $name=\"toolbar-button-size\" config-title=<<qualify \"$:/state/Size/\">>/>\n"
        },
        "$:/core/ui/EditorToolbar/size": {
            "title": "$:/core/ui/EditorToolbar/size",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/size",
            "caption": "{{$:/language/Buttons/Size/Caption}}",
            "description": "{{$:/language/Buttons/Size/Hint}}",
            "condition": "[<targetTiddler>is[image]] -[<targetTiddler>type[image/svg+xml]]",
            "dropdown": "$:/core/ui/EditorToolbar/size-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/stamp-dropdown": {
            "title": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": "\\define toolbar-button-stamp-inner()\n<$button tag=\"a\">\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"replace-selection\"\n\ttext={{$(snippetTitle)$}}\n/>\n\n</$list>\n\n\n<$list filter=\"[[$(snippetTitle)$]addsuffix[/prefix]is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]is[missing]] [[$(snippetTitle)$]addsuffix[/prefix]!is[missing]removesuffix[/prefix]addsuffix[/suffix]!is[missing]]\">\n\n<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix={{{ [[$(snippetTitle)$]addsuffix[/prefix]get[text]] }}}\nsuffix={{{ [[$(snippetTitle)$]addsuffix[/suffix]get[text]] }}}\n/>\n\n</$list>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<$transclude tiddler=<<snippetTitle>> field=\"caption\" mode=\"inline\">\n\n<$view tiddler=<<snippetTitle>> field=\"title\" />\n\n</$transclude>\n\n</$button>\n\\end\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TextEditor/Snippet]!has[draft.of]sort[caption]]\" variable=\"snippetTitle\">\n\n<<toolbar-button-stamp-inner>>\n\n</$list>\n\n----\n\n<$button tag=\"a\">\n\n<$action-sendmessage\n\t$message=\"tm-new-tiddler\"\n\ttags=\"$:/tags/TextEditor/Snippet\"\n\tcaption={{$:/language/Buttons/Stamp/New/Title}}\n\ttext={{$:/language/Buttons/Stamp/New/Text}}\n/>\n\n<$action-deletetiddler\n\t$tiddler=<<dropdown-state>>\n/>\n\n<em>\n\n<$text text={{$:/language/Buttons/Stamp/Caption/New}}/>\n\n</em>\n\n</$button>\n"
        },
        "$:/core/ui/EditorToolbar/stamp": {
            "title": "$:/core/ui/EditorToolbar/stamp",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/stamp",
            "caption": "{{$:/language/Buttons/Stamp/Caption}}",
            "description": "{{$:/language/Buttons/Stamp/Hint}}",
            "condition": "[<targetTiddler>type[]] [<targetTiddler>get[type]prefix[text/]] [<targetTiddler>get[type]match[application/javascript]] [<targetTiddler>get[type]match[application/json]] [<targetTiddler>get[type]match[application/x-tiddler-dictionary]] [<targetTiddler>get[type]match[image/svg+xml]] +[first[]]",
            "shortcuts": "((stamp))",
            "dropdown": "$:/core/ui/EditorToolbar/stamp-dropdown",
            "text": ""
        },
        "$:/core/ui/EditorToolbar/strikethrough": {
            "title": "$:/core/ui/EditorToolbar/strikethrough",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/strikethrough",
            "caption": "{{$:/language/Buttons/Strikethrough/Caption}}",
            "description": "{{$:/language/Buttons/Strikethrough/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((strikethrough))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"~~\"\n\tsuffix=\"~~\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/subscript": {
            "title": "$:/core/ui/EditorToolbar/subscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/subscript",
            "caption": "{{$:/language/Buttons/Subscript/Caption}}",
            "description": "{{$:/language/Buttons/Subscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((subscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\",,\"\n\tsuffix=\",,\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/superscript": {
            "title": "$:/core/ui/EditorToolbar/superscript",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/superscript",
            "caption": "{{$:/language/Buttons/Superscript/Caption}}",
            "description": "{{$:/language/Buttons/Superscript/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((superscript))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"^^\"\n\tsuffix=\"^^\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/transcludify": {
            "title": "$:/core/ui/EditorToolbar/transcludify",
            "caption": "{{$:/language/Buttons/Transcludify/Caption}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Buttons/Transcludify/Hint}}",
            "icon": "$:/core/images/transcludify",
            "list-before": "$:/core/ui/EditorToolbar/mono-block",
            "shortcuts": "((transcludify))",
            "tags": "$:/tags/EditorToolbar",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"{{\"\n\tsuffix=\"}}\"\n/>\n"
        },
        "$:/core/ui/EditorToolbar/underline": {
            "title": "$:/core/ui/EditorToolbar/underline",
            "tags": "$:/tags/EditorToolbar",
            "icon": "$:/core/images/underline",
            "caption": "{{$:/language/Buttons/Underline/Caption}}",
            "description": "{{$:/language/Buttons/Underline/Hint}}",
            "condition": "[<targetTiddler>!has[type]] [<targetTiddler>type[text/vnd.tiddlywiki]]",
            "shortcuts": "((underline))",
            "text": "<$action-sendmessage\n\t$message=\"tm-edit-text-operation\"\n\t$param=\"wrap-selection\"\n\tprefix=\"__\"\n\tsuffix=\"__\"\n/>\n"
        },
        "$:/core/Filters/AllTags": {
            "title": "$:/core/Filters/AllTags",
            "tags": "$:/tags/Filter",
            "filter": "[tags[]!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTags}}",
            "text": ""
        },
        "$:/core/Filters/AllTiddlers": {
            "title": "$:/core/Filters/AllTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]sort[title]]",
            "description": "{{$:/language/Filters/AllTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/Drafts": {
            "title": "$:/core/Filters/Drafts",
            "tags": "$:/tags/Filter",
            "filter": "[has[draft.of]sort[title]]",
            "description": "{{$:/language/Filters/Drafts}}",
            "text": ""
        },
        "$:/core/Filters/Missing": {
            "title": "$:/core/Filters/Missing",
            "tags": "$:/tags/Filter",
            "filter": "[all[missing]sort[title]]",
            "description": "{{$:/language/Filters/Missing}}",
            "text": ""
        },
        "$:/core/Filters/Orphans": {
            "title": "$:/core/Filters/Orphans",
            "tags": "$:/tags/Filter",
            "filter": "[all[orphans]sort[title]]",
            "description": "{{$:/language/Filters/Orphans}}",
            "text": ""
        },
        "$:/core/Filters/OverriddenShadowTiddlers": {
            "title": "$:/core/Filters/OverriddenShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[shadow]]",
            "description": "{{$:/language/Filters/OverriddenShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentSystemTiddlers": {
            "title": "$:/core/Filters/RecentSystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentSystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/RecentTiddlers": {
            "title": "$:/core/Filters/RecentTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[modified]!sort[modified]limit[50]]",
            "description": "{{$:/language/Filters/RecentTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/SessionTiddlers": {
            "title": "$:/core/Filters/SessionTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[haschanged[]]",
            "description": "{{$:/language/Filters/SessionTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/ShadowTiddlers": {
            "title": "$:/core/Filters/ShadowTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows]sort[title]]",
            "description": "{{$:/language/Filters/ShadowTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/StoryList": {
            "title": "$:/core/Filters/StoryList",
            "tags": "$:/tags/Filter",
            "filter": "[list[$:/StoryList]] -$:/AdvancedSearch",
            "description": "{{$:/language/Filters/StoryList}}",
            "text": ""
        },
        "$:/core/Filters/SystemTags": {
            "title": "$:/core/Filters/SystemTags",
            "tags": "$:/tags/Filter",
            "filter": "[all[shadows+tiddlers]tags[]is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTags}}",
            "text": ""
        },
        "$:/core/Filters/SystemTiddlers": {
            "title": "$:/core/Filters/SystemTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[is[system]sort[title]]",
            "description": "{{$:/language/Filters/SystemTiddlers}}",
            "text": ""
        },
        "$:/core/Filters/TypedTiddlers": {
            "title": "$:/core/Filters/TypedTiddlers",
            "tags": "$:/tags/Filter",
            "filter": "[!is[system]has[type]each[type]sort[type]] -[type[text/vnd.tiddlywiki]]",
            "description": "{{$:/language/Filters/TypedTiddlers}}",
            "text": ""
        },
        "$:/core/ui/ImportListing": {
            "title": "$:/core/ui/ImportListing",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define messageField() message-$(payloadTiddler)$\n\n\\define payloadTitleFilter() [<currentTiddler>get<renameField>minlength[1]else<payloadTiddler>]\n\n\\define overWriteWarning()\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\">\n<$text text={{{[subfilter<payloadTitleFilter>!is[tiddler]then[]] ~[<lingo-base>addsuffix[Listing/Rename/OverwriteWarning]get[text]]}}}/>\n</$list>\n\\end\n\n\\define selectionField() selection-$(payloadTiddler)$\n\n\\define renameField() rename-$(payloadTiddler)$\n\n\\define suppressedField() suppressed-$(payloadTiddler)$\n\n\\define newImportTitleTiddler() $:/temp/NewImportTitle-$(payloadTiddler)$\n\n\\define previewPopupState() $(currentTiddler)$!!popup-$(payloadTiddler)$\n\n\\define renameFieldState() $(currentTiddler)$!!state-rename-$(payloadTiddler)$\n\n\\define select-all-actions()\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<$action-setfield $field={{{ [<payloadTiddler>addprefix[selection-]] }}} $value={{$:/state/import/select-all}}/>\n</$list>\n\\end\n\n<table class=\"tc-import-table\">\n<tbody>\n<tr>\n<th align=\"left\">\n<$checkbox tiddler=\"$:/state/import/select-all\" field=\"text\" checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" actions=<<select-all-actions>>>\n<<lingo Listing/Select/Caption>>\n</$checkbox>\n</th>\n<th>\n<<lingo Listing/Title/Caption>>\n</th>\n<th>\n<<lingo Listing/Status/Caption>>\n</th>\n</tr>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" variable=\"payloadTiddler\">\n<tr class={{{[<currentTiddler>has<suppressedField>then[tc-row-disabled]] ~[subfilter<payloadTitleFilter>is[tiddler]then[tc-row-warning]] }}}>\n<td>\n<$checkbox field=<<selectionField>> checked=\"checked\" unchecked=\"unchecked\" default=\"checked\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}/>\n</td>\n<td>\n<$reveal type=\"nomatch\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$reveal type=\"nomatch\" state=<<previewPopupState>> text=\"yes\" tag=\"div\" class=\"tc-flex\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown tc-flex-grow-1 tc-word-break\" set=<<previewPopupState>> setTo=\"yes\" disabled={{{[<currentTiddler>has<suppressedField>then[yes]else[no]]}}}>\n<span class=\"tc-small-gap-right\">{{$:/core/images/right-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n<$list filter=\"[<currentTiddler>!has<suppressedField>]\"><$button class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"yes\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/Tooltip]get[text]]}}}>{{$:/core/images/edit-button}}</$button></$list>\n</$reveal>\n<$reveal type=\"match\" state=<<previewPopupState>> text=\"yes\" tag=\"div\">\n<$button class=\"tc-btn-invisible tc-btn-dropdown\" set=<<previewPopupState>> setTo=\"no\">\n<span class=\"tc-small-gap-right\">{{$:/core/images/down-arrow}}</span><$text text={{{[subfilter<payloadTitleFilter>]}}}/>\n</$button>\n</$reveal>\n</$reveal>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"div\">\n<$text text={{{[<lingo-base>addsuffix[Listing/Rename/Prompt]get[text]]}}}/>\n</$reveal>\n</td>\n<td>\n<$view field=<<messageField>>/>\n<<overWriteWarning>>\n</td>\n</tr>\n<$reveal type=\"match\" state=<<renameFieldState>> text=\"yes\" tag=\"tr\">\n<td colspan=\"3\">\n<div class=\"tc-flex\">\n<$edit-text tiddler=<<newImportTitleTiddler>>  default={{{[subfilter<payloadTitleFilter>]}}} tag=\"input\" class=\"tc-import-rename tc-flex-grow-1\"/><span class=\"tc-small-gap-left\"><$button  class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/CancelRename]get[text]]}}}>{{$:/core/images/close-button}}<$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button><span class=\"tc-small-gap-right\"/></span><$button  class=\"tc-btn-invisible\" set=<<renameFieldState>> setTo=\"no\" tooltip={{{[<lingo-base>addsuffix[Listing/Rename/ConfirmRename]get[text]]}}}>{{$:/core/images/done-button}}<$action-setfield $field=<<renameField>> $value={{{[<newImportTitleTiddler>get[text]minlength[1]else<payloadTiddler>]}}} /><$action-deletetiddler $tiddler=<<newImportTitleTiddler>>/></$button>\n</div>\n</td>\n</$reveal>\n<tr>\n<td colspan=\"3\">\n<$reveal type=\"match\" text=\"yes\" state=<<previewPopupState>> tag=\"div\">\n<$list filter=\"[{$:/state/importpreviewtype}has[text]]\" variable=\"listItem\" emptyMessage={{$:/core/ui/ImportPreviews/Text}}>\n<$transclude tiddler={{$:/state/importpreviewtype}}/>\n</$list>\n</$reveal>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ImportPreviews/Diff": {
            "title": "$:/core/ui/ImportPreviews/Diff",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Diff}}",
            "text": "<$macrocall $name=\"compareTiddlerText\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>>/>\n"
        },
        "$:/core/ui/ImportPreviews/DiffFields": {
            "title": "$:/core/ui/ImportPreviews/DiffFields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/DiffFields}}",
            "text": "<$macrocall $name=\"compareTiddlers\" sourceTiddlerTitle=<<payloadTiddler>> destTiddlerTitle=<<currentTiddler>> destSubTiddlerTitle=<<payloadTiddler>> exclude=\"text\"/>\n"
        },
        "$:/core/ui/ImportPreviews/Fields": {
            "title": "$:/core/ui/ImportPreviews/Fields",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Fields}}",
            "text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[<payloadTiddler>subtiddlerfields<currentTiddler>sort[]] -text\" variable=\"fieldName\">\n<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<fieldName>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<fieldName>> tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>>/>\n</td>\n</tr>\n</$list>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/ImportPreviews/Text": {
            "title": "$:/core/ui/ImportPreviews/Text",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/Text}}",
            "text": "<$transclude tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> mode=\"block\"/>\n"
        },
        "$:/core/ui/ImportPreviews/TextRaw": {
            "title": "$:/core/ui/ImportPreviews/TextRaw",
            "tags": "$:/tags/ImportPreview",
            "caption": "{{$:/language/Import/Listing/Preview/TextRaw}}",
            "text": "<pre><code><$view tiddler=<<currentTiddler>> subtiddler=<<payloadTiddler>> /></code></pre>"
        },
        "$:/core/ui/KeyboardShortcuts/advanced-search": {
            "title": "$:/core/ui/KeyboardShortcuts/advanced-search",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((advanced-search))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\">\n<$action-navigate $to=\"$:/AdvancedSearch\"/>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/>\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/change-sidebar-layout": {
            "title": "$:/core/ui/KeyboardShortcuts/change-sidebar-layout",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((change-sidebar-layout))",
            "text": "<$list filter=\"[{$:/themes/tiddlywiki/vanilla/options/sidebarlayout}match[fixed-fluid]]\" \nemptyMessage=\"\"\"<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fixed-fluid\"/>\"\"\">\n<$action-setfield $tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" text=\"fluid-fixed\"/>\n</$list>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-image": {
            "title": "$:/core/ui/KeyboardShortcuts/new-image",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-image))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-image}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-journal": {
            "title": "$:/core/ui/KeyboardShortcuts/new-journal",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-journal))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-journal}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/new-tiddler": {
            "title": "$:/core/ui/KeyboardShortcuts/new-tiddler",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((new-tiddler))",
            "text": "<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n{{$:/core/ui/Actions/new-tiddler}}\n</$navigator>\n"
        },
        "$:/core/ui/KeyboardShortcuts/save-wiki": {
            "title": "$:/core/ui/KeyboardShortcuts/save-wiki",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((save-wiki))",
            "text": "<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n"
        },
        "$:/core/ui/KeyboardShortcuts/sidebar-search": {
            "title": "$:/core/ui/KeyboardShortcuts/sidebar-search",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((sidebar-search))",
            "text": "<$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n"
        },
        "$:/core/ui/KeyboardShortcuts/switcher": {
            "title": "$:/core/ui/KeyboardShortcuts/switcher",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((layout-switcher))",
            "text": "<$action-sendmessage $message=\"tm-show-switcher\" switch=\"layout\"/>"
        },
        "$:/core/ui/KeyboardShortcuts/toggle-sidebar": {
            "title": "$:/core/ui/KeyboardShortcuts/toggle-sidebar",
            "tags": "$:/tags/KeyboardShortcut",
            "key": "((toggle-sidebar))",
            "text": "<$list filter=\"[[$:/state/sidebar]is[missing]] [{$:/state/sidebar}removeprefix[yes]]\" emptyMessage=\"\"\"\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"yes\"/>\n\"\"\">\n<$action-setfield $tiddler=\"$:/state/sidebar\" text=\"no\"/>\n</$list>\n"
        },
        "$:/snippets/LayoutSwitcher": {
            "title": "$:/snippets/LayoutSwitcher",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ControlPanel/LayoutSwitcher/Caption}}",
            "text": "<$linkcatcher to=\"$:/layout\">\n<div class=\"tc-chooser\">\n<$list filter=\"[all[tiddlers+shadows]tag[$:/tags/Layout]] [[$:/core/ui/PageTemplate]] +[!is[draft]sort[name]]\">\n<$list filter=\"[{$:/layout}!has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/layout}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n\"\"\">\n<$set name=\"cls\" filter=\"[all[current]field:title[$:/core/ui/PageTemplate]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$transclude field=\"name\"/>'' - <$transclude field=\"description\"/></$link></div>\n</$set>\n</$list>\n</$list>\n</div>\n</$linkcatcher>\n"
        },
        "$:/core/ui/ListItemTemplate": {
            "title": "$:/core/ui/ListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link />\n</div>"
        },
        "$:/Manager/ItemMain/Fields": {
            "title": "$:/Manager/ItemMain/Fields",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/Fields}}",
            "text": "<table>\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/Manager/ItemMain/RawText": {
            "title": "$:/Manager/ItemMain/RawText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/RawText}}",
            "text": "<pre><code><$view/></code></pre>\n"
        },
        "$:/Manager/ItemMain/WikifiedText": {
            "title": "$:/Manager/ItemMain/WikifiedText",
            "tags": "$:/tags/Manager/ItemMain",
            "caption": "{{$:/language/Manager/Item/WikifiedText}}",
            "text": "<$transclude mode=\"block\"/>\n"
        },
        "$:/Manager/ItemSidebar/Colour": {
            "title": "$:/Manager/ItemSidebar/Colour",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Colour}}",
            "text": "\\define swatch-styles()\nheight: 1em;\nbackground-color: $(colour)$\n\\end\n\n<$vars colour={{!!color}}>\n<p style=<<swatch-styles>>/>\n</$vars>\n<p>\n<$edit-text field=\"color\" tag=\"input\" type=\"color\"/> / <$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Icon": {
            "title": "$:/Manager/ItemSidebar/Icon",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Icon}}",
            "text": "<p>\n<div class=\"tc-manager-icon-editor\">\n<$button popup=<<qualify \"$:/state/popup/image-picker\">> class=\"tc-btn-invisible\">\n<$transclude tiddler={{!!icon}}>\n{{$:/language/Manager/Item/Icon/None}}\n</$transclude>\n</$button>\n<div class=\"tc-block-dropdown-wrapper\" style=\"position: static;\">\n<$reveal state=<<qualify \"$:/state/popup/image-picker\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-popup\">\n<div class=\"tc-block-dropdown tc-popup-keep\" style=\"width: 80%; left: 10%; right: 10%; padding: 0.5em;\">\n<$macrocall $name=\"image-picker-include-tagged-images\" actions=\"\"\"\n<$action-setfield $field=\"icon\" $value=<<imageTitle>>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/image-picker\">>/>\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n</div>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tags": {
            "title": "$:/Manager/ItemSidebar/Tags",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tags}}",
            "text": "\\whitespace trim\n\\define tag-checkbox-actions()\n<$action-listops\n\t$tiddler=\"$:/config/Manager/RecentTags\"\n\t$subfilter=\"[<tag>] [list[$:/config/Manager/RecentTags]] +[limit[12]]\"\n/>\n\\end\n\n\\define tag-picker-actions()\n<<tag-checkbox-actions>>\n\\end\n\n<p>\n<$list filter=\"[all[current]tags[]] [list[$:/config/Manager/RecentTags]] +[sort[title]] \" variable=\"tag\" storyview=\"pop\">\n<div>\n<$checkbox tiddler=<<currentTiddler>> tag=<<tag>> actions=<<tag-checkbox-actions>>>\n<$macrocall $name=\"tag-pill\" tag=<<tag>>/>\n</$checkbox>\n</div>\n</$list>\n</p>\n<p>\n<$fieldmangler>\n<$macrocall $name=\"tag-picker\" actions=<<tag-picker-actions>>/>\n</$fieldmangler>\n</p>\n"
        },
        "$:/Manager/ItemSidebar/Tools": {
            "title": "$:/Manager/ItemSidebar/Tools",
            "tags": "$:/tags/Manager/ItemSidebar",
            "caption": "{{$:/language/Manager/Item/Tools}}",
            "text": "<p>\n<$button to=<<currentTiddler>>>{{$:/core/images/link}} open</$button>\n</p>\n<p>\n<$button message=\"tm-edit-tiddler\" param=<<currentTiddler>>>{{$:/core/images/edit-button}} edit</$button>\n</p>\n"
        },
        "$:/Manager": {
            "title": "$:/Manager",
            "icon": "$:/core/images/list",
            "color": "#bbb",
            "text": "\\define lingo-base() $:/language/Manager/\n\n\\define list-item-content-item()\n<div class=\"tc-manager-list-item-content-item\">\n\t<$vars state-title=\"\"\"$:/state/popup/manager/item/$(listItem)$\"\"\">\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"hide\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/down-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"nomatch\" text=\"show\" default=\"show\" tag=\"div\">\n\t\t\t<$button set=<<state-title>> setTo=\"show\" class=\"tc-btn-invisible tc-manager-list-item-content-item-heading\">\n\t\t\t\t{{$:/core/images/right-arrow}} <$transclude tiddler=<<listItem>> field=\"caption\"/>\n\t\t\t</$button>\n\t\t</$reveal>\n\t\t<$reveal state=<<state-title>> type=\"match\" text=\"show\" default=\"show\" tag=\"div\" class=\"tc-manager-list-item-content-item-body\">\n\t\t\t<$transclude tiddler=<<listItem>>/>\n\t\t</$reveal>\n\t</$vars>\n</div>\n\\end\n\n<div class=\"tc-manager-wrapper\">\n\t<div class=\"tc-manager-controls\">\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Show/Prompt>> <$select tiddler=\"$:/config/Manager/Show\" default=\"tiddlers\">\n\t\t\t\t<option value=\"tiddlers\"><<lingo Controls/Show/Option/Tiddlers>></option>\n\t\t\t\t<option value=\"tags\"><<lingo Controls/Show/Option/Tags>></option>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Search/Prompt>> <$edit-text tiddler=\"$:/config/Manager/Filter\" tag=\"input\" default=\"\" placeholder={{$:/language/Manager/Controls/Search/Placeholder}}/>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/FilterByTag/Prompt>> <$select tiddler=\"$:/config/Manager/Tag\" default=\"\">\n\t\t\t\t<option value=\"\"><<lingo Controls/FilterByTag/None>></option>\n\t\t\t\t<$list filter=\"[!is{$:/config/Manager/System}tags[]!is[system]sort[title]]\" variable=\"tag\">\n\t\t\t\t\t<option value=<<tag>>><$text text=<<tag>>/></option>\n\t\t\t\t</$list>\n\t\t\t</$select>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<<lingo Controls/Sort/Prompt>> <$select tiddler=\"$:/config/Manager/Sort\" default=\"title\">\n\t\t\t\t<optgroup label=\"Common\">\n\t\t\t\t\t<$list filter=\"title modified modifier created creator created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t\t<optgroup label=\"All\">\n\t\t\t\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}fields[]sort[title]] -title -modified -modifier -created -creator -created\" variable=\"field\">\n\t\t\t\t\t\t<option value=<<field>>><$text text=<<field>>/></option>\n\t\t\t\t\t</$list>\n\t\t\t\t</optgroup>\n\t\t\t</$select>\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/Order\" field=\"text\" checked=\"reverse\" unchecked=\"forward\" default=\"forward\">\n\t\t\t\t<<lingo Controls/Order/Prompt>>\n\t\t\t</$checkbox>\n\t\t</div>\n\t\t<div class=\"tc-manager-control\">\n\t\t\t<$checkbox tiddler=\"$:/config/Manager/System\" field=\"text\" checked=\"\" unchecked=\"system\" default=\"system\">\n\t\t\t\t{{$:/language/SystemTiddlers/Include/Prompt}}\n\t\t\t</$checkbox>\n\t\t</div>\n\t</div>\n\t<div class=\"tc-manager-list\">\n\t\t<$list filter=\"[all{$:/config/Manager/Show}!is{$:/config/Manager/System}search{$:/config/Manager/Filter}tag:strict{$:/config/Manager/Tag}sort{$:/config/Manager/Sort}order{$:/config/Manager/Order}]\">\n\t\t\t<$vars transclusion=<<currentTiddler>>>\n\t\t\t\t<div style=\"tc-manager-list-item\">\n\t\t\t\t\t<$button popup=<<qualify \"$:/state/manager/popup\">> class=\"tc-btn-invisible tc-manager-list-item-heading\" selectedClass=\"tc-manager-list-item-heading-selected\">\n\t\t\t\t\t\t<$text text=<<currentTiddler>>/>\n\t\t\t\t\t</$button>\n\t\t\t\t\t<$reveal state=<<qualify \"$:/state/manager/popup\">> type=\"nomatch\" text=\"\" default=\"\" tag=\"div\" class=\"tc-manager-list-item-content tc-popup-handle\">\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-tiddler\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemMain]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<div class=\"tc-manager-list-item-content-sidebar\">\n\t\t\t\t\t\t\t<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Manager/ItemSidebar]!has[draft.of]]\" variable=\"listItem\">\n\t\t\t\t\t\t\t\t<<list-item-content-item>>\n\t\t\t\t\t\t\t</$list>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t</$reveal>\n\t\t\t\t</div>\n\t\t\t</$vars>\n\t\t</$list>\n\t</div>\n</div>\n"
        },
        "$:/core/ui/MissingTemplate": {
            "title": "$:/core/ui/MissingTemplate",
            "text": "<div class=\"tc-tiddler-missing\">\n<$button popup=<<qualify \"$:/state/popup/missing\">> class=\"tc-btn-invisible tc-missing-tiddler-label\">\n<$view field=\"title\" format=\"text\" />\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/missing\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n<hr>\n<$list filter=\"[all[current]backlinks[]sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n</div>\n"
        },
        "$:/core/ui/MoreSideBar/All": {
            "title": "$:/core/ui/MoreSideBar/All",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/All/Caption}}",
            "text": "<$list filter={{$:/core/Filters/AllTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Drafts": {
            "title": "$:/core/ui/MoreSideBar/Drafts",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Drafts/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Drafts!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Explorer": {
            "title": "$:/core/ui/MoreSideBar/Explorer",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Explorer/Caption}}",
            "text": "<<tree \"$:/\">>\n"
        },
        "$:/core/ui/MoreSideBar/Missing": {
            "title": "$:/core/ui/MoreSideBar/Missing",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Missing/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Missing!!filter}} template=\"$:/core/ui/MissingTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Orphans": {
            "title": "$:/core/ui/MoreSideBar/Orphans",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Orphans/Caption}}",
            "text": "<$list filter={{$:/core/Filters/Orphans!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/ControlPanel/Plugins/Caption}}",
            "text": "\n{{$:/language/ControlPanel/Plugins/Installed/Hint}}\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar/Plugins]!has[draft.of]]\" default=\"$:/core/ui/MoreSideBar/Plugins/Plugins\" explicitState=\"$:/state/tab-1163638994\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Recent": {
            "title": "$:/core/ui/MoreSideBar/Recent",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Shadows": {
            "title": "$:/core/ui/MoreSideBar/Shadows",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Shadows/Caption}}",
            "text": "<$list filter={{$:/core/Filters/ShadowTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/System": {
            "title": "$:/core/ui/MoreSideBar/System",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/System/Caption}}",
            "text": "<$list filter={{$:/core/Filters/SystemTiddlers!!filter}} template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/MoreSideBar/Tags": {
            "title": "$:/core/ui/MoreSideBar/Tags",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Tags/Caption}}",
            "text": "<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n{{$:/core/ui/Buttons/tag-manager}}\n\n</$set>\n\n</$set>\n\n</$set>\n\n<$list filter={{$:/core/Filters/AllTags!!filter}}>\n\n<$transclude tiddler=\"$:/core/ui/TagTemplate\"/>\n\n</$list>\n\n<hr class=\"tc-untagged-separator\">\n\n{{$:/core/ui/UntaggedTemplate}}\n"
        },
        "$:/core/ui/MoreSideBar/Types": {
            "title": "$:/core/ui/MoreSideBar/Types",
            "tags": "$:/tags/MoreSideBar",
            "caption": "{{$:/language/SideBar/Types/Caption}}",
            "text": "<$list filter={{$:/core/Filters/TypedTiddlers!!filter}}>\n<div class=\"tc-menu-list-item\">\n<$view field=\"type\"/>\n<$list filter=\"[type{!!type}!is[system]sort[title]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><$view field=\"title\"/></$link>\n</div>\n</$list>\n</div>\n</$list>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Languages": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Languages",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Languages/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[language]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Plugins": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Plugins",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Plugins/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[plugin]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}>>/>\n"
        },
        "$:/core/ui/MoreSideBar/Plugins/Theme": {
            "title": "$:/core/ui/MoreSideBar/Plugins/Theme",
            "tags": "$:/tags/MoreSideBar/Plugins",
            "caption": "{{$:/language/ControlPanel/Plugins/Themes/Caption}}",
            "text": "<$list filter=\"[!has[draft.of]plugin-type[theme]sort[description]]\" template=\"$:/core/ui/PluginListItemTemplate\" emptyMessage={{$:/language/ControlPanel/Plugins/Empty/Hint}}/>\n"
        },
        "$:/core/ui/Buttons/advanced-search": {
            "title": "$:/core/ui/Buttons/advanced-search",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/advanced-search-button}} {{$:/language/Buttons/AdvancedSearch/Caption}}",
            "description": "{{$:/language/Buttons/AdvancedSearch/Hint}}",
            "text": "\\whitespace trim\n\\define advanced-search-button(class)\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/advanced-search-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/AdvancedSearch/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/AdvancedSearch]]\" emptyMessage=<<advanced-search-button>>>\n<<advanced-search-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/close-all": {
            "title": "$:/core/ui/Buttons/close-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/close-all-button}} {{$:/language/Buttons/CloseAll/Caption}}",
            "description": "{{$:/language/Buttons/CloseAll/Hint}}",
            "text": "<$button message=\"tm-close-all-tiddlers\" tooltip={{$:/language/Buttons/CloseAll/Hint}} aria-label={{$:/language/Buttons/CloseAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/CloseAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/control-panel": {
            "title": "$:/core/ui/Buttons/control-panel",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/options-button}} {{$:/language/Buttons/ControlPanel/Caption}}",
            "description": "{{$:/language/Buttons/ControlPanel/Hint}}",
            "text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/ControlPanel\" tooltip={{$:/language/Buttons/ControlPanel/Hint}} aria-label={{$:/language/Buttons/ControlPanel/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/options-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/ControlPanel/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/ControlPanel]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/encryption": {
            "title": "$:/core/ui/Buttons/encryption",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/locked-padlock}} {{$:/language/Buttons/Encryption/Caption}}",
            "description": "{{$:/language/Buttons/Encryption/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"match\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-clear-password\" tooltip={{$:/language/Buttons/Encryption/ClearPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/ClearPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/locked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/ClearPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=\"$:/isEncrypted\" text=\"yes\">\n<$button message=\"tm-set-password\" tooltip={{$:/language/Buttons/Encryption/SetPassword/Hint}} aria-label={{$:/language/Buttons/Encryption/SetPassword/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/unlocked-padlock}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Encryption/SetPassword/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/export-page": {
            "title": "$:/core/ui/Buttons/export-page",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportPage/Caption}}",
            "description": "{{$:/language/Buttons/ExportPage/Hint}}",
            "text": "<$macrocall $name=\"exportButton\" exportFilter=\"[!is[system]sort[title]]\" lingoBase=\"$:/language/Buttons/ExportPage/\"/>"
        },
        "$:/core/ui/Buttons/fold-all": {
            "title": "$:/core/ui/Buttons/fold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/fold-all-button}} {{$:/language/Buttons/FoldAll/Caption}}",
            "description": "{{$:/language/Buttons/FoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/FoldAll/Hint}} aria-label={{$:/language/Buttons/FoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/full-screen": {
            "title": "$:/core/ui/Buttons/full-screen",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/full-screen-button}} {{$:/language/Buttons/FullScreen/Caption}}",
            "description": "{{$:/language/Buttons/FullScreen/Hint}}",
            "text": "<$button message=\"tm-full-screen\" tooltip={{$:/language/Buttons/FullScreen/Hint}} aria-label={{$:/language/Buttons/FullScreen/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/full-screen-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/FullScreen/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/home": {
            "title": "$:/core/ui/Buttons/home",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/home-button}} {{$:/language/Buttons/Home/Caption}}",
            "description": "{{$:/language/Buttons/Home/Hint}}",
            "text": "<$button message=\"tm-home\" tooltip={{$:/language/Buttons/Home/Hint}} aria-label={{$:/language/Buttons/Home/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/home-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Home/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/import": {
            "title": "$:/core/ui/Buttons/import",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/import-button}} {{$:/language/Buttons/Import/Caption}}",
            "description": "{{$:/language/Buttons/Import/Hint}}",
            "text": "<div class=\"tc-file-input-wrapper\">\n<$button tooltip={{$:/language/Buttons/Import/Hint}} aria-label={{$:/language/Buttons/Import/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/import-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Import/Caption}}/></span>\n</$list>\n</$button>\n<$browse tooltip={{$:/language/Buttons/Import/Hint}}/>\n</div>"
        },
        "$:/core/ui/Buttons/language": {
            "title": "$:/core/ui/Buttons/language",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/globe}} {{$:/language/Buttons/Language/Caption}}",
            "description": "{{$:/language/Buttons/Language/Hint}}",
            "text": "\\whitespace trim\n\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/language\">> tooltip={{$:/language/Buttons/Language/Hint}} aria-label={{$:/language/Buttons/Language/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value={{$:/language}}>\n<$image source=<<flag-title>>/>\n</$set>\n</span>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Language/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/language\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/languageswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/manager": {
            "title": "$:/core/ui/Buttons/manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/list}} {{$:/language/Buttons/Manager/Caption}}",
            "description": "{{$:/language/Buttons/Manager/Hint}}",
            "text": "\\whitespace trim\n\\define manager-button(class)\n<$button to=\"$:/Manager\" tooltip={{$:/language/Buttons/Manager/Hint}} aria-label={{$:/language/Buttons/Manager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/list}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Manager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/Manager]]\" emptyMessage=<<manager-button>>>\n<<manager-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/core/ui/Buttons/more-page-actions",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/More/Caption}}/></span>\n</$list>\n</$button><$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"below\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]] -[[$:/core/ui/Buttons/more-page-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-image": {
            "title": "$:/core/ui/Buttons/new-image",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-image-button}} {{$:/language/Buttons/NewImage/Caption}}",
            "description": "{{$:/language/Buttons/NewImage/Hint}}",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/NewImage/Hint}} aria-label={{$:/language/Buttons/NewImage/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-image}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-image-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewImage/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/new-journal": {
            "title": "$:/core/ui/Buttons/new-journal",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournal/Caption}}",
            "description": "{{$:/language/Buttons/NewJournal/Hint}}",
            "text": "\\whitespace trim\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournal/Hint}} aria-label={{$:/language/Buttons/NewJournal/Caption}} class=<<tv-config-toolbar-class>> actions={{$:/core/ui/Actions/new-journal}}>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewJournal/Caption}}/></span>\n</$list>\n</$button>\n\\end\n<<journalButton>>\n"
        },
        "$:/core/ui/Buttons/new-tiddler": {
            "title": "$:/core/ui/Buttons/new-tiddler",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/new-button}} {{$:/language/Buttons/NewTiddler/Caption}}",
            "description": "{{$:/language/Buttons/NewTiddler/Hint}}",
            "text": "\\whitespace trim\n<$button actions={{$:/core/ui/Actions/new-tiddler}} tooltip={{$:/language/Buttons/NewTiddler/Hint}} aria-label={{$:/language/Buttons/NewTiddler/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/NewTiddler/Caption}}/></span>\n</$list>\n</$button>\n"
        },
        "$:/core/ui/Buttons/palette": {
            "title": "$:/core/ui/Buttons/palette",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/palette}} {{$:/language/Buttons/Palette/Caption}}",
            "description": "{{$:/language/Buttons/Palette/Hint}}",
            "text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/palette\">> tooltip={{$:/language/Buttons/Palette/Hint}} aria-label={{$:/language/Buttons/Palette/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/palette}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Palette/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/palette\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\" style=\"font-size:0.7em;\">\n{{$:/snippets/paletteswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/print": {
            "title": "$:/core/ui/Buttons/print",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/print-button}} {{$:/language/Buttons/Print/Caption}}",
            "description": "{{$:/language/Buttons/Print/Hint}}",
            "text": "<$button message=\"tm-print\" tooltip={{$:/language/Buttons/Print/Hint}} aria-label={{$:/language/Buttons/Print/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/print-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Print/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/refresh": {
            "title": "$:/core/ui/Buttons/refresh",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/refresh-button}} {{$:/language/Buttons/Refresh/Caption}}",
            "description": "{{$:/language/Buttons/Refresh/Hint}}",
            "text": "<$button message=\"tm-browser-refresh\" tooltip={{$:/language/Buttons/Refresh/Hint}} aria-label={{$:/language/Buttons/Refresh/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/refresh-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Refresh/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/save-wiki": {
            "title": "$:/core/ui/Buttons/save-wiki",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/save-button}} {{$:/language/Buttons/SaveWiki/Caption}}",
            "description": "{{$:/language/Buttons/SaveWiki/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/SaveWiki/Hint}} aria-label={{$:/language/Buttons/SaveWiki/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"site-title\" text={{$:/config/SaveWikiButton/Filename}}>\n<$action-sendmessage $message=\"tm-save-wiki\" $param={{$:/config/SaveWikiButton/Template}} filename=<<site-title>>/>\n</$wikify>\n<span class=\"tc-dirty-indicator\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/save-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/SaveWiki/Caption}}/></span>\n</$list>\n</span>\n</$button>"
        },
        "$:/core/ui/Buttons/storyview": {
            "title": "$:/core/ui/Buttons/storyview",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/storyview-classic}} {{$:/language/Buttons/StoryView/Caption}}",
            "description": "{{$:/language/Buttons/StoryView/Hint}}",
            "text": "\\whitespace trim\n\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/storyview\">> tooltip={{$:/language/Buttons/StoryView/Hint}} aria-label={{$:/language/Buttons/StoryView/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n<$set name=\"storyview\" value={{$:/view}}>\n<$transclude tiddler=<<icon>>/>\n</$set>\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/StoryView/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/storyview\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n{{$:/snippets/viewswitcher}}\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/tag-manager": {
            "title": "$:/core/ui/Buttons/tag-manager",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/tag-button}} {{$:/language/Buttons/TagManager/Caption}}",
            "description": "{{$:/language/Buttons/TagManager/Hint}}",
            "text": "\\whitespace trim\n\\define control-panel-button(class)\n<$button to=\"$:/TagManager\" tooltip={{$:/language/Buttons/TagManager/Hint}} aria-label={{$:/language/Buttons/TagManager/Caption}} class=\"\"\"$(tv-config-toolbar-class)$ $class$\"\"\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/tag-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TagManager/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n<$list filter=\"[list[$:/StoryList]] +[field:title[$:/TagManager]]\" emptyMessage=<<control-panel-button>>>\n<<control-panel-button \"tc-selected\">>\n</$list>\n"
        },
        "$:/core/ui/Buttons/theme": {
            "title": "$:/core/ui/Buttons/theme",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/theme-button}} {{$:/language/Buttons/Theme/Caption}}",
            "description": "{{$:/language/Buttons/Theme/Hint}}",
            "text": "\\whitespace trim\n<span class=\"tc-popup-keep\">\n<$button popup=<<qualify \"$:/state/popup/theme\">> tooltip={{$:/language/Buttons/Theme/Hint}} aria-label={{$:/language/Buttons/Theme/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/theme-button}}\n</$list>\n<$text text=\" \"/>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Theme/Caption}}/></span>\n</$list>\n</$button>\n</span>\n<$reveal state=<<qualify \"$:/state/popup/theme\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$linkcatcher to=\"$:/theme\">\n{{$:/snippets/themeswitcher}}\n</$linkcatcher>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/timestamp": {
            "title": "$:/core/ui/Buttons/timestamp",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/timestamp-on}} {{$:/language/Buttons/Timestamp/Caption}}",
            "description": "{{$:/language/Buttons/Timestamp/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/On/Hint}} aria-label={{$:/language/Buttons/Timestamp/On/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"yes\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-on}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/On/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" state=\"$:/config/TimestampDisable\" text=\"yes\">\n<$button tooltip={{$:/language/Buttons/Timestamp/Off/Hint}} aria-label={{$:/language/Buttons/Timestamp/Off/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-setfield $tiddler=\"$:/config/TimestampDisable\" $value=\"no\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/timestamp-off}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/Timestamp/Off/Caption}}/></span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/unfold-all": {
            "title": "$:/core/ui/Buttons/unfold-all",
            "tags": "$:/tags/PageControls",
            "caption": "{{$:/core/images/unfold-all-button}} {{$:/language/Buttons/UnfoldAll/Caption}}",
            "description": "{{$:/language/Buttons/UnfoldAll/Hint}}",
            "text": "<$button tooltip={{$:/language/Buttons/UnfoldAll/Hint}} aria-label={{$:/language/Buttons/UnfoldAll/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-unfold-all-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-all-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/UnfoldAll/Caption}}/></span>\n</$list>\n</$button>"
        },
        "$:/core/ui/PageTemplate/pagecontrols": {
            "title": "$:/core/ui/PageTemplate/pagecontrols",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-page-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n<$set name=\"hidden\" value=<<config-title>>>\n<$list filter=\"[<hidden>!text[hide]]\" storyview=\"pop\" variable=\"ignore\">\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n</$set>\n</$list>\n</$set>\n</$list>\n</div>\n"
        },
        "$:/core/ui/PageStylesheet": {
            "title": "$:/core/ui/PageStylesheet",
            "text": "\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$set name=\"currentTiddler\" value={{$:/language}}>\n\n<$set name=\"languageTitle\" value={{!!name}}>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/PageTemplate/alerts": {
            "title": "$:/core/ui/PageTemplate/alerts",
            "tags": "$:/tags/PageTemplate",
            "text": "<div class=\"tc-alerts\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Alert]!has[draft.of]]\" template=\"$:/core/ui/AlertTemplate\" storyview=\"pop\"/>\n\n</div>\n"
        },
        "$:/core/ui/PageTemplate/drafts": {
            "title": "$:/core/ui/PageTemplate/drafts",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n<$reveal state=\"$:/status/IsReadOnly\" type=\"nomatch\" text=\"yes\" tag=\"div\" class=\"tc-drafts-list\">\n<$list filter=\"[has[draft.of]!sort[modified]] -[list[$:/StoryList]]\">\n<$link>\n{{$:/core/images/edit-button}} <$text text=<<currentTiddler>>/>\n</$link>\n</$list>\n</$reveal>\n"
        },
        "$:/core/ui/PageTemplate/pluginreloadwarning": {
            "title": "$:/core/ui/PageTemplate/pluginreloadwarning",
            "tags": "$:/tags/PageTemplate",
            "text": "\\define lingo-base() $:/language/\n\n<$list filter=\"[{$:/status/RequireReloadDueToPluginChange}match[yes]]\">\n\n<$reveal type=\"nomatch\" state=\"$:/temp/HidePluginWarning\" text=\"yes\">\n\n<div class=\"tc-plugin-reload-warning\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<<lingo PluginReloadWarning>> <$button set=\"$:/temp/HidePluginWarning\" setTo=\"yes\" class=\"tc-btn-invisible\">{{$:/core/images/close-button}}</$button>\n\n</$set>\n\n</div>\n\n</$reveal>\n\n</$list>\n"
        },
        "$:/core/ui/PageTemplate/sidebar": {
            "title": "$:/core/ui/PageTemplate/sidebar",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/SideBarSegments/Visibility/$(listItem)$\n\\end\n\n<$scrollable fallthrough=\"no\" class=\"tc-sidebar-scrollable\">\n\n<div class=\"tc-sidebar-header\">\n\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SideBarSegment]!has[draft.of]]\" variable=\"listItem\">\n\n<$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"  tag=\"div\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n\n</$reveal>\n\n</$list>\n\n</$reveal>\n\n</div>\n\n</$scrollable>\n"
        },
        "$:/core/ui/PageTemplate/story": {
            "title": "$:/core/ui/PageTemplate/story",
            "tags": "$:/tags/PageTemplate",
            "text": "\\whitespace trim\n<section class=\"tc-story-river\">\n\n<section class=\"story-backdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/AboveStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n<$list filter=\"[list[$:/StoryList]]\" history=\"$:/HistoryList\" template={{$:/config/ui/ViewTemplate}} editTemplate={{$:/config/ui/EditTemplate}} storyview={{$:/view}} emptyMessage={{$:/config/EmptyStoryMessage}}/>\n\n<section class=\"story-frontdrop\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/BelowStory]!has[draft.of]]\">\n\n<$transclude/>\n\n</$list>\n\n</section>\n\n</section>\n"
        },
        "$:/core/ui/PageTemplate/topleftbar": {
            "title": "$:/core/ui/PageTemplate/topleftbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-left\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopLeftBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate/toprightbar": {
            "title": "$:/core/ui/PageTemplate/toprightbar",
            "tags": "$:/tags/PageTemplate",
            "text": "<span class=\"tc-topbar tc-topbar-right\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TopRightBar]!has[draft.of]]\" variable=\"listItem\" storyview=\"pop\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$list>\n\n</span>\n"
        },
        "$:/core/ui/PageTemplate": {
            "title": "$:/core/ui/PageTemplate",
            "name": "{{$:/language/PageTemplate/Name}}",
            "description": "{{$:/language/PageTemplate/Description}}",
            "text": "\\whitespace trim\n\\define containerClasses()\ntc-page-container tc-page-view-$(storyviewTitle)$ tc-language-$(languageTitle)$\n\\end\n\\import [[$:/core/ui/PageMacros]] [all[shadows+tiddlers]tag[$:/tags/Macro]!has[draft.of]]\n\n<$vars\n\ttv-config-toolbar-icons={{$:/config/Toolbar/Icons}}\n\ttv-config-toolbar-text={{$:/config/Toolbar/Text}}\n\ttv-config-toolbar-class={{$:/config/Toolbar/ButtonClass}}\n\ttv-enable-drag-and-drop={{$:/config/DragAndDrop/Enable}}\n\ttv-show-missing-links={{$:/config/MissingLinks}}\n\tstoryviewTitle={{$:/view}}\n\tlanguageTitle={{{ [{$:/language}get[name]] }}}>\n\n<div class=<<containerClasses>>>\n\n<$navigator story=\"$:/StoryList\" history=\"$:/HistoryList\" openLinkFromInsideRiver={{$:/config/Navigation/openLinkFromInsideRiver}} openLinkFromOutsideRiver={{$:/config/Navigation/openLinkFromOutsideRiver}} relinkOnRename={{$:/config/RelinkOnRename}}>\n\n<$dropzone enable=<<tv-enable-drag-and-drop>>>\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageTemplate]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>>/>\n\n</$list>\n\n</$dropzone>\n\n</$navigator>\n\n</div>\n\n</$vars>\n"
        },
        "$:/PaletteManager": {
            "title": "$:/PaletteManager",
            "text": "\\define lingo-base() $:/language/ControlPanel/Palette/Editor/\n\\define describePaletteColour(colour)\n<$transclude tiddler=\"$:/language/Docs/PaletteColours/$colour$\"><$text text=\"$colour$\"/></$transclude>\n\\end\n\\define edit-colour-placeholder()\n edit $(colourName)$\n\\end\n\\define colour-tooltip(showhide) $showhide$ editor for $(newColourName)$ \n\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define delete-colour-index-actions() <$action-setfield $index=<<colourName>>/>\n\\define palette-manager-colour-row-segment()\n\\whitespace trim\n<$edit-text index=<<colourName>> tag=\"input\" placeholder=<<edit-colour-placeholder>> default=\"\"/>\n<br>\n<$edit-text index=<<colourName>> type=\"color\" tag=\"input\" class=\"tc-palette-manager-colour-input\"/>\n<$list filter=\"[<currentTiddler>getindex<colourName>removeprefix[<<]removesuffix[>>]] [<currentTiddler>getindex<colourName>removeprefix[<$]removesuffix[/>]]\" variable=\"ignore\">\n<$set name=\"state\" value={{{ [[$:/state/palettemanager/]addsuffix<currentTiddler>addsuffix[/]addsuffix<colourName>] }}}>\n<$wikify name=\"newColourName\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall={{{ [<currentTiddler>getindex<colourName>] }}}/>\"\"\">\n<$reveal state=<<state>> type=\"nomatch\" text=\"show\">\n<$button tooltip=<<colour-tooltip show>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" set=<<state>> setTo=\"show\">{{$:/core/images/down-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$button tooltip=<<colour-tooltip hide>> aria-label=<<colour-tooltip show>> class=\"tc-btn-invisible\" actions=\"\"\"<$action-deletetiddler $tiddler=<<state>>/>\"\"\">{{$:/core/images/up-arrow}}<$text text=<<newColourName>> class=\"tc-small-gap-left\"/></$button><br>\n</$reveal>\n<$reveal state=<<state>> type=\"match\" text=\"show\">\n<$set name=\"colourName\" value=<<newColourName>>>\n<br>\n<<palette-manager-colour-row-segment>>\n<br><br>\n</$set>\n</$reveal>\n</$wikify>\n</$set>\n</$list>\n\\end\n\\define palette-manager-colour-row()\n\\whitespace trim\n<tr>\n<td>\n<span style=\"float:right;\">\n<$button tooltip={{$:/language/ControlPanel/Palette/Editor/Delete/Hint}} aria-label=<<lingo Delete/Hint>> class=\"tc-btn-invisible\" actions=<<delete-colour-index-actions>>>\n{{$:/core/images/delete-button}}</$button>\n</span>\n''<$macrocall $name=\"describePaletteColour\" colour=<<colourName>>/>''<br/>\n<$macrocall $name=\"colourName\" $output=\"text/plain\"/>\n</td>\n<td>\n<<palette-manager-colour-row-segment>>\n</td>\n</tr>\n\\end\n\\define palette-manager-table()\n\\whitespace trim\n<table>\n<tbody>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]indexes[]]\" variable=\"colourName\">\n<$list filter=\"[<currentTiddler>indexes[]removeprefix<colourName>suffix[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$list filter=\"[{$:/state/palettemanager/showexternal}removeprefix[yes]suffix[]]\" variable=\"ignore\">\n<<palette-manager-colour-row>>\n</$list>\n\"\"\">\n<<palette-manager-colour-row>>\n</$list>\n</$list>\n</tbody>\n</table>\n\\end\n<$set name=\"currentTiddler\" value={{$:/palette}}>\n\n<<lingo Prompt>> <$link to={{$:/palette}}><$macrocall $name=\"currentTiddler\" $output=\"text/plain\"/></$link>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\" variable=\"listItem\">\n<<lingo Prompt/Modified>>\n<$button message=\"tm-delete-tiddler\" param={{$:/palette}}><<lingo Reset/Caption>></$button>\n</$list>\n\n<$list filter=\"[all[current]is[shadow]!is[tiddler]]\" variable=\"listItem\">\n<<lingo Clone/Prompt>>\n</$list>\n\n<$button message=\"tm-new-tiddler\" param={{$:/palette}}><<lingo Clone/Caption>></$button>\n\n<$checkbox tiddler=\"$:/state/palettemanager/showexternal\" field=\"text\" checked=\"yes\" unchecked=\"no\"><span class=\"tc-small-gap-left\"><<lingo Names/External/Show>></span></$checkbox>\n\n<<palette-manager-table>>\n"
        },
        "$:/core/ui/PluginInfo": {
            "title": "$:/core/ui/PluginInfo",
            "text": "\\define localised-info-tiddler-title()\n$(currentTiddler)$/$(languageTitle)$/$(currentTab)$\n\\end\n\\define info-tiddler-title()\n$(currentTiddler)$/$(currentTab)$\n\\end\n\\define default-tiddler-title()\n$:/core/ui/PluginInfo/Default/$(currentTab)$\n\\end\n<$transclude tiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<localised-info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<currentTiddler>> subtiddler=<<info-tiddler-title>> mode=\"block\">\n<$transclude tiddler=<<default-tiddler-title>> mode=\"block\">\n{{$:/language/ControlPanel/Plugin/NoInfoFound/Hint}}\n</$transclude>\n</$transclude>\n</$transclude>\n</$transclude>\n"
        },
        "$:/core/ui/PluginInfo/Default/contents": {
            "title": "$:/core/ui/PluginInfo/Default/contents",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link />\n</li>\n</$list>\n</ul>\n"
        },
        "$:/core/ui/PluginListItemTemplate": {
            "title": "$:/core/ui/PluginListItemTemplate",
            "text": "<div class=\"tc-menu-list-item\">\n<$link to={{!!title}}><$view field=\"description\"><$view field=\"title\"/></$view></$link>\n</div>"
        },
        "$:/core/ui/RootTemplate": {
            "title": "$:/core/ui/RootTemplate",
            "text": "<$transclude tiddler={{{ [{$:/layout}has[text]] ~[[$:/core/ui/PageTemplate]] }}} mode=\"inline\"/>\n\n"
        },
        "$:/core/ui/SearchResults": {
            "title": "$:/core/ui/SearchResults",
            "text": "<div class=\"tc-search-results\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]butfirst[]limit[1]]\" emptyMessage=\"\"\"\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\">\n<$transclude mode=\"block\"/>\n</$list>\n\"\"\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SearchResults]!has[draft.of]]\" default={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<currentTab>>/>\"\"\" explicitState=\"$:/state/tab/search-results/sidebar\"/>\n\n</$list>\n\n</div>\n"
        },
        "$:/core/ui/SideBar/More": {
            "title": "$:/core/ui/SideBar/More",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/More/Caption}}",
            "text": "<div class=\"tc-more-sidebar\">\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/MoreSideBar]!has[draft.of]]\" default={{$:/config/DefaultMoreSidebarTab}} state=\"$:/state/tab/moresidebar\" class=\"tc-vertical tc-sidebar-tabs-more\" explicitState=\"$:/state/tab/moresidebar-1850697562\"/>\n</div>\n"
        },
        "$:/core/ui/SideBar/Open": {
            "title": "$:/core/ui/SideBar/Open",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Open/Caption}}",
            "text": "\\whitespace trim\n\\define lingo-base() $:/language/CloseAll/\n\n\\define drop-actions()\n<$action-listops $tiddler=<<tv-story-list>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define placeholder()\n<div class=\"tc-droppable-placeholder\"/>\n\\end\n\n\\define droppable-item(button)\n\\whitespace trim\n<$droppable actions=<<drop-actions>> enable=<<tv-allow-drag-and-drop>>>\n<<placeholder>>\n<div>\n$button$\n</div>\n</$droppable>\n\\end\n\n<div class=\"tc-sidebar-tab-open\">\n<$list filter=\"[list<tv-story-list>]\" history=<<tv-history-list>> storyview=\"pop\">\n<div class=\"tc-sidebar-tab-open-item\">\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=\"tc-btn-invisible tc-btn-mini tc-small-gap-right\">{{$:/core/images/close-button}}</$button><$link to={{!!title}}><$view field=\"title\"/></$link>\"\"\"/>\n</div>\n</$list>\n<$tiddler tiddler=\"\">\n<div>\n<$macrocall $name=\"droppable-item\" button=\"\"\"<$button message=\"tm-close-all-tiddlers\" class=\"tc-btn-invisible tc-btn-mini\"><<lingo Button>></$button>\"\"\"/>\n</div>\n</$tiddler>\n</div>\n"
        },
        "$:/core/ui/SideBar/Recent": {
            "title": "$:/core/ui/SideBar/Recent",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Recent/Caption}}",
            "text": "<$macrocall $name=\"timeline\" format={{$:/language/RecentChanges/DateFormat}}/>\n"
        },
        "$:/core/ui/SideBar/Tools": {
            "title": "$:/core/ui/SideBar/Tools",
            "tags": "$:/tags/SideBar",
            "caption": "{{$:/language/SideBar/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/ControlPanel/\n\\define config-title()\n$:/config/PageControlButtons/Visibility/$(listItem)$\n\\end\n\n<<lingo Basics/Version/Prompt>> <<version>>\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\" variable=\"listItem\">\n\n<div style=\"position:relative;\" class={{{ [<listItem>encodeuricomponent[]addprefix[tc-btn-]] }}}>\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</div>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/SideBarLists": {
            "title": "$:/core/ui/SideBarLists",
            "text": "<$transclude tiddler=\"$:/core/ui/SideBarSegments/search\"/>\n\n<$transclude tiddler=\"$:/core/ui/SideBarSegments/tabs\"/>\n\n"
        },
        "$:/core/ui/SideBarSegments/page-controls": {
            "title": "$:/core/ui/SideBarSegments/page-controls",
            "tags": "$:/tags/SideBarSegment",
            "text": "{{||$:/core/ui/PageTemplate/pagecontrols}}\n"
        },
        "$:/core/ui/SideBarSegments/search": {
            "title": "$:/core/ui/SideBarSegments/search",
            "tags": "$:/tags/SideBarSegment",
            "text": "\\whitespace trim\n\n\\define count-popup-button()\n\\whitespace trim\n<$button popup=<<qualify \"$:/state/popup/search-dropdown\">> class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n<$list filter=\"[{$(searchTiddler)$}minlength{$:/config/Search/MinLength}limit[1]]\" variable=\"listItem\">\n<$vars userInput={{{ [<searchTiddler>get[text]] }}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}} replaceRegexp=\"limit\\[\\d+\\]\">\n<$vars primaryListFilter={{{ [<configTiddler>get[first-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}} secondaryListFilter={{{ [<configTiddler>get[second-search-filter]search-replace:g:regexp<replaceRegexp>,[]] }}}>\n<$set name=\"resultCount\" value=\"\"\"<$count filter=\"[subfilter<primaryListFilter>] [subfilter<secondaryListFilter>]\"/>\"\"\">\n{{$:/language/Search/Matches}}\n</$set>\n</$vars>\n</$vars>\n</$list>\n</$button>\n\\end\n\n\\define search-results-list()\n\\whitespace trim\n<$vars userInput={{$(searchTiddler)$}} configTiddler={{{ [[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Search/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n\n<$tiddler tiddler=<<configTiddler>>>\n\n{{$:/core/ui/SearchResults}}\n\n</$tiddler>\n\n</$list>\n</$vars>\n\\end\n\n\\define cancel-search-actions() <$list filter=\"[<searchTiddler>get[text]!match{$:/temp/search}]\" emptyMessage=\"\"\"<$action-deletetiddler $filter=\"[[$:/temp/search]] [<searchTiddler>] [<searchListState>]\"/>\"\"\"><$action-setfield $tiddler=\"$:/temp/search\" text={{{ [<searchTiddler>get[text]] }}}/><$action-setfield $tiddler=\"$:/temp/search/refresh\" text=\"yes\"/></$list>\n\n\\define input-accept-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\"\"\"><$action-navigate $to={{{ [<__tiddler__>get[text]] }}}/></$list>\n\n\\define input-accept-variant-actions() <$list filter=\"[{$:/config/Search/NavigateOnEnter/enable}match[yes]]\" emptyMessage=\"\"\"<$list filter=\"[<__tiddler__>get[text]!is[missing]] ~[<__tiddler__>get[text]is[shadow]]\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\"\"\"><$list filter=\"[<__tiddler__>get[text]minlength[1]]\"><$action-sendmessage $message=\"tm-edit-tiddler\" $param={{{  [<__tiddler__>get[text]] }}}/></$list></$list>\n\n\\define set-next-input-tab(beforeafter:\"after\") <$macrocall $name=\"change-input-tab\" stateTitle=\"$:/state/tab/search-results/sidebar\" tag=\"$:/tags/SearchResults\" beforeafter=\"$beforeafter$\" defaultState={{$:/config/SearchResults/Default}} actions=\"\"\"<$action-setfield $tiddler=\"$:/state/search/currentTab\" text=<<nextTab>>/>\"\"\"/>\n\n\\define advanced-search-actions() <$action-setfield $tiddler=\"$:/temp/advancedsearch\" text={{$:/temp/search/input}}/><$action-setfield $tiddler=\"$:/temp/advancedsearch/input\" text={{$:/temp/search/input}}/><<delete-state-tiddlers>><$action-navigate $to=\"$:/AdvancedSearch\"/><$action-setfield $tiddler=\"$:/temp/advancedsearch/refresh\" text=\"yes\"/><$action-sendmessage $message=\"tm-focus-selector\" $param=\"\"\"[data-tiddler-title=\"$:/AdvancedSearch\"] .tc-search input\"\"\" preventScroll=\"true\"/><$action-deletetiddler $filter=\"$:/temp/search $:/temp/search/input $:/temp/search/refresh [<searchListState>]\"/>\n\n<div class=\"tc-sidebar-lists tc-sidebar-search\">\n\n<$vars editTiddler=\"$:/temp/search\" searchTiddler=\"$:/temp/search/input\" searchListState=<<qualify \"$:/state/search-list/selected-item\">>>\n<div class=\"tc-search\">\n<$keyboard key=\"((input-tab-right))\" actions=<<set-next-input-tab>>>\n<$keyboard key=\"((input-tab-left))\" actions=<<set-next-input-tab \"before\">>>\n<$keyboard key=\"((advanced-search-sidebar))\" actions=<<advanced-search-actions>>>\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<editTiddler>> storeTitle=<<searchTiddler>> \n\t\tselectionStateTitle=<<searchListState>> refreshTitle=\"$:/temp/search/refresh\" type=\"search\" \n\t\ttag=\"input\" focus={{$:/config/Search/AutoFocus}} focusPopup=<<qualify \"$:/state/popup/search-dropdown\">> \n\t\tclass=\"tc-popup-handle\" filterMinLength={{$:/config/Search/MinLength}} inputCancelActions=<<cancel-search-actions>> \n\t\tinputAcceptActions=<<input-accept-actions>> inputAcceptVariantActions=<<input-accept-variant-actions>> cancelPopups=\"yes\" \n\t\tconfigTiddlerFilter=\"[[$:/state/search/currentTab]!is[missing]get[text]] ~[{$:/config/SearchResults/Default}]\"/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n<$reveal state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n<$button tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n<<advanced-search-actions>>\n{{$:/core/images/advanced-search-button}}\n</$button>\n<$button class=\"tc-btn-invisible\">\n<<cancel-search-actions>><$action-sendmessage $message=\"tm-focus-selector\" $param=\".tc-search input\"/>\n{{$:/core/images/close-button}}\n</$button>\n<<count-popup-button>>\n</$reveal>\n<$reveal state=<<searchTiddler>> type=\"match\" text=\"\">\n<$button to=\"$:/AdvancedSearch\" tooltip={{$:/language/Buttons/AdvancedSearch/Hint}} aria-label={{$:/language/Buttons/AdvancedSearch/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/advanced-search-button}}\n</$button>\n</$reveal>\n</div>\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown-wrapper\" state=<<searchTiddler>> type=\"nomatch\" text=\"\">\n\n<$reveal tag=\"div\" class=\"tc-block-dropdown tc-search-drop-down tc-popup-handle\" state=<<qualify \"$:/state/popup/search-dropdown\">> type=\"nomatch\" text=\"\" default=\"\">\n\n<<search-results-list>>\n\n</$reveal>\n\n</$reveal>\n\n</$vars>\n\n</div>\n"
        },
        "$:/core/ui/SideBarSegments/site-subtitle": {
            "title": "$:/core/ui/SideBarSegments/site-subtitle",
            "tags": "$:/tags/SideBarSegment",
            "text": "<div class=\"tc-site-subtitle\">\n\n<$transclude tiddler=\"$:/SiteSubtitle\" mode=\"inline\"/>\n\n</div>\n"
        },
        "$:/core/ui/SideBarSegments/site-title": {
            "title": "$:/core/ui/SideBarSegments/site-title",
            "tags": "$:/tags/SideBarSegment",
            "text": "<h1 class=\"tc-site-title\">\n\n<$transclude tiddler=\"$:/SiteTitle\" mode=\"inline\"/>\n\n</h1>\n"
        },
        "$:/core/ui/SideBarSegments/tabs": {
            "title": "$:/core/ui/SideBarSegments/tabs",
            "tags": "$:/tags/SideBarSegment",
            "text": "<div class=\"tc-sidebar-lists tc-sidebar-tabs\">\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/SideBar]!has[draft.of]]\" default={{$:/config/DefaultSidebarTab}} state=\"$:/state/tab/sidebar\" class=\"tc-sidebar-tabs-main\" explicitState=\"$:/state/tab/sidebar--595412856\"/>\n\n</div>\n"
        },
        "$:/core/ui/SwitcherModal": {
            "title": "$:/core/ui/SwitcherModal",
            "subtitle": "<$text text={{{[<switch>lookup[$:/language/Switcher/Subtitle/]]}}}/>",
            "class": "tc-modal-centered",
            "text": "<$tiddler tiddler={{{[<switch>lookup[$:/config/SwitcherTargets/]]}}}>\n\n\n<$transclude/>\n\n\n</$tiddler>"
        },
        "$:/TagManager": {
            "title": "$:/TagManager",
            "icon": "$:/core/images/tag-button",
            "color": "#bbb",
            "text": "\\define lingo-base() $:/language/TagManager/\n\\define iconEditorTab(type)\n\\whitespace trim\n<$link to=\"\"><<lingo Icons/None>></$link>\n<$list filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[sort[title]] +[$type$is[system]]\">\n<$link to={{!!title}}>\n<$transclude/> <$view field=\"title\"/>\n</$link>\n</$list>\n\\end\n\\define iconEditor(title)\n\\whitespace trim\n<div class=\"tc-drop-down-wrapper\">\n<$button popupTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal stateTitle={{{ [[$:/state/popup/icon/]addsuffix<__title__>] }}} type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$linkcatcher actions=\"\"\"<$action-setfield $tiddler=<<__title__>> icon=<<navigateTo>>/>\"\"\">\n<<iconEditorTab type:\"!\">>\n<hr/>\n<<iconEditorTab type:\"\">>\n</$linkcatcher>\n</div>\n</$reveal>\n</div>\n\\end\n\\define toggleButton(state)\n\\whitespace trim\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"closed\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"open\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n<$reveal stateTitle=<<__state__>> type=\"match\" text=\"open\" default=\"closed\">\n<$button setTitle=<<__state__>> setTo=\"closed\" class=\"tc-btn-invisible tc-btn-dropdown\" selectedClass=\"tc-selected\">\n{{$:/core/images/info-button}}\n</$button>\n</$reveal>\n\\end\n\\whitespace trim\n<table class=\"tc-tag-manager-table\">\n<tbody>\n<tr>\n<th><<lingo Colour/Heading>></th>\n<th class=\"tc-tag-manager-tag\"><<lingo Tag/Heading>></th>\n<th><<lingo Count/Heading>></th>\n<th><<lingo Icon/Heading>></th>\n<th><<lingo Info/Heading>></th>\n</tr>\n<$list filter=\"[tags[]!is[system]sort[title]]\">\n<tr>\n<td><$edit-text field=\"color\" tag=\"input\" type=\"color\"/></td>\n<td>{{||$:/core/ui/TagTemplate}}</td>\n<td><$count filter=\"[all[current]tagging[]]\"/></td>\n<td>\n<$macrocall $name=\"iconEditor\" title={{!!title}}/>\n</td>\n<td>\n<$macrocall $name=\"toggleButton\" state={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} /> \n</td>\n</tr>\n<tr>\n<td></td>\n<td colspan=\"4\">\n<$reveal stateTitle={{{ [[$:/state/tag-manager/]addsuffix<currentTiddler>] }}} type=\"match\" text=\"open\" default=\"\">\n<table>\n<tbody>\n<tr><td><<lingo Colour/Heading>></td><td><$edit-text field=\"color\" tag=\"input\" type=\"text\" size=\"9\"/></td></tr>\n<tr><td><<lingo Icon/Heading>></td><td><$edit-text field=\"icon\" tag=\"input\" size=\"45\"/></td></tr>\n</tbody>\n</table>\n</$reveal>\n</td>\n</tr>\n</$list>\n<tr>\n<td></td>\n<td style=\"position:relative;\">\n{{$:/core/ui/UntaggedTemplate}}\n</td>\n<td>\n<small class=\"tc-menu-list-count\"><$count filter=\"[untagged[]!is[system]] -[tags[]]\"/></small>\n</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TagPickerTagTemplate": {
            "title": "$:/core/ui/TagPickerTagTemplate",
            "text": "\\whitespace trim\n<$button class=<<button-classes>> tag=\"a\" tooltip={{$:/language/EditTemplate/Tags/Add/Button/Hint}}>\n<$list filter=\"[<saveTiddler>minlength[1]]\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<tagField>> $subfilter=\"[<tag>]\"/>\n</$list>\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>> preventScroll=\"true\"/>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$list filter=\"[<refreshTitle>minlength[1]]\">\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n<<actions>>\n<$set name=\"backgroundColor\" value={{!!color}}>\n<$wikify name=\"foregroundColor\" text=\"\"\"<$macrocall $name=\"contrastcolour\" target={{!!color}} fallbackTarget=<<fallbackTarget>> colourA=<<colourA>> colourB=<<colourB>>/>\"\"\">\n<span class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n<$transclude tiddler={{!!icon}}/><$view field=\"title\" format=\"text\"/>\n</span>\n</$wikify>\n</$set>\n</$button>\n"
        },
        "$:/core/ui/TagTemplate": {
            "title": "$:/core/ui/TagTemplate",
            "text": "\\whitespace trim\n<span class=\"tc-tag-list-item\">\n<$set name=\"transclusion\" value=<<currentTiddler>>>\n<$macrocall $name=\"tag-pill-body\" tag=<<currentTiddler>> icon={{!!icon}} colour={{!!color}} palette={{$:/palette}} element-tag=\"\"\"$button\"\"\" element-attributes=\"\"\"popup=<<qualify \"$:/state/popup/tag\">> dragFilter='[all[current]tagging[]]' tag='span'\"\"\"/>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\" animate=\"yes\" class=\"tc-drop-down\">\n<$set name=\"tv-show-missing-links\" value=\"yes\">\n<$transclude tiddler=\"$:/core/ui/ListItemTemplate\"/>\n</$set>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TagDropdown]!has[draft.of]]\" variable=\"listItem\"> \n<$transclude tiddler=<<listItem>>/> \n</$list>\n<hr>\n<$macrocall $name=\"list-tagged-draggable\" tag=<<currentTiddler>>/>\n</$reveal>\n</$set>\n</span>\n"
        },
        "$:/core/ui/TiddlerFieldTemplate": {
            "title": "$:/core/ui/TiddlerFieldTemplate",
            "text": "<tr class=\"tc-view-field\">\n<td class=\"tc-view-field-name\">\n<$text text=<<listItem>>/>\n</td>\n<td class=\"tc-view-field-value\">\n<$view field=<<listItem>>/>\n</td>\n</tr>"
        },
        "$:/core/ui/TiddlerFields": {
            "title": "$:/core/ui/TiddlerFields",
            "text": "<table class=\"tc-view-field-table\">\n<tbody>\n<$list filter=\"[all[current]fields[]sort[title]] -text\" template=\"$:/core/ui/TiddlerFieldTemplate\" variable=\"listItem\"/>\n</tbody>\n</table>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/PluginInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/PluginInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/PluginInfo/\n<$list filter=\"[all[current]has[plugin-type]]\">\n\n! <<lingo Heading>>\n\n<<lingo Hint>>\n<ul>\n<$list filter=\"[all[current]plugintiddlers[]sort[title]]\" emptyMessage=<<lingo Empty/Hint>>>\n<li>\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</li>\n</$list>\n</ul>\n\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo": {
            "title": "$:/core/ui/TiddlerInfo/Advanced/ShadowInfo",
            "tags": "$:/tags/TiddlerInfo/Advanced",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/Advanced/ShadowInfo/\n<$set name=\"infoTiddler\" value=<<currentTiddler>>>\n\n''<<lingo Heading>>''\n\n<$list filter=\"[all[current]!is[shadow]]\">\n\n<<lingo NotShadow/Hint>>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]]\">\n\n<<lingo Shadow/Hint>>\n\n<$list filter=\"[all[current]shadowsource[]]\">\n\n<$set name=\"pluginTiddler\" value=<<currentTiddler>>>\n<<lingo Shadow/Source>>\n</$set>\n\n</$list>\n\n<$list filter=\"[all[current]is[shadow]is[tiddler]]\">\n\n<<lingo OverriddenShadow/Hint>>\n\n</$list>\n\n\n</$list>\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo/Advanced": {
            "title": "$:/core/ui/TiddlerInfo/Advanced",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Advanced/Caption}}",
            "text": "<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo/Advanced]!has[draft.of]]\" variable=\"listItem\">\n\n<$transclude tiddler=<<listItem>> mode=\"block\"/>\n</$list>\n"
        },
        "$:/core/ui/TiddlerInfo/Fields": {
            "title": "$:/core/ui/TiddlerInfo/Fields",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Fields/Caption}}",
            "text": "<$transclude tiddler=\"$:/core/ui/TiddlerFields\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/List": {
            "title": "$:/core/ui/TiddlerInfo/List",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/List/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[list{!!title}]\" emptyMessage=<<lingo List/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Listed": {
            "title": "$:/core/ui/TiddlerInfo/Listed",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Listed/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]listed[]!is[system]]\" emptyMessage=<<lingo Listed/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/References": {
            "title": "$:/core/ui/TiddlerInfo/References",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/References/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]backlinks[]sort[title]]\" emptyMessage=<<lingo References/Empty>> template=\"$:/core/ui/ListItemTemplate\">\n</$list>"
        },
        "$:/core/ui/TiddlerInfo/Tagging": {
            "title": "$:/core/ui/TiddlerInfo/Tagging",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tagging/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n<$list filter=\"[all[current]tagging[]]\" emptyMessage=<<lingo Tagging/Empty>> template=\"$:/core/ui/ListItemTemplate\"/>\n"
        },
        "$:/core/ui/TiddlerInfo/Tools": {
            "title": "$:/core/ui/TiddlerInfo/Tools",
            "tags": "$:/tags/TiddlerInfo",
            "caption": "{{$:/language/TiddlerInfo/Tools/Caption}}",
            "text": "\\define lingo-base() $:/language/TiddlerInfo/\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\">\n\n<$checkbox tiddler=<<config-title>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"show\"/> <$transclude tiddler=<<listItem>>/> <i class=\"tc-muted\"><$transclude tiddler=<<listItem>> field=\"description\"/></i>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n"
        },
        "$:/core/ui/TiddlerInfo": {
            "title": "$:/core/ui/TiddlerInfo",
            "text": "<div style=\"position:relative;\">\n<div class=\"tc-tiddler-controls\" style=\"position:absolute;right:0;\">\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=\"tc-btn-invisible\">\n{{$:/core/images/close-button}}\n</$button>\n</$reveal>\n</div>\n</div>\n\n<$macrocall $name=\"tabs\" tabsList=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfo]!has[draft.of]]\" default={{$:/config/TiddlerInfo/Default}}/>\n"
        },
        "$:/core/ui/TopBar/menu": {
            "title": "$:/core/ui/TopBar/menu",
            "tags": "$:/tags/TopRightBar",
            "text": "<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]!match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"no\" tooltip={{$:/language/Buttons/HideSideBar/Hint}} aria-label={{$:/language/Buttons/HideSideBar/Caption}} class=\"tc-btn-invisible tc-hide-sidebar-btn\">{{$:/core/images/chevron-right}}</$button>\n</$list>\n<$list filter=\"[[$:/state/sidebar]get[text]] +[else[yes]match[no]]\" variable=\"ignore\">\n<$button set=\"$:/state/sidebar\" setTo=\"yes\" tooltip={{$:/language/Buttons/ShowSideBar/Hint}} aria-label={{$:/language/Buttons/ShowSideBar/Caption}} class=\"tc-btn-invisible tc-show-sidebar-btn\">{{$:/core/images/chevron-left}}</$button>\n</$list>\n"
        },
        "$:/core/ui/UntaggedTemplate": {
            "title": "$:/core/ui/UntaggedTemplate",
            "text": "\\define lingo-base() $:/language/SideBar/\n<$button popup=<<qualify \"$:/state/popup/tag\">> class=\"tc-btn-invisible tc-untagged-label tc-tag-label\">\n<<lingo Tags/Untagged/Caption>>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/tag\">> type=\"popup\" position=\"below\">\n<div class=\"tc-drop-down\">\n<$list filter=\"[untagged[]!is[system]] -[tags[]] +[sort[title]]\" template=\"$:/core/ui/ListItemTemplate\"/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/body": {
            "title": "$:/core/ui/ViewTemplate/body",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" class=\"tc-tiddler-body\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]!has[plugin-type]!field:hide-body[yes]]\">\n\n<$transclude>\n\n<$transclude tiddler=\"$:/language/MissingTiddler/Hint\"/>\n\n</$transclude>\n\n</$list>\n\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/classic": {
            "title": "$:/core/ui/ViewTemplate/classic",
            "tags": "$:/tags/ViewTemplate $:/tags/EditTemplate",
            "text": "\\define lingo-base() $:/language/ClassicWarning/\n<$list filter=\"[all[current]type[text/x-tiddlywiki]]\">\n<div class=\"tc-message-box\">\n\n<<lingo Hint>>\n\n<$button set=\"!!type\" setTo=\"text/vnd.tiddlywiki\"><<lingo Upgrade/Caption>></$button>\n\n</div>\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/import": {
            "title": "$:/core/ui/ViewTemplate/import",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\define lingo-base() $:/language/Import/\n\n\\define buttons()\n<$button message=\"tm-delete-tiddler\" param=<<currentTiddler>>><<lingo Listing/Cancel/Caption>></$button>\n<$button message=\"tm-perform-import\" param=<<currentTiddler>>><<lingo Listing/Import/Caption>></$button>\n<<lingo Listing/Preview>> <$select tiddler=\"$:/state/importpreviewtype\" default=\"$:/core/ui/ImportPreviews/Text\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ImportPreview]!has[draft.of]]\">\n<option value=<<currentTiddler>>>{{!!caption}}</option>\n</$list>\n</$select>\n\\end\n\n<$list filter=\"[all[current]field:plugin-type[import]]\">\n\n<div class=\"tc-import\">\n\n<<lingo Listing/Hint>>\n\n<<buttons>>\n\n{{||$:/core/ui/ImportListing}}\n\n<<buttons>>\n\n</div>\n\n</$list>\n"
        },
        "$:/core/ui/ViewTemplate/plugin": {
            "title": "$:/core/ui/ViewTemplate/plugin",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" class=\"tc-tiddler-plugin-info\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" retain=\"yes\" animate=\"yes\">\n\n<$list filter=\"[all[current]has[plugin-type]] -[all[current]field:plugin-type[import]]\">\n<$set name=\"plugin-type\" value={{!!plugin-type}}>\n<$set name=\"default-popup-state\" value=\"yes\">\n<$set name=\"qualified-state\" value=<<qualify \"$:/state/plugin-info\">>>\n{{||$:/core/ui/Components/plugin-info}}\n</$set>\n</$set>\n</$set>\n</$list>\n</$reveal>"
        },
        "$:/core/ui/ViewTemplate/subtitle": {
            "title": "$:/core/ui/ViewTemplate/subtitle",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-subtitle\">\n<$link to={{!!modifier}} />\n<$view field=\"modified\" format=\"date\" template={{$:/language/Tiddler/DateFormat}}/>\n</div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/tags": {
            "title": "$:/core/ui/ViewTemplate/tags",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" tag=\"div\" retain=\"yes\" animate=\"yes\">\n<div class=\"tc-tags-wrapper\"><$list filter=\"[all[current]tags[]sort[title]]\" template=\"$:/core/ui/TagTemplate\" storyview=\"pop\"/></div>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate/title": {
            "title": "$:/core/ui/ViewTemplate/title",
            "tags": "$:/tags/ViewTemplate",
            "text": "\\whitespace trim\n\\define title-styles()\nfill:$(foregroundColor)$;\n\\end\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<div class=\"tc-tiddler-title\">\n<div class=\"tc-titlebar\">\n<span class=\"tc-tiddler-controls\">\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]]\" variable=\"listItem\"><$reveal type=\"nomatch\" state=<<config-title>> text=\"hide\"><$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\"><$transclude tiddler=<<listItem>>/></$set></$reveal></$list>\n</span>\n<$set name=\"tv-wikilinks\" value={{$:/config/Tiddlers/TitleLinks}}>\n<$link>\n<$set name=\"foregroundColor\" value={{!!color}}>\n<$list filter=\"[all[current]has[icon]]~[[$:/config/DefaultTiddlerIcon]has[text]]\">\n<span class=\"tc-tiddler-title-icon\" style=<<title-styles>>>\n<$transclude tiddler={{!!icon}}>\n<$transclude tiddler={{$:/config/DefaultTiddlerIcon}}/>\n</$transclude>\n</span>\n</$list>\n</$set>\n<$list filter=\"[all[current]removeprefix[$:/]]\">\n<h2 class=\"tc-title\" title={{$:/language/SystemTiddler/Tooltip}}>\n<span class=\"tc-system-title-prefix\">$:/</span><$text text=<<currentTiddler>>/>\n</h2>\n</$list>\n<$list filter=\"[all[current]!prefix[$:/]]\">\n<h2 class=\"tc-title\">\n<$view field=\"title\"/>\n</h2>\n</$list>\n</$link>\n</$set>\n</div>\n\n<$reveal type=\"nomatch\" text=\"\" default=\"\" state=<<tiddlerInfoState>> class=\"tc-tiddler-info tc-popup-handle\" animate=\"yes\" retain=\"yes\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/TiddlerInfoSegment]!has[draft.of]] [[$:/core/ui/TiddlerInfo]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>> mode=\"block\"/></$list>\n\n</$reveal>\n</div>"
        },
        "$:/core/ui/ViewTemplate/unfold": {
            "title": "$:/core/ui/ViewTemplate/unfold",
            "tags": "$:/tags/ViewTemplate",
            "text": "<$reveal tag=\"div\" type=\"nomatch\" state=\"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar\" text=\"hide\">\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=\"tc-fold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-up}}\n</$button>\n</$reveal>\n<$reveal tag=\"div\" type=\"nomatch\" stateTitle=<<folded-state>> text=\"show\" default=\"show\" retain=\"yes\" animate=\"yes\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=\"tc-unfold-banner\">\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n{{$:/core/images/chevron-down}}\n</$button>\n</$reveal>\n</$reveal>\n"
        },
        "$:/core/ui/ViewTemplate": {
            "title": "$:/core/ui/ViewTemplate",
            "text": "\\define folded-state()\n$:/state/folded/$(currentTiddler)$\n\\end\n\\define cancel-delete-tiddler-actions(message) <$action-sendmessage $message=\"tm-$message$-tiddler\"/>\n\\import [all[shadows+tiddlers]tag[$:/tags/Macro/View]!has[draft.of]]\n<$vars storyTiddler=<<currentTiddler>> tiddlerInfoState=<<qualify \"$:/state/popup/tiddler-info\">>><div data-tiddler-title=<<currentTiddler>> data-tags={{!!tags}} class={{{ tc-tiddler-frame tc-tiddler-view-frame [<currentTiddler>is[tiddler]then[tc-tiddler-exists]] [<currentTiddler>is[missing]!is[shadow]then[tc-tiddler-missing]] [<currentTiddler>is[shadow]then[tc-tiddler-exists tc-tiddler-shadow]] [<currentTiddler>is[shadow]is[tiddler]then[tc-tiddler-overridden-shadow]] [<currentTiddler>is[system]then[tc-tiddler-system]] [{!!class}] [<currentTiddler>tags[]encodeuricomponent[]addprefix[tc-tagged-]] +[join[ ]] }}}><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewTemplate]!has[draft.of]]\" variable=\"listItem\"><$transclude tiddler=<<listItem>>/></$list>\n</div>\n</$vars>\n"
        },
        "$:/core/ui/Buttons/clone": {
            "title": "$:/core/ui/Buttons/clone",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/clone-button}} {{$:/language/Buttons/Clone/Caption}}",
            "description": "{{$:/language/Buttons/Clone/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-new-tiddler\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/Clone/Hint}} aria-label={{$:/language/Buttons/Clone/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/clone-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Clone/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close-others": {
            "title": "$:/core/ui/Buttons/close-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-others-button}} {{$:/language/Buttons/CloseOthers/Caption}}",
            "description": "{{$:/language/Buttons/CloseOthers/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-other-tiddlers\" param=<<currentTiddler>> tooltip={{$:/language/Buttons/CloseOthers/Hint}} aria-label={{$:/language/Buttons/CloseOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/CloseOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/close": {
            "title": "$:/core/ui/Buttons/close",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/close-button}} {{$:/language/Buttons/Close/Caption}}",
            "description": "{{$:/language/Buttons/Close/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-close-tiddler\" tooltip={{$:/language/Buttons/Close/Hint}} aria-label={{$:/language/Buttons/Close/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/close-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Close/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/edit": {
            "title": "$:/core/ui/Buttons/edit",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/edit-button}} {{$:/language/Buttons/Edit/Caption}}",
            "description": "{{$:/language/Buttons/Edit/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-edit-tiddler\" tooltip={{$:/language/Buttons/Edit/Hint}} aria-label={{$:/language/Buttons/Edit/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/edit-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Edit/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/core/ui/Buttons/export-tiddler",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/export-button}} {{$:/language/Buttons/ExportTiddler/Caption}}",
            "description": "{{$:/language/Buttons/ExportTiddler/Hint}}",
            "text": "\\define makeExportFilter()\n[[$(currentTiddler)$]]\n\\end\n<$macrocall $name=\"exportButton\" exportFilter=<<makeExportFilter>> lingoBase=\"$:/language/Buttons/ExportTiddler/\" baseFilename=<<currentTiddler>>/>"
        },
        "$:/core/ui/Buttons/fold-bar": {
            "title": "$:/core/ui/Buttons/fold-bar",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/chevron-up}} {{$:/language/Buttons/Fold/FoldBar/Caption}}",
            "description": "{{$:/language/Buttons/Fold/FoldBar/Hint}}",
            "text": "<!-- This dummy toolbar button is here to allow visibility of the fold-bar to be controlled as if it were a toolbar button -->"
        },
        "$:/core/ui/Buttons/fold-others": {
            "title": "$:/core/ui/Buttons/fold-others",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-others-button}} {{$:/language/Buttons/FoldOthers/Caption}}",
            "description": "{{$:/language/Buttons/FoldOthers/Hint}}",
            "text": "\\whitespace trim\n<$button tooltip={{$:/language/Buttons/FoldOthers/Hint}} aria-label={{$:/language/Buttons/FoldOthers/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-other-tiddlers\" $param=<<currentTiddler>> foldedStatePrefix=\"$:/state/folded/\"/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-others-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/FoldOthers/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/fold": {
            "title": "$:/core/ui/Buttons/fold",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/fold-button}} {{$:/language/Buttons/Fold/Caption}}",
            "description": "{{$:/language/Buttons/Fold/Hint}}",
            "text": "\\whitespace trim\n<$reveal type=\"nomatch\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Fold/Hint}} aria-label={{$:/language/Buttons/Fold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/fold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Fold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<folded-state>> text=\"hide\" default=\"show\">\n<$button tooltip={{$:/language/Buttons/Unfold/Hint}} aria-label={{$:/language/Buttons/Unfold/Caption}} class=<<tv-config-toolbar-class>>>\n<$action-sendmessage $message=\"tm-fold-tiddler\" $param=<<currentTiddler>> foldedState=<<folded-state>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\" variable=\"listItem\">\n{{$:/core/images/unfold-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Unfold/Caption}}/>\n</span>\n</$list>\n</$button>\n</$reveal>\n"
        },
        "$:/core/ui/Buttons/info": {
            "title": "$:/core/ui/Buttons/info",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/info-button}} {{$:/language/Buttons/Info/Caption}}",
            "description": "{{$:/language/Buttons/Info/Hint}}",
            "text": "\\whitespace trim\n\\define button-content()\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/info-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/Info/Caption}}/>\n</span>\n</$list>\n\\end\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"popup\">\n<$button popup=<<tiddlerInfoState>> tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=\"$:/config/TiddlerInfo/Mode\" type=\"match\" text=\"sticky\">\n<$reveal state=<<tiddlerInfoState>> type=\"match\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"yes\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n<$reveal state=<<tiddlerInfoState>> type=\"nomatch\" text=\"\" default=\"\">\n<$button set=<<tiddlerInfoState>> setTo=\"\" tooltip={{$:/language/Buttons/Info/Hint}} aria-label={{$:/language/Buttons/Info/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$macrocall $name=\"button-content\" mode=\"inline\"/>\n</$button>\n</$reveal>\n</$reveal>"
        },
        "$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/core/ui/Buttons/more-tiddler-actions",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/down-arrow}} {{$:/language/Buttons/More/Caption}}",
            "description": "{{$:/language/Buttons/More/Hint}}",
            "text": "\\whitespace trim\n\\define config-title()\n$:/config/ViewToolbarButtons/Visibility/$(listItem)$\n\\end\n<$button popup=<<qualify \"$:/state/popup/more\">> tooltip={{$:/language/Buttons/More/Hint}} aria-label={{$:/language/Buttons/More/Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/down-arrow}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/More/Caption}}/>\n</span>\n</$list>\n</$button>\n<$reveal state=<<qualify \"$:/state/popup/more\">> type=\"popup\" position=\"belowleft\" animate=\"yes\">\n\n<div class=\"tc-drop-down\">\n\n<$set name=\"tv-config-toolbar-icons\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-text\" value=\"yes\">\n\n<$set name=\"tv-config-toolbar-class\" value=\"tc-btn-invisible\">\n\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/ViewToolbar]!has[draft.of]] -[[$:/core/ui/Buttons/more-tiddler-actions]]\" variable=\"listItem\">\n\n<$reveal type=\"match\" state=<<config-title>> text=\"hide\">\n\n<$set name=\"tv-config-toolbar-class\" filter=\"[<tv-config-toolbar-class>] [<listItem>encodeuricomponent[]addprefix[tc-btn-]]\">\n\n<$transclude tiddler=<<listItem>> mode=\"inline\"/>\n\n</$set>\n\n</$reveal>\n\n</$list>\n\n</$set>\n\n</$set>\n\n</$set>\n\n</div>\n\n</$reveal>"
        },
        "$:/core/ui/Buttons/new-here": {
            "title": "$:/core/ui/Buttons/new-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-here-button}} {{$:/language/Buttons/NewHere/Caption}}",
            "description": "{{$:/language/Buttons/NewHere/Hint}}",
            "text": "\\whitespace trim\n\\define newHereActions()\n<$set name=\"tags\" filter=\"[<currentTiddler>] [{$:/config/NewTiddler/Tags}]\">\n<$action-sendmessage $message=\"tm-new-tiddler\" tags=<<tags>>/>\n</$set>\n\\end\n\\define newHereButton()\n<$button actions=<<newHereActions>> tooltip={{$:/language/Buttons/NewHere/Hint}} aria-label={{$:/language/Buttons/NewHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-here-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewHere/Caption}}/>\n</span>\n</$list>\n</$button>\n\\end\n<<newHereButton>>\n"
        },
        "$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/core/ui/Buttons/new-journal-here",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/new-journal-button}} {{$:/language/Buttons/NewJournalHere/Caption}}",
            "description": "{{$:/language/Buttons/NewJournalHere/Hint}}",
            "text": "\\whitespace trim\n\\define journalButtonTags()\n[[$(currentTiddlerTag)$]] $(journalTags)$\n\\end\n\\define journalButton()\n<$button tooltip={{$:/language/Buttons/NewJournalHere/Hint}} aria-label={{$:/language/Buttons/NewJournalHere/Caption}} class=<<tv-config-toolbar-class>>>\n<$wikify name=\"journalTitle\" text=\"\"\"<$macrocall $name=\"now\" format=<<journalTitleTemplate>>/>\"\"\">\n<$action-sendmessage $message=\"tm-new-tiddler\" title=<<journalTitle>> tags=<<journalButtonTags>>/>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/new-journal-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text={{$:/language/Buttons/NewJournalHere/Caption}}/>\n</span>\n</$list>\n</$wikify>\n</$button>\n\\end\n<$set name=\"journalTitleTemplate\" value={{$:/config/NewJournal/Title}}>\n<$set name=\"journalTags\" value={{$:/config/NewJournal/Tags}}>\n<$set name=\"currentTiddlerTag\" value=<<currentTiddler>>>\n<<journalButton>>\n</$set>\n</$set>\n</$set>\n"
        },
        "$:/core/ui/Buttons/open-window": {
            "title": "$:/core/ui/Buttons/open-window",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/open-window}} {{$:/language/Buttons/OpenWindow/Caption}}",
            "description": "{{$:/language/Buttons/OpenWindow/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-open-window\" tooltip={{$:/language/Buttons/OpenWindow/Hint}} aria-label={{$:/language/Buttons/OpenWindow/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/open-window}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/OpenWindow/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permalink": {
            "title": "$:/core/ui/Buttons/permalink",
            "tags": "$:/tags/ViewToolbar",
            "caption": "{{$:/core/images/permalink-button}} {{$:/language/Buttons/Permalink/Caption}}",
            "description": "{{$:/language/Buttons/Permalink/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permalink\" tooltip={{$:/language/Buttons/Permalink/Hint}} aria-label={{$:/language/Buttons/Permalink/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permalink-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permalink/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/core/ui/Buttons/permaview": {
            "title": "$:/core/ui/Buttons/permaview",
            "tags": "$:/tags/ViewToolbar $:/tags/PageControls",
            "caption": "{{$:/core/images/permaview-button}} {{$:/language/Buttons/Permaview/Caption}}",
            "description": "{{$:/language/Buttons/Permaview/Hint}}",
            "text": "\\whitespace trim\n<$button message=\"tm-permaview\" tooltip={{$:/language/Buttons/Permaview/Hint}} aria-label={{$:/language/Buttons/Permaview/Caption}} class=<<tv-config-toolbar-class>>>\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/permaview-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\">\n<$text text=\" \"/>\n<$text text={{$:/language/Buttons/Permaview/Caption}}/>\n</span>\n</$list>\n</$button>"
        },
        "$:/DefaultTiddlers": {
            "title": "$:/DefaultTiddlers",
            "text": "GettingStarted\n"
        },
        "$:/temp/advancedsearch": {
            "title": "$:/temp/advancedsearch",
            "text": ""
        },
        "$:/snippets/allfields": {
            "title": "$:/snippets/allfields",
            "text": "\\define renderfield(title)\n<tr class=\"tc-view-field\"><td class=\"tc-view-field-name\">''$title$'':</td><td class=\"tc-view-field-value\">//{{$:/language/Docs/Fields/$title$}}//</td></tr>\n\\end\n<table class=\"tc-view-field-table\"><tbody><$list filter=\"[fields[]sort[title]]\" variable=\"listItem\"><$macrocall $name=\"renderfield\" title=<<listItem>>/></$list>\n</tbody></table>\n"
        },
        "$:/config/AnimationDuration": {
            "title": "$:/config/AnimationDuration",
            "text": "400"
        },
        "$:/config/AutoFocus": {
            "title": "$:/config/AutoFocus",
            "text": "title"
        },
        "$:/config/AutoSave": {
            "title": "$:/config/AutoSave",
            "text": "yes"
        },
        "$:/config/BitmapEditor/Colour": {
            "title": "$:/config/BitmapEditor/Colour",
            "text": "#444"
        },
        "$:/config/BitmapEditor/ImageSizes": {
            "title": "$:/config/BitmapEditor/ImageSizes",
            "text": "[[62px 100px]] [[100px 62px]] [[124px 200px]] [[200px 124px]] [[248px 400px]] [[371px 600px]] [[400px 248px]] [[556px 900px]] [[600px 371px]] [[742px 1200px]] [[900px 556px]] [[1200px 742px]]"
        },
        "$:/config/BitmapEditor/LineWidth": {
            "title": "$:/config/BitmapEditor/LineWidth",
            "text": "3px"
        },
        "$:/config/BitmapEditor/LineWidths": {
            "title": "$:/config/BitmapEditor/LineWidths",
            "text": "0.25px 0.5px 1px 2px 3px 4px 6px 8px 10px 16px 20px 28px 40px 56px 80px"
        },
        "$:/config/BitmapEditor/Opacities": {
            "title": "$:/config/BitmapEditor/Opacities",
            "text": "0.01 0.025 0.05 0.075 0.1 0.15 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1.0"
        },
        "$:/config/BitmapEditor/Opacity": {
            "title": "$:/config/BitmapEditor/Opacity",
            "text": "1.0"
        },
        "$:/config/DefaultMoreSidebarTab": {
            "title": "$:/config/DefaultMoreSidebarTab",
            "text": "$:/core/ui/MoreSideBar/Tags"
        },
        "$:/config/DefaultSidebarTab": {
            "title": "$:/config/DefaultSidebarTab",
            "text": "$:/core/ui/SideBar/Open"
        },
        "$:/config/DownloadSaver/AutoSave": {
            "title": "$:/config/DownloadSaver/AutoSave",
            "text": "no"
        },
        "$:/config/Drafts/TypingTimeout": {
            "title": "$:/config/Drafts/TypingTimeout",
            "text": "400"
        },
        "$:/config/EditMode/fieldname-filter": {
            "title": "$:/config/EditMode/fieldname-filter",
            "first-search-filter": "[!is[shadow]!is[system]fields[]search:title<userInput>sort[]] -created -creator -draft.of -draft.title -modified -modifier -tags -text -title -type",
            "second-search-filter": "[fields[]search:title<userInput>sort[]] -[!is[shadow]!is[system]fields[]]"
        },
        "$:/config/EditTabIndex": {
            "title": "$:/config/EditTabIndex",
            "text": "1\n"
        },
        "$:/config/EditTemplateFields/Visibility/title": {
            "title": "$:/config/EditTemplateFields/Visibility/title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/tags": {
            "title": "$:/config/EditTemplateFields/Visibility/tags",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/text": {
            "title": "$:/config/EditTemplateFields/Visibility/text",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/creator": {
            "title": "$:/config/EditTemplateFields/Visibility/creator",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/created": {
            "title": "$:/config/EditTemplateFields/Visibility/created",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modified": {
            "title": "$:/config/EditTemplateFields/Visibility/modified",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/modifier": {
            "title": "$:/config/EditTemplateFields/Visibility/modifier",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/type": {
            "title": "$:/config/EditTemplateFields/Visibility/type",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.title": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.title",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/draft.of": {
            "title": "$:/config/EditTemplateFields/Visibility/draft.of",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/revision": {
            "title": "$:/config/EditTemplateFields/Visibility/revision",
            "text": "hide"
        },
        "$:/config/EditTemplateFields/Visibility/bag": {
            "title": "$:/config/EditTemplateFields/Visibility/bag",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-4",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-5",
            "text": "hide"
        },
        "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6": {
            "title": "$:/config/EditorToolbarButtons/Visibility/$:/core/ui/EditorToolbar/heading-6",
            "text": "hide"
        },
        "$:/config/EditorTypeMappings/image/gif": {
            "title": "$:/config/EditorTypeMappings/image/gif",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/webp": {
            "title": "$:/config/EditorTypeMappings/image/webp",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/heic": {
            "title": "$:/config/EditorTypeMappings/image/heic",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/heif": {
            "title": "$:/config/EditorTypeMappings/image/heif",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpeg": {
            "title": "$:/config/EditorTypeMappings/image/jpeg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/jpg": {
            "title": "$:/config/EditorTypeMappings/image/jpg",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/png": {
            "title": "$:/config/EditorTypeMappings/image/png",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/image/x-icon": {
            "title": "$:/config/EditorTypeMappings/image/x-icon",
            "text": "bitmap"
        },
        "$:/config/EditorTypeMappings/text/vnd.tiddlywiki": {
            "title": "$:/config/EditorTypeMappings/text/vnd.tiddlywiki",
            "text": "text"
        },
        "$:/config/Manager/Show": {
            "title": "$:/config/Manager/Show",
            "text": "tiddlers"
        },
        "$:/config/Manager/Filter": {
            "title": "$:/config/Manager/Filter",
            "text": ""
        },
        "$:/config/Manager/Order": {
            "title": "$:/config/Manager/Order",
            "text": "forward"
        },
        "$:/config/Manager/Sort": {
            "title": "$:/config/Manager/Sort",
            "text": "title"
        },
        "$:/config/Manager/System": {
            "title": "$:/config/Manager/System",
            "text": "system"
        },
        "$:/config/Manager/Tag": {
            "title": "$:/config/Manager/Tag",
            "text": ""
        },
        "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText": {
            "title": "$:/state/popup/manager/item/$:/Manager/ItemMain/RawText",
            "text": "hide"
        },
        "$:/config/MissingLinks": {
            "title": "$:/config/MissingLinks",
            "text": "yes"
        },
        "$:/config/Navigation/UpdateAddressBar": {
            "title": "$:/config/Navigation/UpdateAddressBar",
            "text": "no"
        },
        "$:/config/Navigation/UpdateHistory": {
            "title": "$:/config/Navigation/UpdateHistory",
            "text": "no"
        },
        "$:/config/NewImageType": {
            "title": "$:/config/NewImageType",
            "text": "jpeg"
        },
        "$:/config/OfficialPluginLibrary": {
            "title": "$:/config/OfficialPluginLibrary",
            "tags": "$:/tags/PluginLibrary",
            "url": "https://tiddlywiki.com/library/v5.1.23/index.html",
            "caption": "{{$:/language/OfficialPluginLibrary}}",
            "text": "{{$:/language/OfficialPluginLibrary/Hint}}\n"
        },
        "$:/config/Navigation/openLinkFromInsideRiver": {
            "title": "$:/config/Navigation/openLinkFromInsideRiver",
            "text": "below"
        },
        "$:/config/Navigation/openLinkFromOutsideRiver": {
            "title": "$:/config/Navigation/openLinkFromOutsideRiver",
            "text": "top"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/advanced-search",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/close-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/encryption",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/export-page",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/fold-all",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/full-screen",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/home",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/refresh",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/import",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/language",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/tag-manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/manager",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/more-page-actions",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-journal",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/new-image",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/palette",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/print",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/storyview",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/timestamp",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/theme",
            "text": "hide"
        },
        "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all": {
            "title": "$:/config/PageControlButtons/Visibility/$:/core/ui/Buttons/unfold-all",
            "text": "hide"
        },
        "$:/config/Performance/Instrumentation": {
            "title": "$:/config/Performance/Instrumentation",
            "text": "no"
        },
        "$:/config/RegisterPluginType/plugin": {
            "title": "$:/config/RegisterPluginType/plugin",
            "text": "yes"
        },
        "$:/config/RegisterPluginType/theme": {
            "title": "$:/config/RegisterPluginType/theme",
            "text": "no"
        },
        "$:/config/RegisterPluginType/language": {
            "title": "$:/config/RegisterPluginType/language",
            "text": "no"
        },
        "$:/config/RegisterPluginType/info": {
            "title": "$:/config/RegisterPluginType/info",
            "text": "yes"
        },
        "$:/config/RegisterPluginType/import": {
            "title": "$:/config/RegisterPluginType/import",
            "text": "no"
        },
        "$:/config/SaveWikiButton/Template": {
            "title": "$:/config/SaveWikiButton/Template",
            "text": "$:/core/save/all"
        },
        "$:/config/SaverFilter": {
            "title": "$:/config/SaverFilter",
            "text": "[all[]] -[prefix[$:/HistoryList]] -[prefix[$:/StoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[[$:/UploadName]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
        },
        "$:/config/Search/AutoFocus": {
            "title": "$:/config/Search/AutoFocus",
            "text": "true"
        },
        "$:/config/Search/MinLength": {
            "title": "$:/config/Search/MinLength",
            "text": "3"
        },
        "$:/config/SearchResults/Default": {
            "title": "$:/config/SearchResults/Default",
            "text": "$:/core/ui/DefaultSearchResultList"
        },
        "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]": {
            "title": "$:/config/Server/ExternalFilters/[all[tiddlers]!is[system]sort[title]]",
            "text": "yes"
        },
        "$:/config/ShortcutInfo/add-field": {
            "title": "$:/config/ShortcutInfo/add-field",
            "text": "{{$:/language/EditTemplate/Fields/Add/Button/Hint}}"
        },
        "$:/config/ShortcutInfo/advanced-search": {
            "title": "$:/config/ShortcutInfo/advanced-search",
            "text": "{{$:/language/Buttons/AdvancedSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/advanced-search-sidebar": {
            "title": "$:/config/ShortcutInfo/advanced-search-sidebar",
            "text": "{{$:/language/Shortcuts/Input/AdvancedSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/bold": {
            "title": "$:/config/ShortcutInfo/bold",
            "text": "{{$:/language/Buttons/Bold/Hint}}"
        },
        "$:/config/ShortcutInfo/cancel-edit-tiddler": {
            "title": "$:/config/ShortcutInfo/cancel-edit-tiddler",
            "text": "{{$:/language/Buttons/Cancel/Hint}}"
        },
        "$:/config/ShortcutInfo/change-sidebar-layout": {
            "title": "$:/config/ShortcutInfo/change-sidebar-layout",
            "text": "{{$:/language/Shortcuts/SidebarLayout/Hint}}"
        },
        "$:/config/ShortcutInfo/delete-field": {
            "title": "$:/config/ShortcutInfo/delete-field",
            "text": "{{$:/language/EditTemplate/Field/Remove/Hint}}"
        },
        "$:/config/ShortcutInfo/excise": {
            "title": "$:/config/ShortcutInfo/excise",
            "text": "{{$:/language/Buttons/Excise/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-1": {
            "title": "$:/config/ShortcutInfo/heading-1",
            "text": "{{$:/language/Buttons/Heading1/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-2": {
            "title": "$:/config/ShortcutInfo/heading-2",
            "text": "{{$:/language/Buttons/Heading2/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-3": {
            "title": "$:/config/ShortcutInfo/heading-3",
            "text": "{{$:/language/Buttons/Heading3/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-4": {
            "title": "$:/config/ShortcutInfo/heading-4",
            "text": "{{$:/language/Buttons/Heading4/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-5": {
            "title": "$:/config/ShortcutInfo/heading-5",
            "text": "{{$:/language/Buttons/Heading5/Hint}}"
        },
        "$:/config/ShortcutInfo/heading-6": {
            "title": "$:/config/ShortcutInfo/heading-6",
            "text": "{{$:/language/Buttons/Heading6/Hint}}"
        },
        "$:/config/ShortcutInfo/input-accept": {
            "title": "$:/config/ShortcutInfo/input-accept",
            "text": "{{$:/language/Shortcuts/Input/Accept/Hint}}"
        },
        "$:/config/ShortcutInfo/input-accept-variant": {
            "title": "$:/config/ShortcutInfo/input-accept-variant",
            "text": "{{$:/language/Shortcuts/Input/AcceptVariant/Hint}}"
        },
        "$:/config/ShortcutInfo/input-cancel": {
            "title": "$:/config/ShortcutInfo/input-cancel",
            "text": "{{$:/language/Shortcuts/Input/Cancel/Hint}}"
        },
        "$:/config/ShortcutInfo/input-down": {
            "title": "$:/config/ShortcutInfo/input-down",
            "text": "{{$:/language/Shortcuts/Input/Down/Hint}}"
        },
        "$:/config/ShortcutInfo/input-tab-left": {
            "title": "$:/config/ShortcutInfo/input-tab-left",
            "text": "{{$:/language/Shortcuts/Input/Tab-Left/Hint}}"
        },
        "$:/config/ShortcutInfo/input-tab-right": {
            "title": "$:/config/ShortcutInfo/input-tab-right",
            "text": "{{$:/language/Shortcuts/Input/Tab-Right/Hint}}"
        },
        "$:/config/ShortcutInfo/input-up": {
            "title": "$:/config/ShortcutInfo/input-up",
            "text": "{{$:/language/Shortcuts/Input/Up/Hint}}"
        },
        "$:/config/ShortcutInfo/italic": {
            "title": "$:/config/ShortcutInfo/italic",
            "text": "{{$:/language/Buttons/Italic/Hint}}"
        },
        "$:/config/ShortcutInfo/layout-switcher": {
            "title": "$:/config/ShortcutInfo/layout-switcher",
            "text": "{{$:/language/LayoutSwitcher/Description}}"
        },
        "$:/config/ShortcutInfo/link": {
            "title": "$:/config/ShortcutInfo/link",
            "text": "{{$:/language/Buttons/Link/Hint}}"
        },
        "$:/config/ShortcutInfo/linkify": {
            "title": "$:/config/ShortcutInfo/linkify",
            "text": "{{$:/language/Buttons/Linkify/Hint}}"
        },
        "$:/config/ShortcutInfo/list-bullet": {
            "title": "$:/config/ShortcutInfo/list-bullet",
            "text": "{{$:/language/Buttons/ListBullet/Hint}}"
        },
        "$:/config/ShortcutInfo/list-number": {
            "title": "$:/config/ShortcutInfo/list-number",
            "text": "{{$:/language/Buttons/ListNumber/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-block": {
            "title": "$:/config/ShortcutInfo/mono-block",
            "text": "{{$:/language/Buttons/MonoBlock/Hint}}"
        },
        "$:/config/ShortcutInfo/mono-line": {
            "title": "$:/config/ShortcutInfo/mono-line",
            "text": "{{$:/language/Buttons/MonoLine/Hint}}"
        },
        "$:/config/ShortcutInfo/new-image": {
            "title": "$:/config/ShortcutInfo/new-image",
            "text": "{{$:/language/Buttons/NewImage/Hint}}"
        },
        "$:/config/ShortcutInfo/new-journal": {
            "title": "$:/config/ShortcutInfo/new-journal",
            "text": "{{$:/language/Buttons/NewJournal/Hint}}"
        },
        "$:/config/ShortcutInfo/new-tiddler": {
            "title": "$:/config/ShortcutInfo/new-tiddler",
            "text": "{{$:/language/Buttons/NewTiddler/Hint}}"
        },
        "$:/config/ShortcutInfo/picture": {
            "title": "$:/config/ShortcutInfo/picture",
            "text": "{{$:/language/Buttons/Picture/Hint}}"
        },
        "$:/config/ShortcutInfo/preview": {
            "title": "$:/config/ShortcutInfo/preview",
            "text": "{{$:/language/Buttons/Preview/Hint}}"
        },
        "$:/config/ShortcutInfo/quote": {
            "title": "$:/config/ShortcutInfo/quote",
            "text": "{{$:/language/Buttons/Quote/Hint}}"
        },
        "$:/config/ShortcutInfo/save-tiddler": {
            "title": "$:/config/ShortcutInfo/save-tiddler",
            "text": "{{$:/language/Buttons/Save/Hint}}"
        },
        "$:/config/ShortcutInfo/save-wiki": {
            "title": "$:/config/ShortcutInfo/save-wiki",
            "text": "{{$:/language/Buttons/SaveWiki/Hint}}"
        },
        "$:/config/ShortcutInfo/sidebar-search": {
            "title": "$:/config/ShortcutInfo/sidebar-search",
            "text": "{{$:/language/Buttons/SidebarSearch/Hint}}"
        },
        "$:/config/ShortcutInfo/stamp": {
            "title": "$:/config/ShortcutInfo/stamp",
            "text": "{{$:/language/Buttons/Stamp/Hint}}"
        },
        "$:/config/ShortcutInfo/strikethrough": {
            "title": "$:/config/ShortcutInfo/strikethrough",
            "text": "{{$:/language/Buttons/Strikethrough/Hint}}"
        },
        "$:/config/ShortcutInfo/subscript": {
            "title": "$:/config/ShortcutInfo/subscript",
            "text": "{{$:/language/Buttons/Subscript/Hint}}"
        },
        "$:/config/ShortcutInfo/superscript": {
            "title": "$:/config/ShortcutInfo/superscript",
            "text": "{{$:/language/Buttons/Superscript/Hint}}"
        },
        "$:/config/ShortcutInfo/toggle-sidebar": {
            "title": "$:/config/ShortcutInfo/toggle-sidebar",
            "text": "{{$:/language/Buttons/ToggleSidebar/Hint}}"
        },
        "$:/config/ShortcutInfo/transcludify": {
            "title": "$:/config/ShortcutInfo/transcludify",
            "text": "{{$:/language/Buttons/Transcludify/Hint}}"
        },
        "$:/config/ShortcutInfo/underline": {
            "title": "$:/config/ShortcutInfo/underline",
            "text": "{{$:/language/Buttons/Underline/Hint}}"
        },
        "$:/config/SwitcherTargets/layout": {
            "title": "$:/config/SwitcherTargets/layout",
            "text": "$:/snippets/LayoutSwitcher"
        },
        "$:/config/SwitcherTargets/language": {
            "title": "$:/config/SwitcherTargets/language",
            "text": "$:/snippets/languageswitcher"
        },
        "$:/config/SwitcherTargets/palette": {
            "title": "$:/config/SwitcherTargets/palette",
            "text": "$:/core/ui/ControlPanel/Palette"
        },
        "$:/config/SwitcherTargets/theme": {
            "title": "$:/config/SwitcherTargets/theme",
            "text": "$:/core/ui/ControlPanel/Theme"
        },
        "$:/config/SyncFilter": {
            "title": "$:/config/SyncFilter",
            "text": "[is[tiddler]] -[[$:/core]] -[[$:/library/sjcl.js]] -[prefix[$:/boot/]] -[prefix[$:/HistoryList]] -[status[pending]plugin-type[import]] -[[$:/isEncrypted]] -[prefix[$:/status/]] -[prefix[$:/state/]] -[prefix[$:/temp/]]\n"
        },
        "$:/config/SyncSystemTiddlersFromServer": {
            "title": "$:/config/SyncSystemTiddlersFromServer",
            "text": "no"
        },
        "$:/config/Tags/MinLength": {
            "title": "$:/config/Tags/MinLength",
            "text": "0"
        },
        "$:/config/TextEditor/EditorHeight/Height": {
            "title": "$:/config/TextEditor/EditorHeight/Height",
            "text": "400px"
        },
        "$:/config/TextEditor/EditorHeight/Mode": {
            "title": "$:/config/TextEditor/EditorHeight/Mode",
            "text": "auto"
        },
        "$:/config/TiddlerInfo/Default": {
            "title": "$:/config/TiddlerInfo/Default",
            "text": "$:/core/ui/TiddlerInfo/Fields"
        },
        "$:/config/TiddlerInfo/Mode": {
            "title": "$:/config/TiddlerInfo/Mode",
            "text": "popup"
        },
        "$:/config/Tiddlers/TitleLinks": {
            "title": "$:/config/Tiddlers/TitleLinks",
            "text": "no"
        },
        "$:/config/Toolbar/ButtonClass": {
            "title": "$:/config/Toolbar/ButtonClass",
            "text": "tc-btn-invisible"
        },
        "$:/config/Toolbar/Icons": {
            "title": "$:/config/Toolbar/Icons",
            "text": "yes"
        },
        "$:/config/Toolbar/Text": {
            "title": "$:/config/Toolbar/Text",
            "text": "no"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/clone",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/close-others",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/export-tiddler",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/info",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/more-tiddler-actions",
            "text": "show"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/new-journal-here",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/open-window",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permalink",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/permaview",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/delete",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-bar",
            "text": "hide"
        },
        "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others": {
            "title": "$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/fold-others",
            "text": "hide"
        },
        "$:/config/shortcuts-mac/bold": {
            "title": "$:/config/shortcuts-mac/bold",
            "text": "meta-B"
        },
        "$:/config/shortcuts-mac/input-tab-left": {
            "title": "$:/config/shortcuts-mac/input-tab-left",
            "text": "ctrl-Left"
        },
        "$:/config/shortcuts-mac/input-tab-right": {
            "title": "$:/config/shortcuts-mac/input-tab-right",
            "text": "ctrl-Right"
        },
        "$:/config/shortcuts-mac/italic": {
            "title": "$:/config/shortcuts-mac/italic",
            "text": "meta-I"
        },
        "$:/config/shortcuts-mac/underline": {
            "title": "$:/config/shortcuts-mac/underline",
            "text": "meta-U"
        },
        "$:/config/shortcuts-mac/new-image": {
            "title": "$:/config/shortcuts-mac/new-image",
            "text": "ctrl-I"
        },
        "$:/config/shortcuts-mac/new-journal": {
            "title": "$:/config/shortcuts-mac/new-journal",
            "text": "ctrl-J"
        },
        "$:/config/shortcuts-mac/new-tiddler": {
            "title": "$:/config/shortcuts-mac/new-tiddler",
            "text": "ctrl-N"
        },
        "$:/config/shortcuts-mac/save-wiki": {
            "title": "$:/config/shortcuts-mac/save-wiki",
            "text": "meta-S"
        },
        "$:/config/shortcuts-not-mac/bold": {
            "title": "$:/config/shortcuts-not-mac/bold",
            "text": "ctrl-B"
        },
        "$:/config/shortcuts-not-mac/italic": {
            "title": "$:/config/shortcuts-not-mac/italic",
            "text": "ctrl-I"
        },
        "$:/config/shortcuts-not-mac/underline": {
            "title": "$:/config/shortcuts-not-mac/underline",
            "text": "ctrl-U"
        },
        "$:/config/shortcuts-not-mac/new-image": {
            "title": "$:/config/shortcuts-not-mac/new-image",
            "text": "alt-I"
        },
        "$:/config/shortcuts-not-mac/new-journal": {
            "title": "$:/config/shortcuts-not-mac/new-journal",
            "text": "alt-J"
        },
        "$:/config/shortcuts-not-mac/new-tiddler": {
            "title": "$:/config/shortcuts-not-mac/new-tiddler",
            "text": "alt-N"
        },
        "$:/config/shortcuts/add-field": {
            "title": "$:/config/shortcuts/add-field",
            "text": "enter"
        },
        "$:/config/shortcuts/advanced-search": {
            "title": "$:/config/shortcuts/advanced-search",
            "text": "ctrl-shift-A"
        },
        "$:/config/shortcuts/advanced-search-sidebar": {
            "title": "$:/config/shortcuts/advanced-search-sidebar",
            "text": "alt-Enter"
        },
        "$:/config/shortcuts/cancel-edit-tiddler": {
            "title": "$:/config/shortcuts/cancel-edit-tiddler",
            "text": "escape"
        },
        "$:/config/shortcuts/change-sidebar-layout": {
            "title": "$:/config/shortcuts/change-sidebar-layout",
            "text": "shift-alt-Down"
        },
        "$:/config/shortcuts/delete-field": {
            "title": "$:/config/shortcuts/delete-field",
            "text": "shift-alt-D"
        },
        "$:/config/shortcuts/excise": {
            "title": "$:/config/shortcuts/excise",
            "text": "ctrl-E"
        },
        "$:/config/shortcuts/sidebar-search": {
            "title": "$:/config/shortcuts/sidebar-search",
            "text": "ctrl-shift-F"
        },
        "$:/config/shortcuts/heading-1": {
            "title": "$:/config/shortcuts/heading-1",
            "text": "ctrl-1"
        },
        "$:/config/shortcuts/heading-2": {
            "title": "$:/config/shortcuts/heading-2",
            "text": "ctrl-2"
        },
        "$:/config/shortcuts/heading-3": {
            "title": "$:/config/shortcuts/heading-3",
            "text": "ctrl-3"
        },
        "$:/config/shortcuts/heading-4": {
            "title": "$:/config/shortcuts/heading-4",
            "text": "ctrl-4"
        },
        "$:/config/shortcuts/heading-5": {
            "title": "$:/config/shortcuts/heading-5",
            "text": "ctrl-5"
        },
        "$:/config/shortcuts/heading-6": {
            "title": "$:/config/shortcuts/heading-6",
            "text": "ctrl-6"
        },
        "$:/config/shortcuts/input-accept": {
            "title": "$:/config/shortcuts/input-accept",
            "text": "Enter"
        },
        "$:/config/shortcuts/input-accept-variant": {
            "title": "$:/config/shortcuts/input-accept-variant",
            "text": "ctrl-Enter"
        },
        "$:/config/shortcuts/input-cancel": {
            "title": "$:/config/shortcuts/input-cancel",
            "text": "Escape"
        },
        "$:/config/shortcuts/input-down": {
            "title": "$:/config/shortcuts/input-down",
            "text": "Down"
        },
        "$:/config/shortcuts/input-tab-left": {
            "title": "$:/config/shortcuts/input-tab-left",
            "text": "alt-Left"
        },
        "$:/config/shortcuts/input-tab-right": {
            "title": "$:/config/shortcuts/input-tab-right",
            "text": "alt-Right"
        },
        "$:/config/shortcuts/input-up": {
            "title": "$:/config/shortcuts/input-up",
            "text": "Up"
        },
        "$:/config/shortcuts/layout-switcher": {
            "title": "$:/config/shortcuts/layout-switcher",
            "text": "ctrl-shift-L"
        },
        "$:/config/shortcuts/link": {
            "title": "$:/config/shortcuts/link",
            "text": "ctrl-L"
        },
        "$:/config/shortcuts/linkify": {
            "title": "$:/config/shortcuts/linkify",
            "text": "alt-shift-L"
        },
        "$:/config/shortcuts/list-bullet": {
            "title": "$:/config/shortcuts/list-bullet",
            "text": "ctrl-shift-L"
        },
        "$:/config/shortcuts/list-number": {
            "title": "$:/config/shortcuts/list-number",
            "text": "ctrl-shift-N"
        },
        "$:/config/shortcuts/mono-block": {
            "title": "$:/config/shortcuts/mono-block",
            "text": "ctrl-shift-M"
        },
        "$:/config/shortcuts/mono-line": {
            "title": "$:/config/shortcuts/mono-line",
            "text": "ctrl-M"
        },
        "$:/config/shortcuts/picture": {
            "title": "$:/config/shortcuts/picture",
            "text": "ctrl-shift-I"
        },
        "$:/config/shortcuts/preview": {
            "title": "$:/config/shortcuts/preview",
            "text": "alt-P"
        },
        "$:/config/shortcuts/quote": {
            "title": "$:/config/shortcuts/quote",
            "text": "ctrl-Q"
        },
        "$:/config/shortcuts/save-tiddler": {
            "title": "$:/config/shortcuts/save-tiddler",
            "text": "ctrl+enter"
        },
        "$:/config/shortcuts/save-wiki": {
            "title": "$:/config/shortcuts/save-wiki",
            "text": "ctrl-S"
        },
        "$:/config/shortcuts/stamp": {
            "title": "$:/config/shortcuts/stamp",
            "text": "ctrl-S"
        },
        "$:/config/shortcuts/strikethrough": {
            "title": "$:/config/shortcuts/strikethrough",
            "text": "ctrl-T"
        },
        "$:/config/shortcuts/subscript": {
            "title": "$:/config/shortcuts/subscript",
            "text": "ctrl-shift-B"
        },
        "$:/config/shortcuts/superscript": {
            "title": "$:/config/shortcuts/superscript",
            "text": "ctrl-shift-P"
        },
        "$:/config/shortcuts/toggle-sidebar": {
            "title": "$:/config/shortcuts/toggle-sidebar",
            "text": "alt-shift-S"
        },
        "$:/config/shortcuts/transcludify": {
            "title": "$:/config/shortcuts/transcludify",
            "text": "alt-shift-T"
        },
        "$:/config/ui/EditTemplate": {
            "title": "$:/config/ui/EditTemplate",
            "text": "$:/core/ui/EditTemplate"
        },
        "$:/config/ui/ViewTemplate": {
            "title": "$:/config/ui/ViewTemplate",
            "text": "$:/core/ui/ViewTemplate"
        },
        "$:/config/WikiParserRules/Inline/wikilink": {
            "title": "$:/config/WikiParserRules/Inline/wikilink",
            "text": "enable"
        },
        "$:/snippets/currpalettepreview": {
            "title": "$:/snippets/currpalettepreview",
            "text": "\\define resolve-colour(macrocall)\n\\import $:/core/macros/utils\n\\whitespace trim\n<$wikify name=\"name\" text=\"\"\"$macrocall$\"\"\">\n<<name>>\n</$wikify>\n\\end\n\\define swatchStyle()\nbackground-color: $(swatchColour)$;\n\\end\n\\define swatch-inner()\n<$set name=\"swatchColour\" value={{##$(colourResolved)$}}>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n\\end\n\\define swatch()\n<$set name=\"swatchColour\" value={{##$(colour)$}}>\n<$set name=\"swatchTitle\" value=<<colour>>>\n<$list filter=\"[<swatchColour>!prefix[<<colour ]!suffix[>>]]\" variable=\"ignore\">\n<div class=\"tc-swatch\" style=<<swatchStyle>> title=<<swatchTitle>>/>\n</$list>\n<$list filter=\"[<swatchColour>prefix[<<colour ]suffix[>>]]\" variable=\"ignore\">\n<$wikify name=\"colourResolved\" text=\"\"\"<$macrocall $name=\"resolve-colour\" macrocall=<<swatchColour>>/>\"\"\">\n<<swatch-inner>>\n</$wikify>\n</$list>\n</$set>\n</$set>\n\\end\n<div class=\"tc-swatches-horiz\"><$list filter=\"\nforeground\nbackground\nmuted-foreground\nprimary\npage-background\ntab-background\ntiddler-info-background\n\" variable=\"colour\"><<swatch>></$list></div>\n"
        },
        "$:/snippets/download-wiki-button": {
            "title": "$:/snippets/download-wiki-button",
            "text": "\\define lingo-base() $:/language/ControlPanel/Tools/Download/\n<$button class=\"tc-btn-big-green\">\n<$action-sendmessage $message=\"tm-download-file\" $param=\"$:/core/save/all\" filename=\"index.html\"/>\n<<lingo Full/Caption>> {{$:/core/images/save-button}}\n</$button>"
        },
        "$:/language": {
            "title": "$:/language",
            "text": "$:/languages/en-GB"
        },
        "$:/snippets/languageswitcher": {
            "title": "$:/snippets/languageswitcher",
            "text": "\\define flag-title()\n$(languagePluginTitle)$/icon\n\\end\n\n<$linkcatcher to=\"$:/language\">\n<div class=\"tc-chooser tc-language-chooser\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[description]]\">\n<$set name=\"cls\" filter=\"[all[current]field:title{$:/language}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link>\n<span class=\"tc-image-button\">\n<$set name=\"languagePluginTitle\" value=<<currentTiddler>>>\n<$transclude subtiddler=<<flag-title>>>\n<$list filter=\"[all[current]field:title[$:/languages/en-GB]]\">\n<$transclude tiddler=\"$:/languages/en-GB/icon\"/>\n</$list>\n</$transclude>\n</$set>\n</span>\n<$view field=\"description\">\n<$view field=\"name\">\n<$view field=\"title\"/>\n</$view>\n</$view>\n</$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/macros/CSS": {
            "title": "$:/core/macros/CSS",
            "tags": "$:/tags/Macro",
            "text": "\\define colour(name)\n<$transclude tiddler={{$:/palette}} index=\"$name$\"><$transclude tiddler=\"$:/palettes/Vanilla\" index=\"$name$\"><$transclude tiddler=\"$:/config/DefaultColourMappings/$name$\"/></$transclude></$transclude>\n\\end\n\n\\define color(name)\n<<colour $name$>>\n\\end\n\n\\define box-shadow(shadow)\n``\n  -webkit-box-shadow: $shadow$;\n     -moz-box-shadow: $shadow$;\n          box-shadow: $shadow$;\n``\n\\end\n\n\\define filter(filter)\n``\n  -webkit-filter: $filter$;\n     -moz-filter: $filter$;\n          filter: $filter$;\n``\n\\end\n\n\\define transition(transition)\n``\n  -webkit-transition: $transition$;\n     -moz-transition: $transition$;\n          transition: $transition$;\n``\n\\end\n\n\\define transform-origin(origin)\n``\n  -webkit-transform-origin: $origin$;\n     -moz-transform-origin: $origin$;\n          transform-origin: $origin$;\n``\n\\end\n\n\\define background-linear-gradient(gradient)\n``\nbackground-image: linear-gradient($gradient$);\nbackground-image: -o-linear-gradient($gradient$);\nbackground-image: -moz-linear-gradient($gradient$);\nbackground-image: -webkit-linear-gradient($gradient$);\nbackground-image: -ms-linear-gradient($gradient$);\n``\n\\end\n\n\\define column-count(columns)\n``\n-moz-column-count: $columns$;\n-webkit-column-count: $columns$;\ncolumn-count: $columns$;\n``\n\\end\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}} _canonical_uri={{$title$!!_canonical_uri}}/>\n\\end\n\n\\define if-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"match\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-no-sidebar(text)\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">$text$</$reveal>\n\\end\n\n\\define if-background-attachment(text)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" type=\"nomatch\" text=\"\">$text$</$reveal>\n\\end\n"
        },
        "$:/core/macros/colour-picker": {
            "title": "$:/core/macros/colour-picker",
            "tags": "$:/tags/Macro",
            "text": "\\define colour-picker-update-recent()\n<$action-listops\n\t$tiddler=\"$:/config/ColourPicker/Recent\"\n\t$subfilter=\"$(colour-picker-value)$ [list[$:/config/ColourPicker/Recent]remove[$(colour-picker-value)$]] +[limit[8]]\"\n/>\n\\end\n\n\\define colour-picker-inner(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(colour-picker-value)$\"\"\">\n\n$(colour-picker-update-recent)$\n\n$actions$\n\n<span style=\"display:inline-block; background-color: $(colour-picker-value)$; width: 100%; height: 100%; border-radius: 50%;\"/>\n\n</$button>\n\\end\n\n\\define colour-picker-recent-inner(actions)\n<$set name=\"colour-picker-value\" value=\"$(recentColour)$\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\\end\n\n\\define colour-picker-recent(actions)\n{{$:/language/ColourPicker/Recent}} <$list filter=\"[list[$:/config/ColourPicker/Recent]]\" variable=\"recentColour\">\n<$macrocall $name=\"colour-picker-recent-inner\" actions=\"\"\"$actions$\"\"\"/></$list>\n\\end\n\n\\define colour-picker(actions)\n<div class=\"tc-colour-chooser\">\n\n<$macrocall $name=\"colour-picker-recent\" actions=\"\"\"$actions$\"\"\"/>\n\n---\n\n<$list filter=\"LightPink Pink Crimson LavenderBlush PaleVioletRed HotPink DeepPink MediumVioletRed Orchid Thistle Plum Violet Magenta Fuchsia DarkMagenta Purple MediumOrchid DarkViolet DarkOrchid Indigo BlueViolet MediumPurple MediumSlateBlue SlateBlue DarkSlateBlue Lavender GhostWhite Blue MediumBlue MidnightBlue DarkBlue Navy RoyalBlue CornflowerBlue LightSteelBlue LightSlateGrey SlateGrey DodgerBlue AliceBlue SteelBlue LightSkyBlue SkyBlue DeepSkyBlue LightBlue PowderBlue CadetBlue Azure LightCyan PaleTurquoise Cyan Aqua DarkTurquoise DarkSlateGrey DarkCyan Teal MediumTurquoise LightSeaGreen Turquoise Aquamarine MediumAquamarine MediumSpringGreen MintCream SpringGreen MediumSeaGreen SeaGreen Honeydew LightGreen PaleGreen DarkSeaGreen LimeGreen Lime ForestGreen Green DarkGreen Chartreuse LawnGreen GreenYellow DarkOliveGreen YellowGreen OliveDrab Beige LightGoldenrodYellow Ivory LightYellow Yellow Olive DarkKhaki LemonChiffon PaleGoldenrod Khaki Gold Cornsilk Goldenrod DarkGoldenrod FloralWhite OldLace Wheat Moccasin Orange PapayaWhip BlanchedAlmond NavajoWhite AntiqueWhite Tan BurlyWood Bisque DarkOrange Linen Peru PeachPuff SandyBrown Chocolate SaddleBrown Seashell Sienna LightSalmon Coral OrangeRed DarkSalmon Tomato MistyRose Salmon Snow LightCoral RosyBrown IndianRed Red Brown FireBrick DarkRed Maroon White WhiteSmoke Gainsboro LightGrey Silver DarkGrey Grey DimGrey Black\" variable=\"colour-picker-value\">\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\n---\n\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" tag=\"input\" default=\"\" placeholder=\"\"/>\n<$edit-text tiddler=\"$:/config/ColourPicker/New\" type=\"color\" tag=\"input\"/>\n<$set name=\"colour-picker-value\" value={{$:/config/ColourPicker/New}}>\n<$macrocall $name=\"colour-picker-inner\" actions=\"\"\"$actions$\"\"\"/>\n</$set>\n\n</div>\n\n\\end\n"
        },
        "$:/core/macros/copy-to-clipboard": {
            "title": "$:/core/macros/copy-to-clipboard",
            "tags": "$:/tags/Macro",
            "text": "\\define copy-to-clipboard(src,class:\"tc-btn-invisible\",style)\n<$button class=<<__class__>> style=<<__style__>> message=\"tm-copy-to-clipboard\" param=<<__src__>> tooltip={{$:/language/Buttons/CopyToClipboard/Hint}}>\n{{$:/core/images/copy-clipboard}} <$text text={{$:/language/Buttons/CopyToClipboard/Caption}}/>\n</$button>\n\\end\n\n\\define copy-to-clipboard-above-right(src,class:\"tc-btn-invisible\",style)\n<div style=\"position: relative;\">\n<div style=\"position: absolute; bottom: 0; right: 0;\">\n<$macrocall $name=\"copy-to-clipboard\" src=<<__src__>> class=<<__class__>> style=<<__style__>>/>\n</div>\n</div>\n\\end\n\n"
        },
        "$:/core/macros/diff": {
            "title": "$:/core/macros/diff",
            "tags": "$:/tags/Macro",
            "text": "\\define compareTiddlerText(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle)\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>>>\n<$diff-text source=<<source>> dest=<<dest>>/>\n</$set>\n</$set>\n\\end\n\n\\define compareTiddlers(sourceTiddlerTitle,sourceSubTiddlerTitle,destTiddlerTitle,destSubTiddlerTitle,exclude)\n<table class=\"tc-diff-tiddlers\">\n<tbody>\n<$set name=\"sourceFields\" filter=\"[<__sourceTiddlerTitle__>fields[]sort[]]\">\n<$set name=\"destFields\" filter=\"[<__destSubTiddlerTitle__>subtiddlerfields<__destTiddlerTitle__>sort[]]\">\n<$list filter=\"[enlist<sourceFields>] [enlist<destFields>] -[enlist<__exclude__>] +[sort[]]\" variable=\"fieldName\">\n<tr>\n<th>\n<$text text=<<fieldName>>/> \n</th>\n<td>\n<$set name=\"source\" tiddler=<<__sourceTiddlerTitle__>> subtiddler=<<__sourceSubTiddlerTitle__>> field=<<fieldName>>>\n<$set name=\"dest\" tiddler=<<__destTiddlerTitle__>> subtiddler=<<__destSubTiddlerTitle__>> field=<<fieldName>>>\n<$diff-text source=<<source>> dest=<<dest>>>\n</$diff-text>\n</$set>\n</$set>\n</td>\n</tr>\n</$list>\n</$set>\n</$set>\n</tbody>\n</table>\n\\end\n"
        },
        "$:/core/macros/dumpvariables": {
            "title": "$:/core/macros/dumpvariables",
            "tags": "$:/tags/Macro",
            "text": "\\define dumpvariables()\n<ul>\n<$list filter=\"[variables[]]\" variable=\"varname\">\n<li>\n<strong><code><$text text=<<varname>>/></code></strong>:<br/>\n<$codeblock code={{{ [<varname>getvariable[]] }}}/>\n</li>\n</$list>\n</ul>\n\\end\n"
        },
        "$:/core/macros/export": {
            "title": "$:/core/macros/export",
            "tags": "$:/tags/Macro",
            "text": "\\define exportButtonFilename(baseFilename)\n$baseFilename$$(extension)$\n\\end\n\n\\define exportButton(exportFilter:\"[!is[system]sort[title]]\",lingoBase,baseFilename:\"tiddlers\")\n<span class=\"tc-popup-keep\"><$button popup=<<qualify \"$:/state/popup/export\">> tooltip={{$lingoBase$Hint}} aria-label={{$lingoBase$Caption}} class=<<tv-config-toolbar-class>> selectedClass=\"tc-selected\">\n<$list filter=\"[<tv-config-toolbar-icons>match[yes]]\">\n{{$:/core/images/export-button}}\n</$list>\n<$list filter=\"[<tv-config-toolbar-text>match[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$lingoBase$Caption}}/></span>\n</$list>\n</$button></span><$reveal state=<<qualify \"$:/state/popup/export\">> type=\"popup\" position=\"below\" animate=\"yes\">\n<div class=\"tc-drop-down\">\n<$set name=\"count\" value={{{ [subfilter<__exportFilter__>count[]] }}}>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Exporter]]\">\n<$list filter=\"[<currentTiddler>has[condition]subfilter{!!condition}limit[1]] ~[<currentTiddler>!has[condition]then[true]]\" variable=\"ignore\">\n<$set name=\"extension\" value={{!!extension}}>\n<$button class=\"tc-btn-invisible\">\n<$action-sendmessage $message=\"tm-download-file\" $param=<<currentTiddler>> exportFilter=<<__exportFilter__>> filename=<<exportButtonFilename \"\"\"$baseFilename$\"\"\">>/>\n<$action-deletetiddler $tiddler=<<qualify \"$:/state/popup/export\">>/>\n<$transclude field=\"description\"/>\n</$button>\n</$set>\n</$list>\n</$list>\n</$set>\n</div>\n</$reveal>\n\\end\n"
        },
        "$:/core/macros/image-picker": {
            "title": "$:/core/macros/image-picker",
            "created": "20170715180840889",
            "modified": "20170715180914005",
            "tags": "$:/tags/Macro",
            "type": "text/vnd.tiddlywiki",
            "text": "\\define image-picker-thumbnail(actions)\n<$button tag=\"a\" tooltip=\"\"\"$(imageTitle)$\"\"\">\n$actions$\n<$transclude tiddler=<<imageTitle>>/>\n</$button>\n\\end\n\n\\define image-picker-list(filter,actions)\n<$list filter=\"\"\"$filter$\"\"\" variable=\"imageTitle\">\n<$macrocall $name=\"image-picker-thumbnail\" actions=\"\"\"$actions$\"\"\"/>\n</$list>\n\\end\n\n\\define image-picker(actions,filter:\"[all[shadows+tiddlers]is[image]] -[type[application/pdf]] +[!has[draft.of]$subfilter$sort[title]]\",subfilter:\"\")\n<div class=\"tc-image-chooser\">\n<$vars state-system=<<qualify \"$:/state/image-picker/system\">>>\n<$checkbox tiddler=<<state-system>> field=\"text\" checked=\"show\" unchecked=\"hide\" default=\"hide\">\n{{$:/language/SystemTiddlers/Include/Prompt}}\n</$checkbox>\n<$reveal state=<<state-system>> type=\"match\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$ +[!is[system]]\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n<$reveal state=<<state-system>> type=\"nomatch\" text=\"hide\" default=\"hide\" tag=\"div\">\n<$macrocall $name=\"image-picker-list\" filter=\"\"\"$filter$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</$reveal>\n</$vars>\n</div>\n\\end\n\n\\define image-picker-include-tagged-images(actions)\n<$macrocall $name=\"image-picker\" filter=\"[all[shadows+tiddlers]is[image]] [all[shadows+tiddlers]tag[$:/tags/Image]] -[type[application/pdf]] +[!has[draft.of]sort[title]]\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n"
        },
        "$:/core/macros/keyboard-driven-input": {
            "title": "$:/core/macros/keyboard-driven-input",
            "tags": "$:/tags/Macro",
            "text": "\\define change-input-tab(stateTitle,tag,beforeafter,defaultState,actions)\n<$set name=\"tabsList\" filter=\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]]\">\n<$vars currentState={{{ [<__stateTitle__>!is[missing]get[text]] ~[<__defaultState__>] }}} firstTab={{{ [enlist<tabsList>nth[1]] }}} lastTab={{{ [enlist<tabsList>last[]] }}}>\n<$set name=\"nextTab\" value={{{ [all[shadows+tiddlers]tag<__tag__>!has[draft.of]$beforeafter$<currentState>] ~[[$beforeafter$]removeprefix[after]suffix[]addprefix<firstTab>] ~[[$beforeafter$]removeprefix[before]suffix[]addprefix<lastTab>] }}}>\n<$action-setfield $tiddler=<<__stateTitle__>> text=<<nextTab>>/>\n$actions$\n</$set>\n</$vars>\n</$set>\n\\end\n\n\\define keyboard-input-actions()\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>get<__field__>] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__storeTitle__>> text={{{ [<__tiddler__>getindex<__index__>] }}}/>\n</$list>\n\\end\n\n\\define input-next-actions-inner()\n<$list filter=\"[<nextItem>minlength[1]]\" variable=\"ignore\">\n<$action-setfield $tiddler=<<__selectionStateTitle__>> text=<<nextItem>>/>\n<$list filter=\"[<__index__>match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $field=<<__field__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$list filter=\"[<__index__>!match[]]\">\n<$action-setfield $tiddler=<<__tiddler__>> $index=<<__index__>> $value={{{ [<nextItem>] +[splitregexp[(?:.(?!-))+$]] }}}/>\n</$list>\n<$action-setfield $tiddler=<<__refreshTitle__>> text=\"yes\"/>\n</$list>\n\\end\n\n\\define input-next-actions(afterOrBefore:\"after\",reverse:\"\")\n<$list filter=\"[<__storeTitle__>get[text]minlength<__filterMinLength__>] [<__filterMinLength__>match[0]] +[limit[1]]\" variable=\"ignore\">\n<$vars userInput={{{ [<__storeTitle__>get[text]] }}} selectedItem={{{ [<__selectionStateTitle__>get[text]] }}}>\n<$set name=\"configTiddler\" value={{{ [subfilter<__configTiddlerFilter__>] }}}>\n<$vars primaryListFilter={{{ [<configTiddler>get<__firstSearchFilterField__>] }}} secondaryListFilter={{{ [<configTiddler>get<__secondSearchFilterField__>] }}}>\n<$set name=\"filteredList\" filter=\"[subfilter<primaryListFilter>addsuffix[-primaryList]] =[subfilter<secondaryListFilter>addsuffix[-secondaryList]]\">\n<$vars nextItem={{{ [enlist<filteredList>$afterOrBefore$<selectedItem>] ~[enlist<filteredList>$reverse$nth[1]] }}} firstItem={{{ [enlist<filteredList>nth[1]] }}} lastItem={{{ [enlist<filteredList>last[]] }}}>\n<$list filter=\"[<selectedItem>match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[before]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<lastItem>!match<firstItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [[$afterOrBefore$]match[after]then<userInput>addsuffix[-userInput]] ~[<nextItem>] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>match<firstItem>match<lastItem>]\" variable=\"ignore\">\n<$set name=\"nextItem\" value={{{ [<userInput>addsuffix[-userInput]] }}}>\n<<input-next-actions-inner>>\n</$set>\n</$list>\n<$list filter=\"[<selectedItem>!match<firstItem>!match<lastItem>]\" variable=\"ignore\">\n<<input-next-actions-inner>>\n</$list>\n</$vars>\n</$set>\n</$vars>\n</$set>\n</$vars>\n</$list>\n\\end\n\n\\define keyboard-driven-input(tiddler,storeTitle,field:\"text\",index:\"\",tag:\"input\",type,focus:\"\",inputAcceptActions,inputAcceptVariantActions,inputCancelActions,placeholder:\"\",default:\"\",class,focusPopup,rows,minHeight,tabindex,size,autoHeight,filterMinLength:\"0\",refreshTitle,selectionStateTitle,cancelPopups:\"\",configTiddlerFilter,firstSearchFilterField:\"first-search-filter\",secondSearchFilterField:\"second-search-filter\")\n\\whitespace trim\n<$keyboard key=\"((input-accept))\" actions=<<__inputAcceptActions__>>>\n<$keyboard key=\"((input-accept-variant))\" actions=<<__inputAcceptVariantActions__>>>\n<$keyboard key=\"((input-up))\" actions=<<input-next-actions \"before\" \"reverse[]\">>>\n<$keyboard key=\"((input-down))\" actions=<<input-next-actions>>>\n<$keyboard key=\"((input-cancel))\" actions=<<__inputCancelActions__>>>\n<$edit-text tiddler=<<__tiddler__>> field=<<__field__>> index=<<__index__>> \n\t\tinputActions=<<keyboard-input-actions>> tag=<<__tag__>> class=<<__class__>> \n\t\tplaceholder=<<__placeholder__>> default=<<__default__>> focusPopup=<<__focusPopup__>> \n\t\tfocus=<<__focus__>> type=<<__type__>> rows=<<__rows__>> minHeight=<<__minHeight__>> \n\t\ttabindex=<<__tabindex__>> size=<<__size__>> autoHeight=<<__autoHeight__>> \n\t\trefreshTitle=<<__refreshTitle__>> cancelPopups=<<__cancelPopups__>>/>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n</$keyboard>\n\\end\n"
        },
        "$:/core/macros/lingo": {
            "title": "$:/core/macros/lingo",
            "tags": "$:/tags/Macro",
            "text": "\\define lingo-base()\n$:/language/\n\\end\n\n\\define lingo(title)\n{{$(lingo-base)$$title$}}\n\\end\n"
        },
        "$:/core/macros/list": {
            "title": "$:/core/macros/list",
            "tags": "$:/tags/Macro",
            "text": "\\define list-links(filter,type:\"ul\",subtype:\"li\",class:\"\",emptyMessage)\n\\whitespace trim\n<$type$ class=\"$class$\">\n<$list filter=\"$filter$\" emptyMessage=<<__emptyMessage__>>>\n<$subtype$>\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$subtype$>\n</$list>\n</$type$>\n\\end\n\n\\define list-links-draggable-drop-actions()\n<$action-listops $tiddler=<<targetTiddler>> $field=<<targetField>> $subfilter=\"+[insertbefore:currentTiddler<actionTiddler>]\"/>\n\\end\n\n\\define list-links-draggable(tiddler,field:\"list\",type:\"ul\",subtype:\"li\",class:\"\",itemTemplate)\n\\whitespace trim\n<span class=\"tc-links-draggable-list\">\n<$vars targetTiddler=\"\"\"$tiddler$\"\"\" targetField=\"\"\"$field$\"\"\">\n<$type$ class=\"$class$\">\n<$list filter=\"[list[$tiddler$!!$field$]]\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"\"\"$subtype$\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\"/>\n<div>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$transclude field=\"caption\">\n<$view field=\"title\"/>\n</$transclude>\n</$link>\n</$transclude>\n</div>\n</$droppable>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=<<list-links-draggable-drop-actions>> tag=\"div\" enable=<<tv-enable-drag-and-drop>>>\n<div class=\"tc-droppable-placeholder\">\n{{$:/core/images/blank}}\n</div>\n<div style=\"height:0.5em;\"/>\n</$droppable>\n</$tiddler>\n</$type$>\n</$vars>\n</span>\n\\end\n\n\\define list-tagged-draggable-drop-actions(tag)\n<!-- Save the current ordering of the tiddlers with this tag -->\n<$set name=\"order\" filter=\"[<__tag__>tagging[]]\">\n<!-- Remove any list-after or list-before fields from the tiddlers with this tag -->\n<$list filter=\"[<__tag__>tagging[]]\">\n<$action-deletefield $field=\"list-before\"/>\n<$action-deletefield $field=\"list-after\"/>\n</$list>\n<!-- Save the new order to the Tag Tiddler -->\n<$action-listops $tiddler=<<__tag__>> $field=\"list\" $filter=\"+[enlist<order>] +[insertbefore:currentTiddler<actionTiddler>]\"/>\n<!-- Make sure the newly added item has the right tag -->\n<!-- Removing this line makes dragging tags within the dropdown work as intended -->\n<!--<$action-listops $tiddler=<<actionTiddler>> $tags=<<__tag__>>/>-->\n<!-- Using the following 5 lines as replacement makes dragging titles from outside into the dropdown apply the tag -->\n<$list filter=\"[<actionTiddler>!contains:tags<__tag__>]\">\n<$fieldmangler tiddler=<<actionTiddler>>>\n<$action-sendmessage $message=\"tm-add-tag\" $param=<<__tag__>>/>\n</$fieldmangler>\n</$list>\n</$set>\n\\end\n\n\\define list-tagged-draggable(tag,subFilter,emptyMessage,itemTemplate,elementTag:\"div\",storyview:\"\")\n\\whitespace trim\n<span class=\"tc-tagged-draggable-list\">\n<$set name=\"tag\" value=<<__tag__>>>\n<$list filter=\"[<__tag__>tagging[]$subFilter$]\" emptyMessage=<<__emptyMessage__>> storyview=<<__storyview__>>>\n<$elementTag$ class=\"tc-menu-list-item\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$>\n<$transclude tiddler=\"\"\"$itemTemplate$\"\"\">\n<$link to={{!!title}}>\n<$view field=\"title\"/>\n</$link>\n</$transclude>\n</$elementTag$>\n</$droppable>\n</$elementTag$>\n</$list>\n<$tiddler tiddler=\"\">\n<$droppable actions=\"\"\"<$macrocall $name=\"list-tagged-draggable-drop-actions\" tag=<<__tag__>>/>\"\"\" enable=<<tv-enable-drag-and-drop>>>\n<$elementTag$ class=\"tc-droppable-placeholder\"/>\n<$elementTag$ style=\"height:0.5em;\">\n</$elementTag$>\n</$droppable>\n</$tiddler>\n</$set>\n</span>\n\\end\n"
        },
        "$:/core/macros/tabs": {
            "title": "$:/core/macros/tabs",
            "tags": "$:/tags/Macro",
            "text": "\\define tabs(tabsList,default,state:\"$:/state/tab\",class,template,buttonTemplate,retain,actions,explicitState)\n<$set name=\"qualifiedState\" value=<<qualify \"$state$\">>>\n<$vars tabsState={{{ [<__explicitState__>minlength[1]] ~[<qualifiedState>] }}}>\n<div class=\"tc-tab-set $class$\">\n<div class=\"tc-tab-buttons $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\" storyview=\"pop\"><$set name=\"save-currentTiddler\" value=<<currentTiddler>>><$tiddler tiddler=<<currentTab>>><$button set=<<tabsState>> setTo=<<currentTab>> default=\"$default$\" selectedClass=\"tc-tab-selected\" tooltip={{!!tooltip}}>\n<$tiddler tiddler=<<save-currentTiddler>>>\n<$set name=\"tv-wikilinks\" value=\"no\">\n<$transclude tiddler=\"$buttonTemplate$\" mode=\"inline\">\n<$transclude tiddler=<<currentTab>> field=\"caption\">\n<$macrocall $name=\"currentTab\" $type=\"text/plain\" $output=\"text/plain\"/>\n</$transclude>\n</$transclude>\n</$set></$tiddler>$actions$</$button></$tiddler></$set></$list>\n</div>\n<div class=\"tc-tab-divider $class$\"/>\n<div class=\"tc-tab-content $class$\">\n<$list filter=\"$tabsList$\" variable=\"currentTab\">\n\n<$reveal type=\"match\" state=<<tabsState>> text=<<currentTab>> default=\"$default$\" retain=\"\"\"$retain$\"\"\">\n\n<$transclude tiddler=\"$template$\" mode=\"block\">\n\n<$transclude tiddler=<<currentTab>> mode=\"block\"/>\n\n</$transclude>\n\n</$reveal>\n\n</$list>\n</div>\n</div>\n</$vars>\n</$set>\n\\end\n"
        },
        "$:/core/macros/tag-picker": {
            "title": "$:/core/macros/tag-picker",
            "tags": "$:/tags/Macro",
            "first-search-filter": "[tags[]!is[system]search:title<userInput>sort[]]",
            "second-search-filter": "[tags[]is[system]search:title<userInput>sort[]]",
            "text": "\\define get-tagpicker-focus-selector() [data-tiddler-title=\"$(currentTiddlerCSSEscaped)$\"] .tc-add-tag-name input\n\n\\define delete-tag-state-tiddlers() <$action-deletetiddler $filter=\"[<newTagNameTiddler>] [<storeTitle>] [<tagSelectionState>]\"/>\n\n\\define add-tag-actions(actions,tagField:\"tags\")\n<$set name=\"tag\" value={{{ [<__tiddler__>get[text]] }}}>\n<$list filter=\"[<saveTiddler>!contains:$tagField$<tag>!match[]]\" variable=\"ignore\" emptyMessage=\"\"\"\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"-[<tag>]\"/>\n\"\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n</$list>\n</$set>\n<<delete-tag-state-tiddlers>>\n<$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n\\end\n\n\\define clear-tags-actions-inner()\n<$list filter=\"[<storeTitle>has[text]] [<newTagNameTiddler>has[text]]\" variable=\"ignore\" emptyMessage=\"\"\"<<cancel-delete-tiddler-actions \"cancel\">>\"\"\">\n<<delete-tag-state-tiddlers>>\n</$list>\n\\end\n\n\\define clear-tags-actions()\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<newTagNameTiddler>get[text]!match<userInput>]\" emptyMessage=\"\"\"<<clear-tags-actions-inner>>\"\"\">\n<$action-setfield $tiddler=<<newTagNameTiddler>> text=<<userInput>>/><$action-setfield $tiddler=<<refreshTitle>> text=\"yes\"/>\n</$list>\n</$set>\n\\end\n\n\\define tag-picker-inner(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars newTagNameInputTiddlerQualified=<<qualify \"$:/temp/NewTagName/input\">> newTagNameSelectionTiddlerQualified=<<qualify \"$:/temp/NewTagName/selected-item\">> fallbackTarget={{$(palette)$##tag-background}} colourA={{$(palette)$##foreground}} colourB={{$(palette)$##background}}>\n<$vars storeTitle={{{ [<newTagNameInputTiddler>!match[]] ~[<newTagNameInputTiddlerQualified>] }}} tagSelectionState={{{ [<newTagNameSelectionTiddler>!match[]] ~[<newTagNameSelectionTiddlerQualified>] }}}>\n<$vars refreshTitle=<<qualify \"$:/temp/NewTagName/refresh\">> nonSystemTagsFilter=\"[tags[]!is[system]search:title<userInput>sort[]]\" systemTagsFilter=\"[tags[]is[system]search:title<userInput>sort[]]\">\n<div class=\"tc-edit-add-tag\">\n<div>\n<span class=\"tc-add-tag-name tc-small-gap-right\">\n<$macrocall $name=\"keyboard-driven-input\" tiddler=<<newTagNameTiddler>> storeTitle=<<storeTitle>> refreshTitle=<<refreshTitle>>\n\t\tselectionStateTitle=<<tagSelectionState>> inputAcceptActions=\"\"\"<$macrocall $name=\"add-tag-actions\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\"\n\t\tinputCancelActions=<<clear-tags-actions>> tag=\"input\" placeholder={{$:/language/EditTemplate/Tags/Add/Placeholder}}\n\t\tfocusPopup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-edit-texteditor tc-popup-handle\" tabindex=<<tabIndex>> \n\t\tfocus={{{ [{$:/config/AutoFocus}match[tags]then[true]] ~[[false]] }}} filterMinLength={{$:/config/Tags/MinLength}} \n\t\tcancelPopups=<<cancelPopups>> configTiddlerFilter=\"[[$:/core/macros/tag-picker]]\"/>\n</span><$button popup=<<qualify \"$:/state/popup/tags-auto-complete\">> class=\"tc-btn-invisible tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/Dropdown/Hint}} aria-label={{$:/language/EditTemplate/Tags/Dropdown/Caption}}>{{$:/core/images/down-arrow}}</$button><$reveal state=<<storeTitle>> type=\"nomatch\" text=\"\"><$button class=\"tc-btn-invisible tc-small-gap tc-btn-dropdown\" tooltip={{$:/language/EditTemplate/Tags/ClearInput/Hint}} aria-label={{$:/language/EditTemplate/Tags/ClearInput/Caption}}>{{$:/core/images/close-button}}<<delete-tag-state-tiddlers>></$button></$reveal><span class=\"tc-add-tag-button tc-small-gap-left\">\n<$set name=\"tag\" value={{{ [<newTagNameTiddler>get[text]] }}}>\n<$button set=<<newTagNameTiddler>> setTo=\"\" class=\"\">\n<$action-listops $tiddler=<<saveTiddler>> $field=<<__tagField__>> $subfilter=\"[<tag>]\"/>\n$actions$\n<$set name=\"currentTiddlerCSSEscaped\" value={{{ [<saveTiddler>escapecss[]] }}}>\n<<delete-tag-state-tiddlers>><$action-sendmessage $message=\"tm-focus-selector\" $param=<<get-tagpicker-focus-selector>>/>\n</$set>\n{{$:/language/EditTemplate/Tags/Add/Button}}\n</$button>\n</$set>\n</span>\n</div>\n<div class=\"tc-block-dropdown-wrapper\">\n<$reveal state=<<qualify \"$:/state/popup/tags-auto-complete\">> type=\"nomatch\" text=\"\" default=\"\">\n<div class=\"tc-block-dropdown tc-block-tags-dropdown\">\n<$set name=\"userInput\" value={{{ [<storeTitle>get[text]] }}}>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<nonSystemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-primaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n<hr>\n<$list filter=\"[<userInput>minlength{$:/config/Tags/MinLength}limit[1]]\" emptyMessage=\"\"\"<div class=\"tc-search-results\">{{$:/language/Search/Search/TooShort}}</div>\"\"\" variable=\"listItem\">\n<$list filter=<<systemTagsFilter>> variable=\"tag\">\n<$list filter=\"[<tag>addsuffix[-secondaryList]] -[<tagSelectionState>get[text]]\" emptyMessage=\"\"\"<$vars button-classes=\"tc-btn-invisible tc-tag-button-selected\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\"\"\">\n<$vars button-classes=\"tc-btn-invisible\" actions=<<__actions__>> tagField=<<__tagField__>> currentTiddler=<<tag>>>{{||$:/core/ui/TagPickerTagTemplate}}</$vars>\n</$list>\n</$list></$list>\n</$set>\n</div>\n</$reveal>\n</div>\n</div>\n</$vars>\n</$vars>\n</$vars>\n\\end\n\\define tag-picker(actions,tagField:\"tags\")\n\\whitespace trim\n<$vars saveTiddler=<<currentTiddler>> palette={{$:/palette}}>\n<$list filter=\"[<newTagNameTiddler>match[]]\" emptyMessage=\"\"\"<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\"\"\">\n<$set name=\"newTagNameTiddler\" value=<<qualify \"$:/temp/NewTagName\">>>\n<$macrocall $name=\"tag-picker-inner\" actions=<<__actions__>> tagField=<<__tagField__>>/>\n</$set>\n</$list>\n</$vars>\n\\end\n"
        },
        "$:/core/macros/tag": {
            "title": "$:/core/macros/tag",
            "tags": "$:/tags/Macro",
            "text": "\\define tag-pill-styles()\nbackground-color:$(backgroundColor)$;\nfill:$(foregroundColor)$;\ncolor:$(foregroundColor)$;\n\\end\n\n\\define tag-pill-inner(tag,icon,colour,fallbackTarget,colourA,colourB,element-tag,element-attributes,actions)\n<$vars foregroundColor=<<contrastcolour target:\"\"\"$colour$\"\"\" fallbackTarget:\"\"\"$fallbackTarget$\"\"\" colourA:\"\"\"$colourA$\"\"\" colourB:\"\"\"$colourB$\"\"\">> backgroundColor=\"\"\"$colour$\"\"\">\n<$element-tag$ $element-attributes$ class=\"tc-tag-label tc-btn-invisible\" style=<<tag-pill-styles>>>\n$actions$<$transclude tiddler=\"\"\"$icon$\"\"\"/><$view tiddler=<<__tag__>> field=\"title\" format=\"text\" />\n</$element-tag$>\n</$vars>\n\\end\n\n\\define tag-pill-body(tag,icon,colour,palette,element-tag,element-attributes,actions)\n<$macrocall $name=\"tag-pill-inner\" tag=<<__tag__>> icon=\"\"\"$icon$\"\"\" colour=\"\"\"$colour$\"\"\" fallbackTarget={{$palette$##tag-background}} colourA={{$palette$##foreground}} colourB={{$palette$##background}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n\\end\n\n\\define tag-pill(tag,element-tag:\"span\",element-attributes:\"\",actions:\"\")\n<span class=\"tc-tag-list-item\">\n<$macrocall $name=\"tag-pill-body\" tag=<<__tag__>> icon={{{ [<__tag__>get[icon]] }}} colour={{{ [<__tag__>get[color]] }}} palette={{$:/palette}} element-tag=\"\"\"$element-tag$\"\"\" element-attributes=\"\"\"$element-attributes$\"\"\" actions=\"\"\"$actions$\"\"\"/>\n</span>\n\\end\n\n\\define tag(tag)\n{{$tag$||$:/core/ui/TagTemplate}}\n\\end\n"
        },
        "$:/core/macros/thumbnails": {
            "title": "$:/core/macros/thumbnails",
            "tags": "$:/tags/Macro",
            "text": "\\define thumbnail(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<$link to=\"\"\"$link$\"\"\"><div class=\"tc-thumbnail-wrapper\">\n<div class=\"tc-thumbnail-image\" style=\"width:$width$px;height:$height$px;\"><$reveal type=\"nomatch\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" style=\"width:$width$px;height:$height$px;\">\n[img[$image$]]\n</$reveal><$reveal type=\"match\" text=\"\" default=\"\"\"$image$\"\"\" tag=\"div\" class=\"tc-thumbnail-background\" style=\"width:$width$px;height:$height$px;background-color:$background-color$;\"></$reveal></div><div class=\"tc-thumbnail-icon\" style=\"fill:$color$;color:$color$;\">\n$icon$\n</div><div class=\"tc-thumbnail-caption\">\n$caption$\n</div>\n</div></$link>\n\\end\n\n\\define thumbnail-right(link,icon,color,background-color,image,caption,width:\"280\",height:\"157\")\n<div class=\"tc-thumbnail-right-wrapper\"><<thumbnail \"\"\"$link$\"\"\" \"\"\"$icon$\"\"\" \"\"\"$color$\"\"\" \"\"\"$background-color$\"\"\" \"\"\"$image$\"\"\" \"\"\"$caption$\"\"\" \"\"\"$width$\"\"\" \"\"\"$height$\"\"\">></div>\n\\end\n\n\\define list-thumbnails(filter,width:\"280\",height:\"157\")\n<$list filter=\"\"\"$filter$\"\"\"><$macrocall $name=\"thumbnail\" link={{!!link}} icon={{!!icon}} color={{!!color}} background-color={{!!background-color}} image={{!!image}} caption={{!!caption}} width=\"\"\"$width$\"\"\" height=\"\"\"$height$\"\"\"/></$list>\n\\end\n"
        },
        "$:/core/macros/timeline": {
            "title": "$:/core/macros/timeline",
            "created": "20141212105914482",
            "modified": "20141212110330815",
            "tags": "$:/tags/Macro",
            "text": "\\define timeline-title()\n\\whitespace trim\n<!-- Override this macro with a global macro \n     of the same name if you need to change \n     how titles are displayed on the timeline \n     -->\n<$view field=\"title\"/>\n\\end\n\\define timeline(limit:\"100\",format:\"DDth MMM YYYY\",subfilter:\"\",dateField:\"modified\")\n<div class=\"tc-timeline\">\n<$list filter=\"[!is[system]$subfilter$has[$dateField$]!sort[$dateField$]limit[$limit$]eachday[$dateField$]]\">\n<div class=\"tc-menu-list-item\">\n<$view field=\"$dateField$\" format=\"date\" template=\"$format$\"/>\n<$list filter=\"[sameday:$dateField${!!$dateField$}!is[system]$subfilter$!sort[$dateField$]]\">\n<div class=\"tc-menu-list-subitem\">\n<$link to={{!!title}}><<timeline-title>></$link>\n</div>\n</$list>\n</div>\n</$list>\n</div>\n\\end\n"
        },
        "$:/core/macros/toc": {
            "title": "$:/core/macros/toc",
            "tags": "$:/tags/Macro",
            "text": "\\define toc-caption()\n<$set name=\"tv-wikilinks\" value=\"no\">\n  <$transclude field=\"caption\">\n    <$view field=\"title\"/>\n  </$transclude>\n</$set>\n\\end\n\n\\define toc-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<ol class=\"tc-toc\">\n  <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n    <$vars item=<<currentTiddler>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n      <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n        <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n          <li class=<<toc-item-class>>>\n            <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=\"<$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}><$view field='caption'><$view field='title'/></$view></$link>\">\n              <<toc-caption>>\n            </$list>\n            <$macrocall $name=\"toc-body\" tag=<<item>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n          </li>\n        </$set>\n      </$set>\n    </$vars>\n  </$list>\n</ol>\n\\end\n\n\\define toc(tag,sort:\"\",itemClassFilter:\"\")\n<$macrocall $name=\"toc-body\"  tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> />\n\\end\n\n\\define toc-linked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n    <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n      <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n        </$button>\n      </$reveal>\n      <<toc-caption>>\n    </$link>\n    <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n      <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n    </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<!-- helper function -->\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n      <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/right-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n          {{$:/core/images/down-arrow}}\n          <<toc-caption>>\n        </$button>\n      </$reveal>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-expandable-empty-message()\n<$macrocall $name=\"toc-linked-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-expandable(tag,sort:\"\",itemClassFilter:\"\",exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n  <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n    <ol class=\"tc-toc toc-expandable\">\n      <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n        <$list filter=\"[all[current]toc-link[no]]\" emptyMessage=<<toc-expandable-empty-message>> >\n          <$macrocall $name=\"toc-unlinked-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"\"\"itemClassFilter\"\"\" exclude=<<excluded>> path=<<path>> />\n        </$list>\n      </$list>\n    </ol>\n  </$set>\n</$vars>\n\\end\n\n\\define toc-linked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\" >\n    <li class=<<toc-item-class>>>\n      <$link to={{{ [<currentTiddler>get[target]else<currentTiddler>] }}}>\n          <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button>\">\n          <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n            <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/right-arrow}}\n            </$button>\n          </$reveal>\n          <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n            <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n              {{$:/core/images/down-arrow}}\n            </$button>\n          </$reveal>\n        </$list>\n        <<toc-caption>>\n      </$link>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-unlinked-selective-expandable-body(tag,sort:\"\",itemClassFilter,exclude,path)\n<$qualify name=\"toc-state\" title={{{ [[$:/state/toc]addsuffix<__path__>addsuffix[-]addsuffix<currentTiddler>] }}}>\n  <$set name=\"toc-item-class\" filter=<<__itemClassFilter__>> emptyValue=\"toc-item-selected\" value=\"toc-item\">\n    <li class=<<toc-item-class>>>\n      <$list filter=\"[all[current]tagging[]$sort$limit[1]]\" variable=\"ignore\" emptyMessage=\"<$button class='tc-btn-invisible'>{{$:/core/images/blank}}</$button> <$view field='caption'><$view field='title'/></$view>\">\n        <$reveal type=\"nomatch\" stateTitle=<<toc-state>> text=\"open\">\n          <$button setTitle=<<toc-state>> setTo=\"open\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/right-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n        <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n          <$button setTitle=<<toc-state>> setTo=\"close\" class=\"tc-btn-invisible tc-popup-keep\">\n            {{$:/core/images/down-arrow}}\n            <<toc-caption>>\n          </$button>\n        </$reveal>\n      </$list>\n      <$reveal type=\"match\" stateTitle=<<toc-state>> text=\"open\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<currentTiddler>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<__exclude__>> path=<<__path__>>/>\n      </$reveal>\n    </li>\n  </$set>\n</$qualify>\n\\end\n\n\\define toc-selective-expandable-empty-message()\n<$macrocall $name=\"toc-linked-selective-expandable-body\" tag=<<tag>> sort=<<sort>> itemClassFilter=<<itemClassFilter>> exclude=<<excluded>> path=<<path>>/>\n\\end\n\n\\define toc-selective-expandable(tag,sort:\"\",itemClassFilter,exclude,path)\n<$vars tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> path={{{ [<__path__>addsuffix[/]addsuffix<__tag__>] }}}>\n  <$set name=\"excluded\" filter=\"\"\"[enlist<__exclude__>] [<__tag__>]\"\"\">\n    <ol class=\"tc-toc toc-selective-expandable\">\n      <$list filter=\"\"\"[all[shadows+tiddlers]tag<__tag__>!has[draft.of]$sort$] -[<__tag__>] -[enlist<__exclude__>]\"\"\">\n        <$list filter=\"[all[current]toc-link[no]]\" variable=\"ignore\" emptyMessage=<<toc-selective-expandable-empty-message>> >\n          <$macrocall $name=\"toc-unlinked-selective-expandable-body\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=<<__itemClassFilter__>> exclude=<<excluded>> path=<<path>>/>\n        </$list>\n      </$list>\n    </ol>\n  </$set>\n</$vars>\n\\end\n\n\\define toc-tabbed-external-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$tiddler tiddler={{{ [<__selectedTiddler__>get[text]] }}}>\n  <div class=\"tc-tabbed-table-of-contents\">\n    <$linkcatcher to=<<__selectedTiddler__>>>\n      <div class=\"tc-table-of-contents\">\n        <$macrocall $name=\"toc-selective-expandable\" tag=<<__tag__>> sort=<<__sort__>> itemClassFilter=\"[all[current]] -[<__selectedTiddler__>get[text]]\"/>\n      </div>\n    </$linkcatcher>\n    <div class=\"tc-tabbed-table-of-contents-content\">\n      <$reveal stateTitle=<<__selectedTiddler__>> type=\"nomatch\" text=\"\">\n        <$transclude mode=\"block\" tiddler=<<__template__>>>\n          <h1><<toc-caption>></h1>\n          <$transclude mode=\"block\">$missingText$</$transclude>\n        </$transclude>\n      </$reveal>\n      <$reveal stateTitle=<<__selectedTiddler__>> type=\"match\" text=\"\">\n        $unselectedText$\n      </$reveal>\n    </div>\n  </div>\n</$tiddler>\n\\end\n\n\\define toc-tabbed-internal-nav(tag,sort:\"\",selectedTiddler:\"$:/temp/toc/selectedTiddler\",unselectedText,missingText,template:\"\")\n<$linkcatcher to=<<__selectedTiddler__>>>\n  <$macrocall $name=\"toc-tabbed-external-nav\" tag=<<__tag__>> sort=<<__sort__>> selectedTiddler=<<__selectedTiddler__>> unselectedText=<<__unselectedText__>> missingText=<<__missingText__>> template=<<__template__>>/>\n</$linkcatcher>\n\\end\n\n"
        },
        "$:/core/macros/translink": {
            "title": "$:/core/macros/translink",
            "tags": "$:/tags/Macro",
            "text": "\\define translink(title,mode:\"block\")\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: black; foreground; white;\">\n<$link to=\"\"\"$title$\"\"\">\n<$text text=\"\"\"$title$\"\"\"/>\n</$link>\n<div style=\"border:1px solid #ccc; padding: 0.5em; background: white; foreground; black;\">\n<$transclude tiddler=\"\"\"$title$\"\"\" mode=\"$mode$\">\n\"<$text text=\"\"\"$title$\"\"\"/>\" is missing\n</$transclude>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/tree": {
            "title": "$:/core/macros/tree",
            "tags": "$:/tags/Macro",
            "text": "\\define leaf-link(full-title,chunk,separator: \"/\")\n<$link to=<<__full-title__>>><$text text=<<__chunk__>>/></$link>\n\\end\n\n\\define leaf-node(prefix,chunk)\n<li>\n<$list filter=\"[<__prefix__>addsuffix<__chunk__>is[shadow]] [<__prefix__>addsuffix<__chunk__>is[tiddler]]\" variable=\"full-title\">\n<$list filter=\"[<full-title>removeprefix<__prefix__>]\" variable=\"chunk\">\n<span>{{$:/core/images/file}}</span> <$macrocall $name=\"leaf-link\" full-title=<<full-title>> chunk=<<chunk>>/>\n</$list>\n</$list>\n</li>\n\\end\n\n\\define branch-node(prefix,chunk,separator: \"/\")\n<li>\n<$set name=\"reveal-state\" value={{{ [[$:/state/tree/]addsuffix<__prefix__>addsuffix<__chunk__>] }}}>\n<$reveal type=\"nomatch\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"show\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$button setTitle=<<reveal-state>> setTo=\"hide\" class=\"tc-btn-invisible\">\n{{$:/core/images/folder}} <$text text=<<__chunk__>>/>\n</$button>\n</$reveal>\n<span>(<$count filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>removeprefix<__chunk__>] -[<__prefix__>addsuffix<__chunk__>]\"/>)</span>\n<$reveal type=\"match\" stateTitle=<<reveal-state>> text=\"show\">\n<$macrocall $name=\"tree-node\" prefix={{{ [<__prefix__>addsuffix<__chunk__>] }}} separator=<<__separator__>>/>\n</$reveal>\n</$set>\n</li>\n\\end\n\n\\define tree-node(prefix,separator: \"/\")\n<ol>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]!suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"leaf-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n<$list filter=\"[all[shadows+tiddlers]removeprefix<__prefix__>splitbefore<__separator__>sort[]suffix<__separator__>]\" variable=\"chunk\">\n<$macrocall $name=\"branch-node\" prefix=<<__prefix__>> chunk=<<chunk>> separator=<<__separator__>>/>\n</$list>\n</ol>\n\\end\n\n\\define tree(prefix: \"$:/\",separator: \"/\")\n<div class=\"tc-tree\">\n<span><$text text=<<__prefix__>>/></span>\n<div>\n<$macrocall $name=\"tree-node\" prefix=<<__prefix__>> separator=<<__separator__>>/>\n</div>\n</div>\n\\end\n"
        },
        "$:/core/macros/utils": {
            "title": "$:/core/macros/utils",
            "text": "\\define colour(colour)\n$colour$\n\\end\n"
        },
        "$:/snippets/minifocusswitcher": {
            "title": "$:/snippets/minifocusswitcher",
            "text": "<$select tiddler=\"$:/config/AutoFocus\">\n<$list filter=\"title tags text type fields\">\n<option value=<<currentTiddler>>><<currentTiddler>></option>\n</$list>\n</$select>\n"
        },
        "$:/snippets/minilanguageswitcher": {
            "title": "$:/snippets/minilanguageswitcher",
            "text": "<$select tiddler=\"$:/language\">\n<$list filter=\"[[$:/languages/en-GB]] [plugin-type[language]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"description\"><$view field=\"name\"><$view field=\"title\"/></$view></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/minithemeswitcher": {
            "title": "$:/snippets/minithemeswitcher",
            "text": "\\define lingo-base() $:/language/ControlPanel/Theme/\n<<lingo Prompt>> <$select tiddler=\"$:/theme\">\n<$list filter=\"[plugin-type[theme]sort[title]]\">\n<option value=<<currentTiddler>>><$view field=\"name\"><$view field=\"title\"/></$view></option>\n</$list>\n</$select>"
        },
        "$:/snippets/modules": {
            "title": "$:/snippets/modules",
            "text": "\\define describeModuleType(type)\n{{$:/language/Docs/ModuleTypes/$type$}}\n\\end\n<$list filter=\"[moduletypes[]]\">\n\n!! <$macrocall $name=\"currentTiddler\" $type=\"text/plain\" $output=\"text/plain\"/>\n\n<$macrocall $name=\"describeModuleType\" type=<<currentTiddler>>/>\n\n<ul><$list filter=\"[all[current]modules[]]\"><li><$link><<currentTiddler>></$link>\n</li>\n</$list>\n</ul>\n</$list>\n"
        },
        "$:/palette": {
            "title": "$:/palette",
            "text": "$:/palettes/Vanilla"
        },
        "$:/snippets/paletteeditor": {
            "title": "$:/snippets/paletteeditor",
            "text": "<$transclude tiddler=\"$:/PaletteManager\"/>\n"
        },
        "$:/snippets/palettepreview": {
            "title": "$:/snippets/palettepreview",
            "text": "<$set name=\"currentTiddler\" value={{$:/palette}}>\n{{||$:/snippets/currpalettepreview}}\n</$set>\n"
        },
        "$:/snippets/paletteswitcher": {
            "title": "$:/snippets/paletteswitcher",
            "text": "<$linkcatcher to=\"$:/palette\">\n<div class=\"tc-chooser\"><$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Palette]sort[name]]\"><$set name=\"cls\" filter=\"[all[current]prefix{$:/palette}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' - <$view field=\"description\" format=\"text\"/>{{||$:/snippets/currpalettepreview}}</$link>\n</div></$set>\n</$list>\n</div>\n</$linkcatcher>\n"
        },
        "$:/snippets/peek-stylesheets": {
            "title": "$:/snippets/peek-stylesheets",
            "text": "\\define expandable-stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<$vars state=<<qualify \"$:/state/peek-stylesheets/open/\">>>\n<$set name=\"state\" value={{{ [<state>addsuffix<currentTiddler>] }}}>\n<li>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"no\" class=\"tc-btn-invisible\">\n{{$:/core/images/down-arrow}}\n</$button>\n</$reveal>\n<$reveal type=\"nomatch\" state=<<state>> text=\"yes\" tag=\"span\">\n<$button set=<<state>> setTo=\"yes\" class=\"tc-btn-invisible\">\n{{$:/core/images/right-arrow}}\n</$button>\n</$reveal>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$reveal type=\"match\" state=<<state>> text=\"yes\" tag=\"div\">\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</$reveal>\n</li>\n</$set>\n</$vars>\n</$list>\n</ol>\n\\end\n\n\\define stylesheets-list()\n<ol>\n<$list filter=\"[all[shadows+tiddlers]tag[$:/tags/Stylesheet]!has[draft.of]]\">\n<li>\n<$link>\n<$view field=\"title\"/>\n</$link>\n<$set name=\"source\" tiddler=<<currentTiddler>>>\n<$wikify name=\"styles\" text=<<source>>>\n<pre>\n<code>\n<$text text=<<styles>>/>\n</code>\n</pre>\n</$wikify>\n</$set>\n</li>\n</$list>\n</ol>\n\\end\n\n<$vars modeState=<<qualify \"$:/state/peek-stylesheets/mode/\">>>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"expanded\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-right}} {{$:/language/ControlPanel/Stylesheets/Expand/Caption}}</$button>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<$button set=<<modeState>> setTo=\"restored\" class=\"tc-btn-invisible\">{{$:/core/images/chevron-down}} {{$:/language/ControlPanel/Stylesheets/Restore/Caption}}</$button>\n</$reveal>\n\n<$reveal type=\"nomatch\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<expandable-stylesheets-list>>\n</$reveal>\n<$reveal type=\"match\" state=<<modeState>> text=\"expanded\" tag=\"div\">\n<<stylesheets-list>>\n</$reveal>\n\n</$vars>\n"
        },
        "$:/temp/search": {
            "title": "$:/temp/search",
            "text": ""
        },
        "$:/tags/AdvancedSearch": {
            "title": "$:/tags/AdvancedSearch",
            "list": "[[$:/core/ui/AdvancedSearch/Standard]] [[$:/core/ui/AdvancedSearch/System]] [[$:/core/ui/AdvancedSearch/Shadows]] [[$:/core/ui/AdvancedSearch/Filter]]"
        },
        "$:/tags/AdvancedSearch/FilterButton": {
            "title": "$:/tags/AdvancedSearch/FilterButton",
            "list": "$:/core/ui/AdvancedSearch/Filter/FilterButtons/dropdown $:/core/ui/AdvancedSearch/Filter/FilterButtons/clear $:/core/ui/AdvancedSearch/Filter/FilterButtons/export $:/core/ui/AdvancedSearch/Filter/FilterButtons/delete"
        },
        "$:/tags/ControlPanel": {
            "title": "$:/tags/ControlPanel",
            "list": "$:/core/ui/ControlPanel/Info $:/core/ui/ControlPanel/Appearance $:/core/ui/ControlPanel/Settings $:/core/ui/ControlPanel/Saving $:/core/ui/ControlPanel/Plugins $:/core/ui/ControlPanel/Tools $:/core/ui/ControlPanel/Internals"
        },
        "$:/tags/ControlPanel/Info": {
            "title": "$:/tags/ControlPanel/Info",
            "list": "$:/core/ui/ControlPanel/Basics $:/core/ui/ControlPanel/Advanced"
        },
        "$:/tags/ControlPanel/Plugins": {
            "title": "$:/tags/ControlPanel/Plugins",
            "list": "[[$:/core/ui/ControlPanel/Plugins/Installed]] [[$:/core/ui/ControlPanel/Plugins/Add]]"
        },
        "$:/tags/EditTemplate": {
            "title": "$:/tags/EditTemplate",
            "list": "[[$:/core/ui/EditTemplate/controls]] [[$:/core/ui/EditTemplate/title]] [[$:/core/ui/EditTemplate/tags]] [[$:/core/ui/EditTemplate/shadow]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/EditTemplate/body]] [[$:/core/ui/EditTemplate/type]] [[$:/core/ui/EditTemplate/fields]]"
        },
        "$:/tags/EditToolbar": {
            "title": "$:/tags/EditToolbar",
            "list": "[[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/cancel]] [[$:/core/ui/Buttons/save]]"
        },
        "$:/tags/EditorToolbar": {
            "title": "$:/tags/EditorToolbar",
            "list": "$:/core/ui/EditorToolbar/paint $:/core/ui/EditorToolbar/opacity $:/core/ui/EditorToolbar/line-width $:/core/ui/EditorToolbar/rotate-left $:/core/ui/EditorToolbar/clear $:/core/ui/EditorToolbar/bold $:/core/ui/EditorToolbar/italic $:/core/ui/EditorToolbar/strikethrough $:/core/ui/EditorToolbar/underline $:/core/ui/EditorToolbar/superscript $:/core/ui/EditorToolbar/subscript $:/core/ui/EditorToolbar/mono-line $:/core/ui/EditorToolbar/mono-block $:/core/ui/EditorToolbar/quote $:/core/ui/EditorToolbar/list-bullet $:/core/ui/EditorToolbar/list-number $:/core/ui/EditorToolbar/heading-1 $:/core/ui/EditorToolbar/heading-2 $:/core/ui/EditorToolbar/heading-3 $:/core/ui/EditorToolbar/heading-4 $:/core/ui/EditorToolbar/heading-5 $:/core/ui/EditorToolbar/heading-6 $:/core/ui/EditorToolbar/link $:/core/ui/EditorToolbar/excise $:/core/ui/EditorToolbar/picture $:/core/ui/EditorToolbar/stamp $:/core/ui/EditorToolbar/size $:/core/ui/EditorToolbar/editor-height $:/core/ui/EditorToolbar/more $:/core/ui/EditorToolbar/preview $:/core/ui/EditorToolbar/preview-type"
        },
        "$:/tags/Manager/ItemMain": {
            "title": "$:/tags/Manager/ItemMain",
            "list": "$:/Manager/ItemMain/WikifiedText $:/Manager/ItemMain/RawText $:/Manager/ItemMain/Fields"
        },
        "$:/tags/Manager/ItemSidebar": {
            "title": "$:/tags/Manager/ItemSidebar",
            "list": "$:/Manager/ItemSidebar/Tags $:/Manager/ItemSidebar/Colour $:/Manager/ItemSidebar/Icon $:/Manager/ItemSidebar/Tools"
        },
        "$:/tags/MoreSideBar": {
            "title": "$:/tags/MoreSideBar",
            "list": "[[$:/core/ui/MoreSideBar/All]] [[$:/core/ui/MoreSideBar/Recent]] [[$:/core/ui/MoreSideBar/Tags]] [[$:/core/ui/MoreSideBar/Missing]] [[$:/core/ui/MoreSideBar/Drafts]] [[$:/core/ui/MoreSideBar/Orphans]] [[$:/core/ui/MoreSideBar/Types]] [[$:/core/ui/MoreSideBar/System]] [[$:/core/ui/MoreSideBar/Shadows]] [[$:/core/ui/MoreSideBar/Explorer]] [[$:/core/ui/MoreSideBar/Plugins]]",
            "text": ""
        },
        "$:/tags/PageControls": {
            "title": "$:/tags/PageControls",
            "list": "[[$:/core/ui/Buttons/home]] [[$:/core/ui/Buttons/close-all]] [[$:/core/ui/Buttons/fold-all]] [[$:/core/ui/Buttons/unfold-all]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/new-tiddler]] [[$:/core/ui/Buttons/new-journal]] [[$:/core/ui/Buttons/new-image]] [[$:/core/ui/Buttons/import]] [[$:/core/ui/Buttons/export-page]] [[$:/core/ui/Buttons/control-panel]] [[$:/core/ui/Buttons/advanced-search]] [[$:/core/ui/Buttons/manager]] [[$:/core/ui/Buttons/tag-manager]] [[$:/core/ui/Buttons/language]] [[$:/core/ui/Buttons/palette]] [[$:/core/ui/Buttons/theme]] [[$:/core/ui/Buttons/storyview]] [[$:/core/ui/Buttons/encryption]] [[$:/core/ui/Buttons/timestamp]] [[$:/core/ui/Buttons/full-screen]] [[$:/core/ui/Buttons/print]] [[$:/core/ui/Buttons/save-wiki]] [[$:/core/ui/Buttons/refresh]] [[$:/core/ui/Buttons/more-page-actions]]"
        },
        "$:/tags/PageTemplate": {
            "title": "$:/tags/PageTemplate",
            "list": "[[$:/core/ui/PageTemplate/topleftbar]] [[$:/core/ui/PageTemplate/toprightbar]] [[$:/core/ui/PageTemplate/sidebar]] [[$:/core/ui/PageTemplate/story]] [[$:/core/ui/PageTemplate/alerts]]",
            "text": ""
        },
        "$:/tags/PluginLibrary": {
            "title": "$:/tags/PluginLibrary",
            "list": "$:/config/OfficialPluginLibrary"
        },
        "$:/tags/SideBar": {
            "title": "$:/tags/SideBar",
            "list": "[[$:/core/ui/SideBar/Open]] [[$:/core/ui/SideBar/Recent]] [[$:/core/ui/SideBar/Tools]] [[$:/core/ui/SideBar/More]]",
            "text": ""
        },
        "$:/tags/SideBarSegment": {
            "title": "$:/tags/SideBarSegment",
            "list": "[[$:/core/ui/SideBarSegments/site-title]] [[$:/core/ui/SideBarSegments/site-subtitle]] [[$:/core/ui/SideBarSegments/page-controls]] [[$:/core/ui/SideBarSegments/search]] [[$:/core/ui/SideBarSegments/tabs]]"
        },
        "$:/tags/TiddlerInfo": {
            "title": "$:/tags/TiddlerInfo",
            "list": "[[$:/core/ui/TiddlerInfo/Tools]] [[$:/core/ui/TiddlerInfo/References]] [[$:/core/ui/TiddlerInfo/Tagging]] [[$:/core/ui/TiddlerInfo/List]] [[$:/core/ui/TiddlerInfo/Listed]] [[$:/core/ui/TiddlerInfo/Fields]]",
            "text": ""
        },
        "$:/tags/TiddlerInfo/Advanced": {
            "title": "$:/tags/TiddlerInfo/Advanced",
            "list": "[[$:/core/ui/TiddlerInfo/Advanced/ShadowInfo]] [[$:/core/ui/TiddlerInfo/Advanced/PluginInfo]]"
        },
        "$:/tags/ViewTemplate": {
            "title": "$:/tags/ViewTemplate",
            "list": "[[$:/core/ui/ViewTemplate/title]] [[$:/core/ui/ViewTemplate/unfold]] [[$:/core/ui/ViewTemplate/subtitle]] [[$:/core/ui/ViewTemplate/tags]] [[$:/core/ui/ViewTemplate/classic]] [[$:/core/ui/ViewTemplate/body]]"
        },
        "$:/tags/ViewToolbar": {
            "title": "$:/tags/ViewToolbar",
            "list": "[[$:/core/ui/Buttons/more-tiddler-actions]] [[$:/core/ui/Buttons/info]] [[$:/core/ui/Buttons/new-here]] [[$:/core/ui/Buttons/new-journal-here]] [[$:/core/ui/Buttons/clone]] [[$:/core/ui/Buttons/export-tiddler]] [[$:/core/ui/Buttons/edit]] [[$:/core/ui/Buttons/delete]] [[$:/core/ui/Buttons/permalink]] [[$:/core/ui/Buttons/permaview]] [[$:/core/ui/Buttons/open-window]] [[$:/core/ui/Buttons/close-others]] [[$:/core/ui/Buttons/close]] [[$:/core/ui/Buttons/fold-others]] [[$:/core/ui/Buttons/fold]]"
        },
        "$:/snippets/themeswitcher": {
            "title": "$:/snippets/themeswitcher",
            "text": "<$linkcatcher to=\"$:/theme\">\n<div class=\"tc-chooser\"><$list filter=\"[plugin-type[theme]sort[title]]\"><$set name=\"cls\" filter=\"[all[current]field:title{$:/theme}] [[$:/theme]!has[text]addsuffix[s/tiddlywiki/vanilla]field:title<currentTiddler>] +[limit[1]]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>><$link to={{!!title}}>''<$view field=\"name\" format=\"text\"/>'' <$view field=\"description\" format=\"text\"/></$link></div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        },
        "$:/core/wiki/title": {
            "title": "$:/core/wiki/title",
            "text": "{{$:/SiteTitle}} --- {{$:/SiteSubtitle}}"
        },
        "$:/view": {
            "title": "$:/view",
            "text": "classic"
        },
        "$:/snippets/viewswitcher": {
            "title": "$:/snippets/viewswitcher",
            "text": "\\define icon()\n$:/core/images/storyview-$(storyview)$\n\\end\n<$linkcatcher to=\"$:/view\">\n<div class=\"tc-chooser tc-viewswitcher\">\n<$list filter=\"[storyviews[]]\" variable=\"storyview\">\n<$set name=\"cls\" filter=\"[<storyview>prefix{$:/view}]\" value=\"tc-chooser-item tc-chosen\" emptyValue=\"tc-chooser-item\"><div class=<<cls>>>\n<$link to=<<storyview>>><$transclude tiddler=<<icon>>/><$text text=<<storyview>>/></$link>\n</div>\n</$set>\n</$list>\n</div>\n</$linkcatcher>"
        }
    }
}
[list[$:/StoryList]]
no
$:/languages/zh-Hans
{
    "tiddlers": {
        "$:/language/Buttons/AdvancedSearch/Caption": {
            "title": "$:/language/Buttons/AdvancedSearch/Caption",
            "text": "高级查找"
        },
        "$:/language/Buttons/AdvancedSearch/Hint": {
            "title": "$:/language/Buttons/AdvancedSearch/Hint",
            "text": "高级查找"
        },
        "$:/language/Buttons/Cancel/Caption": {
            "title": "$:/language/Buttons/Cancel/Caption",
            "text": "取消"
        },
        "$:/language/Buttons/Cancel/Hint": {
            "title": "$:/language/Buttons/Cancel/Hint",
            "text": "放弃对此条目的更改"
        },
        "$:/language/Buttons/Clone/Caption": {
            "title": "$:/language/Buttons/Clone/Caption",
            "text": "克隆"
        },
        "$:/language/Buttons/Clone/Hint": {
            "title": "$:/language/Buttons/Clone/Hint",
            "text": "克隆此条目"
        },
        "$:/language/Buttons/Close/Caption": {
            "title": "$:/language/Buttons/Close/Caption",
            "text": "关闭"
        },
        "$:/language/Buttons/Close/Hint": {
            "title": "$:/language/Buttons/Close/Hint",
            "text": "关闭此条目"
        },
        "$:/language/Buttons/CloseAll/Caption": {
            "title": "$:/language/Buttons/CloseAll/Caption",
            "text": "全部关闭"
        },
        "$:/language/Buttons/CloseAll/Hint": {
            "title": "$:/language/Buttons/CloseAll/Hint",
            "text": "关闭所有条目"
        },
        "$:/language/Buttons/CloseOthers/Caption": {
            "title": "$:/language/Buttons/CloseOthers/Caption",
            "text": "关闭其他"
        },
        "$:/language/Buttons/CloseOthers/Hint": {
            "title": "$:/language/Buttons/CloseOthers/Hint",
            "text": "关闭其他条目"
        },
        "$:/language/Buttons/ControlPanel/Caption": {
            "title": "$:/language/Buttons/ControlPanel/Caption",
            "text": "控制台"
        },
        "$:/language/Buttons/ControlPanel/Hint": {
            "title": "$:/language/Buttons/ControlPanel/Hint",
            "text": "开启控制台"
        },
        "$:/language/Buttons/CopyToClipboard/Caption": {
            "title": "$:/language/Buttons/CopyToClipboard/Caption",
            "text": "复制到剪贴板"
        },
        "$:/language/Buttons/CopyToClipboard/Hint": {
            "title": "$:/language/Buttons/CopyToClipboard/Hint",
            "text": "将此文本复制到剪贴板"
        },
        "$:/language/Buttons/Delete/Caption": {
            "title": "$:/language/Buttons/Delete/Caption",
            "text": "删除"
        },
        "$:/language/Buttons/Delete/Hint": {
            "title": "$:/language/Buttons/Delete/Hint",
            "text": "删除此条目"
        },
        "$:/language/Buttons/Edit/Caption": {
            "title": "$:/language/Buttons/Edit/Caption",
            "text": "编辑"
        },
        "$:/language/Buttons/Edit/Hint": {
            "title": "$:/language/Buttons/Edit/Hint",
            "text": "编辑此条目"
        },
        "$:/language/Buttons/Encryption/Caption": {
            "title": "$:/language/Buttons/Encryption/Caption",
            "text": "加密"
        },
        "$:/language/Buttons/Encryption/Hint": {
            "title": "$:/language/Buttons/Encryption/Hint",
            "text": "设置或清除保存此维基的密码"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Caption",
            "text": "清除密码"
        },
        "$:/language/Buttons/Encryption/ClearPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/ClearPassword/Hint",
            "text": "清除密码且不加密保存此维基"
        },
        "$:/language/Buttons/Encryption/SetPassword/Caption": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Caption",
            "text": "设置密码"
        },
        "$:/language/Buttons/Encryption/SetPassword/Hint": {
            "title": "$:/language/Buttons/Encryption/SetPassword/Hint",
            "text": "设置加密保存此维基的密码"
        },
        "$:/language/Buttons/ExportPage/Caption": {
            "title": "$:/language/Buttons/ExportPage/Caption",
            "text": "导出所有条目"
        },
        "$:/language/Buttons/ExportPage/Hint": {
            "title": "$:/language/Buttons/ExportPage/Hint",
            "text": "导出所有条目"
        },
        "$:/language/Buttons/ExportTiddler/Caption": {
            "title": "$:/language/Buttons/ExportTiddler/Caption",
            "text": "导出此条目"
        },
        "$:/language/Buttons/ExportTiddler/Hint": {
            "title": "$:/language/Buttons/ExportTiddler/Hint",
            "text": "导出此条目"
        },
        "$:/language/Buttons/ExportTiddlers/Caption": {
            "title": "$:/language/Buttons/ExportTiddlers/Caption",
            "text": "导出条目"
        },
        "$:/language/Buttons/ExportTiddlers/Hint": {
            "title": "$:/language/Buttons/ExportTiddlers/Hint",
            "text": "导出条目"
        },
        "$:/language/Buttons/SidebarSearch/Hint": {
            "title": "$:/language/Buttons/SidebarSearch/Hint",
            "text": "选择侧边栏的查找字段"
        },
        "$:/language/Buttons/Fold/Caption": {
            "title": "$:/language/Buttons/Fold/Caption",
            "text": "收合条目"
        },
        "$:/language/Buttons/Fold/Hint": {
            "title": "$:/language/Buttons/Fold/Hint",
            "text": "收合此条目的内容"
        },
        "$:/language/Buttons/Unfold/Caption": {
            "title": "$:/language/Buttons/Unfold/Caption",
            "text": "展开条目"
        },
        "$:/language/Buttons/Unfold/Hint": {
            "title": "$:/language/Buttons/Unfold/Hint",
            "text": "展开此条目的内容"
        },
        "$:/language/Buttons/FoldOthers/Caption": {
            "title": "$:/language/Buttons/FoldOthers/Caption",
            "text": "收合其他条目"
        },
        "$:/language/Buttons/FoldOthers/Hint": {
            "title": "$:/language/Buttons/FoldOthers/Hint",
            "text": "收合其他已开启条目的内容"
        },
        "$:/language/Buttons/FoldAll/Caption": {
            "title": "$:/language/Buttons/FoldAll/Caption",
            "text": "收合所有条目"
        },
        "$:/language/Buttons/FoldAll/Hint": {
            "title": "$:/language/Buttons/FoldAll/Hint",
            "text": "收合所有已开启条目的内容"
        },
        "$:/language/Buttons/Fold/FoldBar/Caption": {
            "title": "$:/language/Buttons/Fold/FoldBar/Caption",
            "text": "收合栏"
        },
        "$:/language/Buttons/Fold/FoldBar/Hint": {
            "title": "$:/language/Buttons/Fold/FoldBar/Hint",
            "text": "可选的收合与展开条目的长条按钮"
        },
        "$:/language/Buttons/UnfoldAll/Caption": {
            "title": "$:/language/Buttons/UnfoldAll/Caption",
            "text": "展开所有条目"
        },
        "$:/language/Buttons/UnfoldAll/Hint": {
            "title": "$:/language/Buttons/UnfoldAll/Hint",
            "text": "展开所有已开启条目的内容"
        },
        "$:/language/Buttons/FullScreen/Caption": {
            "title": "$:/language/Buttons/FullScreen/Caption",
            "text": "全屏幕"
        },
        "$:/language/Buttons/FullScreen/Hint": {
            "title": "$:/language/Buttons/FullScreen/Hint",
            "text": "进入或离开全屏模式"
        },
        "$:/language/Buttons/Help/Caption": {
            "title": "$:/language/Buttons/Help/Caption",
            "text": "帮助"
        },
        "$:/language/Buttons/Help/Hint": {
            "title": "$:/language/Buttons/Help/Hint",
            "text": "显示帮助面板"
        },
        "$:/language/Buttons/Home/Caption": {
            "title": "$:/language/Buttons/Home/Caption",
            "text": "首页"
        },
        "$:/language/Buttons/Home/Hint": {
            "title": "$:/language/Buttons/Home/Hint",
            "text": "开启首页条目"
        },
        "$:/language/Buttons/Import/Caption": {
            "title": "$:/language/Buttons/Import/Caption",
            "text": "导入"
        },
        "$:/language/Buttons/Import/Hint": {
            "title": "$:/language/Buttons/Import/Hint",
            "text": "导入许多类型的文件包括文本、图像、TiddlyWiki 或 JSON"
        },
        "$:/language/Buttons/Info/Caption": {
            "title": "$:/language/Buttons/Info/Caption",
            "text": "信息"
        },
        "$:/language/Buttons/Info/Hint": {
            "title": "$:/language/Buttons/Info/Hint",
            "text": "显示此条目的信息"
        },
        "$:/language/Buttons/Language/Caption": {
            "title": "$:/language/Buttons/Language/Caption",
            "text": "语言"
        },
        "$:/language/Buttons/Language/Hint": {
            "title": "$:/language/Buttons/Language/Hint",
            "text": "选择用户介面语言"
        },
        "$:/language/Buttons/Manager/Caption": {
            "title": "$:/language/Buttons/Manager/Caption",
            "text": "条目管理器"
        },
        "$:/language/Buttons/Manager/Hint": {
            "title": "$:/language/Buttons/Manager/Hint",
            "text": "开启条目管理器"
        },
        "$:/language/Buttons/More/Caption": {
            "title": "$:/language/Buttons/More/Caption",
            "text": "更多"
        },
        "$:/language/Buttons/More/Hint": {
            "title": "$:/language/Buttons/More/Hint",
            "text": "更多动作"
        },
        "$:/language/Buttons/NewHere/Caption": {
            "title": "$:/language/Buttons/NewHere/Caption",
            "text": "添加子条目"
        },
        "$:/language/Buttons/NewHere/Hint": {
            "title": "$:/language/Buttons/NewHere/Hint",
            "text": "创建一个标签为此条目名称的新条目"
        },
        "$:/language/Buttons/NewJournal/Caption": {
            "title": "$:/language/Buttons/NewJournal/Caption",
            "text": "添加日志"
        },
        "$:/language/Buttons/NewJournal/Hint": {
            "title": "$:/language/Buttons/NewJournal/Hint",
            "text": "创建一个新的日志条目"
        },
        "$:/language/Buttons/NewJournalHere/Caption": {
            "title": "$:/language/Buttons/NewJournalHere/Caption",
            "text": "添加子日志"
        },
        "$:/language/Buttons/NewJournalHere/Hint": {
            "title": "$:/language/Buttons/NewJournalHere/Hint",
            "text": "创建一个标签含此条目名称的新日志条目"
        },
        "$:/language/Buttons/NewImage/Caption": {
            "title": "$:/language/Buttons/NewImage/Caption",
            "text": "添加图像"
        },
        "$:/language/Buttons/NewImage/Hint": {
            "title": "$:/language/Buttons/NewImage/Hint",
            "text": "创建一个新的图像条目"
        },
        "$:/language/Buttons/NewMarkdown/Caption": {
            "title": "$:/language/Buttons/NewMarkdown/Caption",
            "text": "添加 Markdown 条目"
        },
        "$:/language/Buttons/NewMarkdown/Hint": {
            "title": "$:/language/Buttons/NewMarkdown/Hint",
            "text": "创建一个新的 Markdown 条目"
        },
        "$:/language/Buttons/NewTiddler/Caption": {
            "title": "$:/language/Buttons/NewTiddler/Caption",
            "text": "添加条目"
        },
        "$:/language/Buttons/NewTiddler/Hint": {
            "title": "$:/language/Buttons/NewTiddler/Hint",
            "text": "创建一个新的条目"
        },
        "$:/language/Buttons/OpenWindow/Caption": {
            "title": "$:/language/Buttons/OpenWindow/Caption",
            "text": "开启于新窗口"
        },
        "$:/language/Buttons/OpenWindow/Hint": {
            "title": "$:/language/Buttons/OpenWindow/Hint",
            "text": "在新窗口中开启条目"
        },
        "$:/language/Buttons/Palette/Caption": {
            "title": "$:/language/Buttons/Palette/Caption",
            "text": "调色板"
        },
        "$:/language/Buttons/Palette/Hint": {
            "title": "$:/language/Buttons/Palette/Hint",
            "text": "选择调色板"
        },
        "$:/language/Buttons/Permalink/Caption": {
            "title": "$:/language/Buttons/Permalink/Caption",
            "text": "引用链接"
        },
        "$:/language/Buttons/Permalink/Hint": {
            "title": "$:/language/Buttons/Permalink/Hint",
            "text": "设置浏览器网址栏为直接链接到此条目"
        },
        "$:/language/Buttons/Permaview/Caption": {
            "title": "$:/language/Buttons/Permaview/Caption",
            "text": "永久链接"
        },
        "$:/language/Buttons/Permaview/Hint": {
            "title": "$:/language/Buttons/Permaview/Hint",
            "text": "设置浏览器网址栏为直接链接到当前所有已开启条目"
        },
        "$:/language/Buttons/Print/Caption": {
            "title": "$:/language/Buttons/Print/Caption",
            "text": "打印页面"
        },
        "$:/language/Buttons/Print/Hint": {
            "title": "$:/language/Buttons/Print/Hint",
            "text": "打印当前页面"
        },
        "$:/language/Buttons/Refresh/Caption": {
            "title": "$:/language/Buttons/Refresh/Caption",
            "text": "刷新"
        },
        "$:/language/Buttons/Refresh/Hint": {
            "title": "$:/language/Buttons/Refresh/Hint",
            "text": "执行维基的完全刷新"
        },
        "$:/language/Buttons/Save/Caption": {
            "title": "$:/language/Buttons/Save/Caption",
            "text": "确定"
        },
        "$:/language/Buttons/Save/Hint": {
            "title": "$:/language/Buttons/Save/Hint",
            "text": "确定对此条目的更改"
        },
        "$:/language/Buttons/SaveWiki/Caption": {
            "title": "$:/language/Buttons/SaveWiki/Caption",
            "text": "保存变更"
        },
        "$:/language/Buttons/SaveWiki/Hint": {
            "title": "$:/language/Buttons/SaveWiki/Hint",
            "text": "保存变更"
        },
        "$:/language/Buttons/StoryView/Caption": {
            "title": "$:/language/Buttons/StoryView/Caption",
            "text": "查看模式"
        },
        "$:/language/Buttons/StoryView/Hint": {
            "title": "$:/language/Buttons/StoryView/Hint",
            "text": "选择查看条目的视觉效果"
        },
        "$:/language/Buttons/HideSideBar/Caption": {
            "title": "$:/language/Buttons/HideSideBar/Caption",
            "text": "隐藏侧边栏"
        },
        "$:/language/Buttons/HideSideBar/Hint": {
            "title": "$:/language/Buttons/HideSideBar/Hint",
            "text": "隐藏侧边栏"
        },
        "$:/language/Buttons/ShowSideBar/Caption": {
            "title": "$:/language/Buttons/ShowSideBar/Caption",
            "text": "显示侧边栏"
        },
        "$:/language/Buttons/ShowSideBar/Hint": {
            "title": "$:/language/Buttons/ShowSideBar/Hint",
            "text": "显示侧边栏"
        },
        "$:/language/Buttons/TagManager/Caption": {
            "title": "$:/language/Buttons/TagManager/Caption",
            "text": "标签管理"
        },
        "$:/language/Buttons/TagManager/Hint": {
            "title": "$:/language/Buttons/TagManager/Hint",
            "text": "标签管理"
        },
        "$:/language/Buttons/Timestamp/Caption": {
            "title": "$:/language/Buttons/Timestamp/Caption",
            "text": "时间戳记"
        },
        "$:/language/Buttons/Timestamp/Hint": {
            "title": "$:/language/Buttons/Timestamp/Hint",
            "text": "选择修改是否更新时间戳记"
        },
        "$:/language/Buttons/Timestamp/On/Caption": {
            "title": "$:/language/Buttons/Timestamp/On/Caption",
            "text": "时间戳记开启"
        },
        "$:/language/Buttons/Timestamp/On/Hint": {
            "title": "$:/language/Buttons/Timestamp/On/Hint",
            "text": "条目被修改时,更新时间戳记"
        },
        "$:/language/Buttons/Timestamp/Off/Caption": {
            "title": "$:/language/Buttons/Timestamp/Off/Caption",
            "text": "时间戳记关闭"
        },
        "$:/language/Buttons/Timestamp/Off/Hint": {
            "title": "$:/language/Buttons/Timestamp/Off/Hint",
            "text": "条目被修改时,不更新时间戳记"
        },
        "$:/language/Buttons/Theme/Caption": {
            "title": "$:/language/Buttons/Theme/Caption",
            "text": "布景主题"
        },
        "$:/language/Buttons/Theme/Hint": {
            "title": "$:/language/Buttons/Theme/Hint",
            "text": "选择布景主题"
        },
        "$:/language/Buttons/Bold/Caption": {
            "title": "$:/language/Buttons/Bold/Caption",
            "text": "粗体"
        },
        "$:/language/Buttons/Bold/Hint": {
            "title": "$:/language/Buttons/Bold/Hint",
            "text": "套用粗体格式于所选文本"
        },
        "$:/language/Buttons/Clear/Caption": {
            "title": "$:/language/Buttons/Clear/Caption",
            "text": "清除"
        },
        "$:/language/Buttons/Clear/Hint": {
            "title": "$:/language/Buttons/Clear/Hint",
            "text": "清除图像为纯色"
        },
        "$:/language/Buttons/EditorHeight/Caption": {
            "title": "$:/language/Buttons/EditorHeight/Caption",
            "text": "编辑器高度"
        },
        "$:/language/Buttons/EditorHeight/Caption/Auto": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Auto",
            "text": "自动调整高度以适合内容"
        },
        "$:/language/Buttons/EditorHeight/Caption/Fixed": {
            "title": "$:/language/Buttons/EditorHeight/Caption/Fixed",
            "text": "固定高度︰"
        },
        "$:/language/Buttons/EditorHeight/Hint": {
            "title": "$:/language/Buttons/EditorHeight/Hint",
            "text": "选择文本编辑器的高度"
        },
        "$:/language/Buttons/Excise/Caption": {
            "title": "$:/language/Buttons/Excise/Caption",
            "text": "剪切"
        },
        "$:/language/Buttons/Excise/Caption/Excise": {
            "title": "$:/language/Buttons/Excise/Caption/Excise",
            "text": "执行剪切"
        },
        "$:/language/Buttons/Excise/Caption/MacroName": {
            "title": "$:/language/Buttons/Excise/Caption/MacroName",
            "text": "宏的名称︰"
        },
        "$:/language/Buttons/Excise/Caption/NewTitle": {
            "title": "$:/language/Buttons/Excise/Caption/NewTitle",
            "text": "新条目的名称︰"
        },
        "$:/language/Buttons/Excise/Caption/Replace": {
            "title": "$:/language/Buttons/Excise/Caption/Replace",
            "text": "替换剪切的文本为:"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Macro": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Macro",
            "text": "宏"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Link": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Link",
            "text": "链接"
        },
        "$:/language/Buttons/Excise/Caption/Replace/Transclusion": {
            "title": "$:/language/Buttons/Excise/Caption/Replace/Transclusion",
            "text": "嵌入"
        },
        "$:/language/Buttons/Excise/Caption/Tag": {
            "title": "$:/language/Buttons/Excise/Caption/Tag",
            "text": "将新条目的标签设为此条目的名称"
        },
        "$:/language/Buttons/Excise/Caption/TiddlerExists": {
            "title": "$:/language/Buttons/Excise/Caption/TiddlerExists",
            "text": "警示:条目已经存在"
        },
        "$:/language/Buttons/Excise/Hint": {
            "title": "$:/language/Buttons/Excise/Hint",
            "text": "剪切所选文本到一个新条目"
        },
        "$:/language/Buttons/Heading1/Caption": {
            "title": "$:/language/Buttons/Heading1/Caption",
            "text": "标题 1"
        },
        "$:/language/Buttons/Heading1/Hint": {
            "title": "$:/language/Buttons/Heading1/Hint",
            "text": "套用标题级别 1 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Heading2/Caption": {
            "title": "$:/language/Buttons/Heading2/Caption",
            "text": "标题 2"
        },
        "$:/language/Buttons/Heading2/Hint": {
            "title": "$:/language/Buttons/Heading2/Hint",
            "text": "套用标题级别 2 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Heading3/Caption": {
            "title": "$:/language/Buttons/Heading3/Caption",
            "text": "标题 3"
        },
        "$:/language/Buttons/Heading3/Hint": {
            "title": "$:/language/Buttons/Heading3/Hint",
            "text": "套用标题级别 3 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Heading4/Caption": {
            "title": "$:/language/Buttons/Heading4/Caption",
            "text": "标题 4"
        },
        "$:/language/Buttons/Heading4/Hint": {
            "title": "$:/language/Buttons/Heading4/Hint",
            "text": "套用标题级别 4 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Heading5/Caption": {
            "title": "$:/language/Buttons/Heading5/Caption",
            "text": "标题 5"
        },
        "$:/language/Buttons/Heading5/Hint": {
            "title": "$:/language/Buttons/Heading5/Hint",
            "text": "套用标题级别 5 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Heading6/Caption": {
            "title": "$:/language/Buttons/Heading6/Caption",
            "text": "标题 6"
        },
        "$:/language/Buttons/Heading6/Hint": {
            "title": "$:/language/Buttons/Heading6/Hint",
            "text": "套用标题级别 6 的格式于包含所选文本的列"
        },
        "$:/language/Buttons/Italic/Caption": {
            "title": "$:/language/Buttons/Italic/Caption",
            "text": "斜体"
        },
        "$:/language/Buttons/Italic/Hint": {
            "title": "$:/language/Buttons/Italic/Hint",
            "text": "套用斜体格式于所选文本"
        },
        "$:/language/Buttons/LineWidth/Caption": {
            "title": "$:/language/Buttons/LineWidth/Caption",
            "text": "线宽"
        },
        "$:/language/Buttons/LineWidth/Hint": {
            "title": "$:/language/Buttons/LineWidth/Hint",
            "text": "设置绘画的线条宽度"
        },
        "$:/language/Buttons/Link/Caption": {
            "title": "$:/language/Buttons/Link/Caption",
            "text": "链接"
        },
        "$:/language/Buttons/Link/Hint": {
            "title": "$:/language/Buttons/Link/Hint",
            "text": "创建维基文字链接"
        },
        "$:/language/Buttons/Linkify/Caption": {
            "title": "$:/language/Buttons/Linkify/Caption",
            "text": "维基链接"
        },
        "$:/language/Buttons/Linkify/Hint": {
            "title": "$:/language/Buttons/Linkify/Hint",
            "text": "套用维基链接于所选文字"
        },
        "$:/language/Buttons/ListBullet/Caption": {
            "title": "$:/language/Buttons/ListBullet/Caption",
            "text": "符号清单"
        },
        "$:/language/Buttons/ListBullet/Hint": {
            "title": "$:/language/Buttons/ListBullet/Hint",
            "text": "套用符号清单格式于包含所选文本的列"
        },
        "$:/language/Buttons/ListNumber/Caption": {
            "title": "$:/language/Buttons/ListNumber/Caption",
            "text": "数字清单"
        },
        "$:/language/Buttons/ListNumber/Hint": {
            "title": "$:/language/Buttons/ListNumber/Hint",
            "text": "套用数字清单格式于包含所选文本的列"
        },
        "$:/language/Buttons/MonoBlock/Caption": {
            "title": "$:/language/Buttons/MonoBlock/Caption",
            "text": "等宽区块"
        },
        "$:/language/Buttons/MonoBlock/Hint": {
            "title": "$:/language/Buttons/MonoBlock/Hint",
            "text": "套用等宽区块格式于包含所选文本的列"
        },
        "$:/language/Buttons/MonoLine/Caption": {
            "title": "$:/language/Buttons/MonoLine/Caption",
            "text": "等宽"
        },
        "$:/language/Buttons/MonoLine/Hint": {
            "title": "$:/language/Buttons/MonoLine/Hint",
            "text": "套用等宽字符格式于所选文本"
        },
        "$:/language/Buttons/Opacity/Caption": {
            "title": "$:/language/Buttons/Opacity/Caption",
            "text": "不透明度"
        },
        "$:/language/Buttons/Opacity/Hint": {
            "title": "$:/language/Buttons/Opacity/Hint",
            "text": "设置绘画的不透明度"
        },
        "$:/language/Buttons/Paint/Caption": {
            "title": "$:/language/Buttons/Paint/Caption",
            "text": "绘画颜色"
        },
        "$:/language/Buttons/Paint/Hint": {
            "title": "$:/language/Buttons/Paint/Hint",
            "text": "设置绘画的颜色"
        },
        "$:/language/Buttons/Picture/Caption": {
            "title": "$:/language/Buttons/Picture/Caption",
            "text": "图片"
        },
        "$:/language/Buttons/Picture/Hint": {
            "title": "$:/language/Buttons/Picture/Hint",
            "text": "插入图片"
        },
        "$:/language/Buttons/Preview/Caption": {
            "title": "$:/language/Buttons/Preview/Caption",
            "text": "预览"
        },
        "$:/language/Buttons/Preview/Hint": {
            "title": "$:/language/Buttons/Preview/Hint",
            "text": "显示预览窗格"
        },
        "$:/language/Buttons/PreviewType/Caption": {
            "title": "$:/language/Buttons/PreviewType/Caption",
            "text": "预览类型"
        },
        "$:/language/Buttons/PreviewType/Hint": {
            "title": "$:/language/Buttons/PreviewType/Hint",
            "text": "选择预览类型"
        },
        "$:/language/Buttons/Quote/Caption": {
            "title": "$:/language/Buttons/Quote/Caption",
            "text": "引言"
        },
        "$:/language/Buttons/Quote/Hint": {
            "title": "$:/language/Buttons/Quote/Hint",
            "text": "套用引言文本格式于包含所选文本的列"
        },
        "$:/language/Buttons/RotateLeft/Caption": {
            "title": "$:/language/Buttons/RotateLeft/Caption",
            "text": "向左旋转"
        },
        "$:/language/Buttons/RotateLeft/Hint": {
            "title": "$:/language/Buttons/RotateLeft/Hint",
            "text": "图像向左旋转 90 度"
        },
        "$:/language/Buttons/Size/Caption": {
            "title": "$:/language/Buttons/Size/Caption",
            "text": "图像大小"
        },
        "$:/language/Buttons/Size/Caption/Height": {
            "title": "$:/language/Buttons/Size/Caption/Height",
            "text": "高度︰"
        },
        "$:/language/Buttons/Size/Caption/Resize": {
            "title": "$:/language/Buttons/Size/Caption/Resize",
            "text": "调整图像的大小"
        },
        "$:/language/Buttons/Size/Caption/Width": {
            "title": "$:/language/Buttons/Size/Caption/Width",
            "text": "宽度:"
        },
        "$:/language/Buttons/Size/Hint": {
            "title": "$:/language/Buttons/Size/Hint",
            "text": "设置图像的大小"
        },
        "$:/language/Buttons/Stamp/Caption": {
            "title": "$:/language/Buttons/Stamp/Caption",
            "text": "印记"
        },
        "$:/language/Buttons/Stamp/Caption/New": {
            "title": "$:/language/Buttons/Stamp/Caption/New",
            "text": "添加您自己的"
        },
        "$:/language/Buttons/Stamp/Hint": {
            "title": "$:/language/Buttons/Stamp/Hint",
            "text": "插入一个预配置的文本片段"
        },
        "$:/language/Buttons/Stamp/New/Title": {
            "title": "$:/language/Buttons/Stamp/New/Title",
            "text": "在选单中显示的标题"
        },
        "$:/language/Buttons/Stamp/New/Text": {
            "title": "$:/language/Buttons/Stamp/New/Text",
            "text": "片段的文本。(记得在 `caption` 栏位中添加一个说明性的标题)。"
        },
        "$:/language/Buttons/Strikethrough/Caption": {
            "title": "$:/language/Buttons/Strikethrough/Caption",
            "text": "删除线"
        },
        "$:/language/Buttons/Strikethrough/Hint": {
            "title": "$:/language/Buttons/Strikethrough/Hint",
            "text": "套用删除线格式于所选文本"
        },
        "$:/language/Buttons/Subscript/Caption": {
            "title": "$:/language/Buttons/Subscript/Caption",
            "text": "下标"
        },
        "$:/language/Buttons/Subscript/Hint": {
            "title": "$:/language/Buttons/Subscript/Hint",
            "text": "套用下标格式于所选文本"
        },
        "$:/language/Buttons/Superscript/Caption": {
            "title": "$:/language/Buttons/Superscript/Caption",
            "text": "上标"
        },
        "$:/language/Buttons/Superscript/Hint": {
            "title": "$:/language/Buttons/Superscript/Hint",
            "text": "套用上标格式于所选文本"
        },
        "$:/language/Buttons/ToggleSidebar/Hint": {
            "title": "$:/language/Buttons/ToggleSidebar/Hint",
            "text": "切换显示或隐藏侧边栏"
        },
        "$:/language/Buttons/Transcludify/Caption": {
            "title": "$:/language/Buttons/Transcludify/Caption",
            "text": "嵌入"
        },
        "$:/language/Buttons/Transcludify/Hint": {
            "title": "$:/language/Buttons/Transcludify/Hint",
            "text": "套用嵌入于所选文字"
        },
        "$:/language/Buttons/Underline/Caption": {
            "title": "$:/language/Buttons/Underline/Caption",
            "text": "下划线"
        },
        "$:/language/Buttons/Underline/Hint": {
            "title": "$:/language/Buttons/Underline/Hint",
            "text": "套用下划线格式于所选文本"
        },
        "$:/language/ControlPanel/Advanced/Caption": {
            "title": "$:/language/ControlPanel/Advanced/Caption",
            "text": "高级"
        },
        "$:/language/ControlPanel/Advanced/Hint": {
            "title": "$:/language/ControlPanel/Advanced/Hint",
            "text": "关于此 TiddlyWiki 的内部信息"
        },
        "$:/language/ControlPanel/Appearance/Caption": {
            "title": "$:/language/ControlPanel/Appearance/Caption",
            "text": "视觉外观"
        },
        "$:/language/ControlPanel/Appearance/Hint": {
            "title": "$:/language/ControlPanel/Appearance/Hint",
            "text": "定制您的 TiddlyWiki 外观。"
        },
        "$:/language/ControlPanel/Basics/AnimDuration/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AnimDuration/Prompt",
            "text": "动画持续时间"
        },
        "$:/language/ControlPanel/Basics/AutoFocus/Prompt": {
            "title": "$:/language/ControlPanel/Basics/AutoFocus/Prompt",
            "text": "编辑条目时的默认自动停留栏位"
        },
        "$:/language/ControlPanel/Basics/Caption": {
            "title": "$:/language/ControlPanel/Basics/Caption",
            "text": "基本"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/BottomHint",
            "text": "标题含空白时请使用 &#91;&#91;双中括弧&#93;&#93;,或者您可用 <$button set=\"$:/DefaultTiddlers\" setTo=\"[list[$:/StoryList]]\">保留开启中的条目顺序</$button>"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/Prompt",
            "text": "首页"
        },
        "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint": {
            "title": "$:/language/ControlPanel/Basics/DefaultTiddlers/TopHint",
            "text": "默认开启的条目"
        },
        "$:/language/ControlPanel/Basics/Language/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Language/Prompt",
            "text": "您好!当前的语言:"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Tags/Prompt",
            "text": "新日志条目的标签"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Text/Prompt",
            "text": "新日志条目的内容"
        },
        "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewJournal/Title/Prompt",
            "text": "新日志条目的名称"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Tags/Prompt",
            "text": "新条目的标签"
        },
        "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/NewTiddler/Title/Prompt",
            "text": "新条目的名称"
        },
        "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/OverriddenShadowTiddlers/Prompt",
            "text": "被覆盖的默认条目数量"
        },
        "$:/language/ControlPanel/Basics/RemoveTags": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags",
            "text": "更新到当前格式"
        },
        "$:/language/ControlPanel/Basics/RemoveTags/Hint": {
            "title": "$:/language/ControlPanel/Basics/RemoveTags/Hint",
            "text": "将标签配置更新为最新格式"
        },
        "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/ShadowTiddlers/Prompt",
            "text": "默认条目数量"
        },
        "$:/language/ControlPanel/Basics/Subtitle/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Subtitle/Prompt",
            "text": "副标题"
        },
        "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/SystemTiddlers/Prompt",
            "text": "系统条目数量"
        },
        "$:/language/ControlPanel/Basics/Tags/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tags/Prompt",
            "text": "标签数量"
        },
        "$:/language/ControlPanel/Basics/Tiddlers/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Tiddlers/Prompt",
            "text": "一般条目数量"
        },
        "$:/language/ControlPanel/Basics/Title/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Title/Prompt",
            "text": "标题"
        },
        "$:/language/ControlPanel/Basics/Username/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Username/Prompt",
            "text": "编辑者署名"
        },
        "$:/language/ControlPanel/Basics/Version/Prompt": {
            "title": "$:/language/ControlPanel/Basics/Version/Prompt",
            "text": "~TiddlyWiki 版本"
        },
        "$:/language/ControlPanel/EditorTypes/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Caption",
            "text": "编辑器类型"
        },
        "$:/language/ControlPanel/EditorTypes/Editor/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Editor/Caption",
            "text": "编辑器"
        },
        "$:/language/ControlPanel/EditorTypes/Hint": {
            "title": "$:/language/ControlPanel/EditorTypes/Hint",
            "text": "这些条目决定使用哪个编辑器来编辑特定条目类型。"
        },
        "$:/language/ControlPanel/EditorTypes/Type/Caption": {
            "title": "$:/language/ControlPanel/EditorTypes/Type/Caption",
            "text": "类型"
        },
        "$:/language/ControlPanel/Info/Caption": {
            "title": "$:/language/ControlPanel/Info/Caption",
            "text": "信息"
        },
        "$:/language/ControlPanel/Info/Hint": {
            "title": "$:/language/ControlPanel/Info/Hint",
            "text": "有关此 TiddlyWiki 的信息"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Prompt",
            "text": "在此输入快捷键"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Add/Caption",
            "text": "添加快捷键"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Caption",
            "text": "快捷键"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Hint",
            "text": "管理键盘快捷键分配"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/NoShortcuts/Caption",
            "text": "尚无指定快捷键"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Remove/Hint",
            "text": "删除快捷键"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/All": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/All",
            "text": "所有平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Mac",
            "text": "仅 Macintosh 平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonMac",
            "text": "仅非 Macintosh 平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Linux",
            "text": "仅 Linux 平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonLinux",
            "text": "仅非 Linux 平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/Windows",
            "text": "仅 Windows 平台"
        },
        "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows": {
            "title": "$:/language/ControlPanel/KeyboardShortcuts/Platform/NonWindows",
            "text": "仅非 Windows 平台"
        },
        "$:/language/ControlPanel/LayoutSwitcher/Caption": {
            "title": "$:/language/ControlPanel/LayoutSwitcher/Caption",
            "text": "布局"
        },
        "$:/language/ControlPanel/LoadedModules/Caption": {
            "title": "$:/language/ControlPanel/LoadedModules/Caption",
            "text": "已加载的模块"
        },
        "$:/language/ControlPanel/LoadedModules/Hint": {
            "title": "$:/language/ControlPanel/LoadedModules/Hint",
            "text": "这些是当前已加载的模块之源码条目。斜体的模块则无源码条目,通常是因为它们是在引导过程中设置。"
        },
        "$:/language/ControlPanel/Palette/Caption": {
            "title": "$:/language/ControlPanel/Palette/Caption",
            "text": "调色板"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Caption",
            "text": "复制"
        },
        "$:/language/ControlPanel/Palette/Editor/Clone/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Clone/Prompt",
            "text": "建议您修改前先复制此默认调色板"
        },
        "$:/language/ControlPanel/Palette/Editor/Delete/Hint": {
            "title": "$:/language/ControlPanel/Palette/Editor/Delete/Hint",
            "text": "从当前调色板中删除此项"
        },
        "$:/language/ControlPanel/Palette/Editor/Names/External/Show": {
            "title": "$:/language/ControlPanel/Palette/Editor/Names/External/Show",
            "text": "显示不属于当前调色板的颜色名称"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt/Modified": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt/Modified",
            "text": "此默认调色板已被修改过"
        },
        "$:/language/ControlPanel/Palette/Editor/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Editor/Prompt",
            "text": "编辑"
        },
        "$:/language/ControlPanel/Palette/Editor/Reset/Caption": {
            "title": "$:/language/ControlPanel/Palette/Editor/Reset/Caption",
            "text": "重置"
        },
        "$:/language/ControlPanel/Palette/HideEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/HideEditor/Caption",
            "text": "隐藏编辑器"
        },
        "$:/language/ControlPanel/Palette/Prompt": {
            "title": "$:/language/ControlPanel/Palette/Prompt",
            "text": "当前的调色板:"
        },
        "$:/language/ControlPanel/Palette/ShowEditor/Caption": {
            "title": "$:/language/ControlPanel/Palette/ShowEditor/Caption",
            "text": "显示编辑器"
        },
        "$:/language/ControlPanel/Plugins/Add/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Add/Hint",
            "text": "从官方插件库安装插件"
        },
        "$:/language/ControlPanel/Plugins/Add/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Add/Caption",
            "text": "获取更多插件"
        },
        "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/AlreadyInstalled/Hint",
            "text": "此插件已经安装版本 <$text text=<<installedVersion>>/>"
        },
        "$:/language/ControlPanel/Plugins/AlsoRequires": {
            "title": "$:/language/ControlPanel/Plugins/AlsoRequires",
            "text": "还需要:"
        },
        "$:/language/ControlPanel/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Caption",
            "text": "插件"
        },
        "$:/language/ControlPanel/Plugins/Disable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Caption",
            "text": "禁用"
        },
        "$:/language/ControlPanel/Plugins/Disable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Disable/Hint",
            "text": "重新加载页面时禁用此插件"
        },
        "$:/language/ControlPanel/Plugins/Disabled/Status": {
            "title": "$:/language/ControlPanel/Plugins/Disabled/Status",
            "text": "(已禁用)"
        },
        "$:/language/ControlPanel/Plugins/Downgrade/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Downgrade/Caption",
            "text": "降级"
        },
        "$:/language/ControlPanel/Plugins/Empty/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Empty/Hint",
            "text": "无"
        },
        "$:/language/ControlPanel/Plugins/Enable/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Caption",
            "text": "启用"
        },
        "$:/language/ControlPanel/Plugins/Enable/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Enable/Hint",
            "text": "重新加载页面时启用此插件"
        },
        "$:/language/ControlPanel/Plugins/Install/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Install/Caption",
            "text": "安装"
        },
        "$:/language/ControlPanel/Plugins/Installed/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Installed/Hint",
            "text": "当前已安装的插件:"
        },
        "$:/language/ControlPanel/Plugins/Languages/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Caption",
            "text": "语言"
        },
        "$:/language/ControlPanel/Plugins/Languages/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Languages/Hint",
            "text": "语言包插件"
        },
        "$:/language/ControlPanel/Plugins/NoInfoFound/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NoInfoFound/Hint",
            "text": "无 ''\"<$text text=<<currentTab>>/>\"''"
        },
        "$:/language/ControlPanel/Plugins/NoInformation/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NoInformation/Hint",
            "text": "未提供信息"
        },
        "$:/language/ControlPanel/Plugins/NotInstalled/Hint": {
            "title": "$:/language/ControlPanel/Plugins/NotInstalled/Hint",
            "text": "尚未安装此插件"
        },
        "$:/language/ControlPanel/Plugins/OpenPluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/OpenPluginLibrary",
            "text": "开启插件程式库"
        },
        "$:/language/ControlPanel/Plugins/ClosePluginLibrary": {
            "title": "$:/language/ControlPanel/Plugins/ClosePluginLibrary",
            "text": "关闭插件程式库"
        },
        "$:/language/ControlPanel/Plugins/PluginWillRequireReload": {
            "title": "$:/language/ControlPanel/Plugins/PluginWillRequireReload",
            "text": "(需要重新加载)"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Caption",
            "text": "插件"
        },
        "$:/language/ControlPanel/Plugins/Plugins/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Plugins/Hint",
            "text": "插件"
        },
        "$:/language/ControlPanel/Plugins/Reinstall/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Reinstall/Caption",
            "text": "重新安装"
        },
        "$:/language/ControlPanel/Plugins/Themes/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Caption",
            "text": "布景主题"
        },
        "$:/language/ControlPanel/Plugins/Themes/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Themes/Hint",
            "text": "布景主题插件"
        },
        "$:/language/ControlPanel/Plugins/Update/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Update/Caption",
            "text": "更新"
        },
        "$:/language/ControlPanel/Plugins/Updates/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Caption",
            "text": "更新"
        },
        "$:/language/ControlPanel/Plugins/Updates/Hint": {
            "title": "$:/language/ControlPanel/Plugins/Updates/Hint",
            "text": "已安装插件的可用更新"
        },
        "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption": {
            "title": "$:/language/ControlPanel/Plugins/Updates/UpdateAll/Caption",
            "text": "更新 <<update-count>> 个插件"
        },
        "$:/language/ControlPanel/Plugins/SubPluginPrompt": {
            "title": "$:/language/ControlPanel/Plugins/SubPluginPrompt",
            "text": "提供 <<count>> 个可用的附加插件"
        },
        "$:/language/ControlPanel/Parsing/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Caption",
            "text": "解析"
        },
        "$:/language/ControlPanel/Parsing/Hint": {
            "title": "$:/language/ControlPanel/Parsing/Hint",
            "text": "在此您可以全域禁用或启用维基解析规则。要使更改生效,请保存并重新加载您的维基。禁用某些解析规则,会妨碍 <$text text=\"TiddlyWiki\"/> 正常运作。可使用[[安全模式|https://tiddlywiki.com/#SafeMode]]恢复正常操作。"
        },
        "$:/language/ControlPanel/Parsing/Block/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Block/Caption",
            "text": "区块解析规则"
        },
        "$:/language/ControlPanel/Parsing/Inline/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Inline/Caption",
            "text": "内联解析规则"
        },
        "$:/language/ControlPanel/Parsing/Pragma/Caption": {
            "title": "$:/language/ControlPanel/Parsing/Pragma/Caption",
            "text": "编译指示解析规则"
        },
        "$:/language/ControlPanel/Saving/Caption": {
            "title": "$:/language/ControlPanel/Saving/Caption",
            "text": "保存"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Description",
            "text": "允许下载保存模块的自动保存"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/AutoSave/Hint",
            "text": "启用下载保存模块的自动保存"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Caption": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Caption",
            "text": "下载保存模块"
        },
        "$:/language/ControlPanel/Saving/DownloadSaver/Hint": {
            "title": "$:/language/ControlPanel/Saving/DownloadSaver/Hint",
            "text": "这些设置适用于兼容 HTML5 的下载保存模块"
        },
        "$:/language/ControlPanel/Saving/General/Caption": {
            "title": "$:/language/ControlPanel/Saving/General/Caption",
            "text": "通用"
        },
        "$:/language/ControlPanel/Saving/General/Hint": {
            "title": "$:/language/ControlPanel/Saving/General/Hint",
            "text": "这些设置适用于所有已载入的保存模块"
        },
        "$:/language/ControlPanel/Saving/Hint": {
            "title": "$:/language/ControlPanel/Saving/Hint",
            "text": "用于通过保存模块将整个 TiddlyWiki 保存为单个文件的设置"
        },
        "$:/language/ControlPanel/Saving/GitService/Branch": {
            "title": "$:/language/ControlPanel/Saving/GitService/Branch",
            "text": "用于保存的目标分支"
        },
        "$:/language/ControlPanel/Saving/GitService/CommitMessage": {
            "title": "$:/language/ControlPanel/Saving/GitService/CommitMessage",
            "text": "由 TiddlyWiki 保存"
        },
        "$:/language/ControlPanel/Saving/GitService/Description": {
            "title": "$:/language/ControlPanel/Saving/GitService/Description",
            "text": "这些设置仅用于保存至 <<service-name>>"
        },
        "$:/language/ControlPanel/Saving/GitService/Filename": {
            "title": "$:/language/ControlPanel/Saving/GitService/Filename",
            "text": "目标文件的文件名称 (例如,`index.html`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Path": {
            "title": "$:/language/ControlPanel/Saving/GitService/Path",
            "text": "目标文件的路径 (例如,`/wiki/`)"
        },
        "$:/language/ControlPanel/Saving/GitService/Repo": {
            "title": "$:/language/ControlPanel/Saving/GitService/Repo",
            "text": "目标存储库 (例如,`Jermolene/TiddlyWiki5`)"
        },
        "$:/language/ControlPanel/Saving/GitService/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/GitService/ServerURL",
            "text": "服务器 API 网址"
        },
        "$:/language/ControlPanel/Saving/GitService/UserName": {
            "title": "$:/language/ControlPanel/Saving/GitService/UserName",
            "text": "用户名称"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Caption",
            "text": "~GitHub 保存模块"
        },
        "$:/language/ControlPanel/Saving/GitService/GitHub/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitHub/Password",
            "text": "密码、OAUTH 令牌,或个人存取令牌 (详见 [[GitHub 帮助页面|https://help.github.com/en/articles/creating-a-personal-access-token-for-the-command-line]])"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Caption",
            "text": "~GitLab 保存模块"
        },
        "$:/language/ControlPanel/Saving/GitService/GitLab/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/GitLab/Password",
            "text": "个人存取令牌的 API (详见 [[GitLab 帮助页面|https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html]])"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Caption": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Caption",
            "text": "Gitea 保存模块"
        },
        "$:/language/ControlPanel/Saving/GitService/Gitea/Password": {
            "title": "$:/language/ControlPanel/Saving/GitService/Gitea/Password",
            "text": "个人存取令牌的 API (通过 Gitea 的 Web 界面:`设定 | 应用程序 | 产生新的令牌`)"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Advanced/Heading",
            "text": "高级设置"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/BackupDir",
            "text": "备份文件夹"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Backups": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Backups",
            "text": "备份"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Caption": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Caption",
            "text": "~TiddlySpot 保存模块"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ControlPanel",
            "text": "~TiddlySpot 控制台"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Description": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Description",
            "text": "这些设置只适用于保存到 http://tiddlyspot.com 或兼容的远程服务器时。"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Filename": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Filename",
            "text": "上传文件名"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Heading": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Heading",
            "text": "~TiddlySpot"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Hint": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Hint",
            "text": "//默认之服务器网址 `http://<wikiname>.tiddlyspot.com/store.cgi`,可改为定制之服务器网址,例如 `http://example.com/store.php`。//"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/Password": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/Password",
            "text": "密码"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ReadOnly",
            "text": "~TiddlySpot 服务目前仅以唯读形式提供。相关最新详细信息,请参阅 http://tiddlyspot.com/ 。~TiddlySpot 保存模块仍可用于保存到兼容的服务器。"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/ServerURL",
            "text": "服务器网址"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UploadDir",
            "text": "上传文件夹"
        },
        "$:/language/ControlPanel/Saving/TiddlySpot/UserName": {
            "title": "$:/language/ControlPanel/Saving/TiddlySpot/UserName",
            "text": "用户"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Caption": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Caption",
            "text": "自动保存"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Disabled/Description",
            "text": "不要自动保存变更"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Enabled/Description",
            "text": "自动保存变更"
        },
        "$:/language/ControlPanel/Settings/AutoSave/Hint": {
            "title": "$:/language/ControlPanel/Settings/AutoSave/Hint",
            "text": "当使用支持的保存模块时,在编辑期间尝试自动保存变更"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Caption": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Caption",
            "text": "驼峰式维基链接"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Hint": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Hint",
            "text": "您可以全域禁用驼峰式短语自动链接。须保存后重新加载,方才生效。"
        },
        "$:/language/ControlPanel/Settings/CamelCase/Description": {
            "title": "$:/language/ControlPanel/Settings/CamelCase/Description",
            "text": "启用自动驼峰式链接"
        },
        "$:/language/ControlPanel/Settings/Caption": {
            "title": "$:/language/ControlPanel/Settings/Caption",
            "text": "设置"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Caption",
            "text": "默认侧边栏页签"
        },
        "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultSidebarTab/Hint",
            "text": "指定默认显示的侧边栏页签"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Caption",
            "text": "更多侧边栏的默认页签"
        },
        "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint": {
            "title": "$:/language/ControlPanel/Settings/DefaultMoreSidebarTab/Hint",
            "text": "指定默认显示的更多侧栏页签"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Caption",
            "text": "编辑器工具栏"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Hint",
            "text": "启用或禁用编辑器工具栏︰"
        },
        "$:/language/ControlPanel/Settings/EditorToolbar/Description": {
            "title": "$:/language/ControlPanel/Settings/EditorToolbar/Description",
            "text": "显示编辑器工具栏"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Caption",
            "text": "条目信息面板模式"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Hint",
            "text": "控制条目信息面板何时关闭︰"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Popup/Description",
            "text": "条目信息面板自动关闭"
        },
        "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description": {
            "title": "$:/language/ControlPanel/Settings/InfoPanelMode/Sticky/Description",
            "text": "条目信息面板保持打开状态,直到明确关闭"
        },
        "$:/language/ControlPanel/Settings/Hint": {
            "title": "$:/language/ControlPanel/Settings/Hint",
            "text": "这些高级设置让您定制 TiddlyWiki 的行为。"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/Caption",
            "text": "条目开启行为"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/InsideRiver/Hint",
            "text": "从故事河//中//导航"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OutsideRiver/Hint",
            "text": "从故事河//外//导航"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAbove",
            "text": "开启于当前条目之上"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenBelow",
            "text": "开启于当前条目之下"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtTop",
            "text": "开启于故事河的顶端"
        },
        "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom": {
            "title": "$:/language/ControlPanel/Settings/LinkToBehaviour/OpenAtBottom",
            "text": "开启于故事河的底部"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Caption",
            "text": "维基链接"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Hint",
            "text": "选择是否要链接到尚未存在的条目"
        },
        "$:/language/ControlPanel/Settings/MissingLinks/Description": {
            "title": "$:/language/ControlPanel/Settings/MissingLinks/Description",
            "text": "启用链接到佚失条目"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Caption",
            "text": "网址栏导览"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Hint",
            "text": "在浏览器网址栏导览到条目时的行为:"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/No/Description",
            "text": "不更新网址栏"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permalink/Description",
            "text": "包含目标条目"
        },
        "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationAddressBar/Permaview/Description",
            "text": "包括目标条目和当前已开启的条目序列"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Caption",
            "text": "历史记录导览"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Hint",
            "text": "当导览到条目时,更新浏览器历史记录:"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/No/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/No/Description",
            "text": "不更新历史记录"
        },
        "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationHistory/Yes/Description",
            "text": "更新历史记录"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Caption",
            "text": "引用链接/固定链接 模式"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/Hint",
            "text": "选择 引用链接/固定链接 的处理方式:"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/CopyToClipboard/Description",
            "text": "将 引用链接/固定链接 网址复制到剪贴板"
        },
        "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description": {
            "title": "$:/language/ControlPanel/Settings/NavigationPermalinkviewMode/UpdateAddressBar/Description",
            "text": "以 引用链接/固定链接 更新网址栏"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Caption",
            "text": "性能检测"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Hint",
            "text": "在浏览器的开发人员控制台,显示性能统计数据。需要重新加载才能生效。"
        },
        "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description": {
            "title": "$:/language/ControlPanel/Settings/PerformanceInstrumentation/Description",
            "text": "启用性能检测"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Caption",
            "text": "工具栏按钮样式"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Hint",
            "text": "选择工具栏按钮的样式:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Borderless",
            "text": "无边框"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Boxed",
            "text": "方框"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtonStyle/Styles/Rounded",
            "text": "圆形"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Caption": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Caption",
            "text": "工具栏按钮"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Hint": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Hint",
            "text": "默认的工具栏按钮外观:"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Icons/Description",
            "text": "包含图标"
        },
        "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description": {
            "title": "$:/language/ControlPanel/Settings/ToolbarButtons/Text/Description",
            "text": "包含文本"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Caption": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Caption",
            "text": "条目标题"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Hint": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Hint",
            "text": "可选地显示条目标题为链接"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/No/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/No/Description",
            "text": "不显示条目标题为链接"
        },
        "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description": {
            "title": "$:/language/ControlPanel/Settings/TitleLinks/Yes/Description",
            "text": "显示条目标题为链接"
        },
        "$:/language/ControlPanel/StoryView/Caption": {
            "title": "$:/language/ControlPanel/StoryView/Caption",
            "text": "查看模式"
        },
        "$:/language/ControlPanel/StoryView/Prompt": {
            "title": "$:/language/ControlPanel/StoryView/Prompt",
            "text": "当前的查看模式:"
        },
        "$:/language/ControlPanel/Stylesheets/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Caption",
            "text": "样式表"
        },
        "$:/language/ControlPanel/Stylesheets/Expand/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Expand/Caption",
            "text": "全部展开"
        },
        "$:/language/ControlPanel/Stylesheets/Hint": {
            "title": "$:/language/ControlPanel/Stylesheets/Hint",
            "text": "这是当前标签为 <<tag \"$:/tags/Stylesheet\">> 的样式表条目呈现的 CSS"
        },
        "$:/language/ControlPanel/Stylesheets/Restore/Caption": {
            "title": "$:/language/ControlPanel/Stylesheets/Restore/Caption",
            "text": "复原"
        },
        "$:/language/ControlPanel/Theme/Caption": {
            "title": "$:/language/ControlPanel/Theme/Caption",
            "text": "布景主题"
        },
        "$:/language/ControlPanel/Theme/Prompt": {
            "title": "$:/language/ControlPanel/Theme/Prompt",
            "text": "当前的布景主题:"
        },
        "$:/language/ControlPanel/TiddlerFields/Caption": {
            "title": "$:/language/ControlPanel/TiddlerFields/Caption",
            "text": "条目栏位"
        },
        "$:/language/ControlPanel/TiddlerFields/Hint": {
            "title": "$:/language/ControlPanel/TiddlerFields/Hint",
            "text": "这是本维基使用中的所有条目栏位(含系统条目的栏位,但默认条目的栏位除外)。"
        },
        "$:/language/ControlPanel/Toolbars/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/Caption",
            "text": "工具栏"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Caption",
            "text": "编辑工具栏"
        },
        "$:/language/ControlPanel/Toolbars/EditToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditToolbar/Hint",
            "text": "选择将显示哪些按钮于条目的编辑模式工具栏。拖放可改变顺序。"
        },
        "$:/language/ControlPanel/Toolbars/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/Hint",
            "text": "选择将显示哪些工具栏按钮"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Caption",
            "text": "页面工具栏"
        },
        "$:/language/ControlPanel/Toolbars/PageControls/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/PageControls/Hint",
            "text": "选择将显示哪些按钮于主页面的工具栏。拖放可改变顺序。"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Caption",
            "text": "编辑器工具栏"
        },
        "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/EditorToolbar/Hint",
            "text": "选择将显示哪些按钮于编辑器工具栏。请注意,某些按钮只会出现在编辑某一类型的条目时。拖放可改变顺序。"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Caption",
            "text": "查看工具栏"
        },
        "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint": {
            "title": "$:/language/ControlPanel/Toolbars/ViewToolbar/Hint",
            "text": "选择将显示哪些按钮于条目的查看模式工具栏。拖放可改变顺序。"
        },
        "$:/language/ControlPanel/Tools/Download/Full/Caption": {
            "title": "$:/language/ControlPanel/Tools/Download/Full/Caption",
            "text": "下载完整副本"
        },
        "$:/core/zh-Hans/readme": {
            "title": "$:/core/zh-Hans/readme",
            "text": "此插件包含 TiddlyWiki 的核心组件,包括:\n\n* JavaScript 代码模块\n* 图标\n* 创建 TiddlyWiki 的用户介面所需的模板\n* 核心所使用的可当地语系化字串的英国英语 (''en-GB'') 翻译\n"
        },
        "$:/language/Date/Long/Day/0": {
            "title": "$:/language/Date/Long/Day/0",
            "text": "周日"
        },
        "$:/language/Date/Long/Day/1": {
            "title": "$:/language/Date/Long/Day/1",
            "text": "周一"
        },
        "$:/language/Date/Long/Day/2": {
            "title": "$:/language/Date/Long/Day/2",
            "text": "周二"
        },
        "$:/language/Date/Long/Day/3": {
            "title": "$:/language/Date/Long/Day/3",
            "text": "周三"
        },
        "$:/language/Date/Long/Day/4": {
            "title": "$:/language/Date/Long/Day/4",
            "text": "周四"
        },
        "$:/language/Date/Long/Day/5": {
            "title": "$:/language/Date/Long/Day/5",
            "text": "周五"
        },
        "$:/language/Date/Long/Day/6": {
            "title": "$:/language/Date/Long/Day/6",
            "text": "周六"
        },
        "$:/language/Date/Long/Month/1": {
            "title": "$:/language/Date/Long/Month/1",
            "text": "一月"
        },
        "$:/language/Date/Long/Month/2": {
            "title": "$:/language/Date/Long/Month/2",
            "text": "二月"
        },
        "$:/language/Date/Long/Month/3": {
            "title": "$:/language/Date/Long/Month/3",
            "text": "三月"
        },
        "$:/language/Date/Long/Month/4": {
            "title": "$:/language/Date/Long/Month/4",
            "text": "四月"
        },
        "$:/language/Date/Long/Month/5": {
            "title": "$:/language/Date/Long/Month/5",
            "text": "五月"
        },
        "$:/language/Date/Long/Month/6": {
            "title": "$:/language/Date/Long/Month/6",
            "text": "六月"
        },
        "$:/language/Date/Long/Month/7": {
            "title": "$:/language/Date/Long/Month/7",
            "text": "七月"
        },
        "$:/language/Date/Long/Month/8": {
            "title": "$:/language/Date/Long/Month/8",
            "text": "八月"
        },
        "$:/language/Date/Long/Month/9": {
            "title": "$:/language/Date/Long/Month/9",
            "text": "九月"
        },
        "$:/language/Date/Long/Month/10": {
            "title": "$:/language/Date/Long/Month/10",
            "text": "十月"
        },
        "$:/language/Date/Long/Month/11": {
            "title": "$:/language/Date/Long/Month/11",
            "text": "十一月"
        },
        "$:/language/Date/Long/Month/12": {
            "title": "$:/language/Date/Long/Month/12",
            "text": "十二月"
        },
        "$:/language/Date/Period/am": {
            "title": "$:/language/Date/Period/am",
            "text": "上午"
        },
        "$:/language/Date/Period/pm": {
            "title": "$:/language/Date/Period/pm",
            "text": "下午"
        },
        "$:/language/Date/Short/Day/0": {
            "title": "$:/language/Date/Short/Day/0",
            "text": "日"
        },
        "$:/language/Date/Short/Day/1": {
            "title": "$:/language/Date/Short/Day/1",
            "text": "一"
        },
        "$:/language/Date/Short/Day/2": {
            "title": "$:/language/Date/Short/Day/2",
            "text": "二"
        },
        "$:/language/Date/Short/Day/3": {
            "title": "$:/language/Date/Short/Day/3",
            "text": "三"
        },
        "$:/language/Date/Short/Day/4": {
            "title": "$:/language/Date/Short/Day/4",
            "text": "四"
        },
        "$:/language/Date/Short/Day/5": {
            "title": "$:/language/Date/Short/Day/5",
            "text": "五"
        },
        "$:/language/Date/Short/Day/6": {
            "title": "$:/language/Date/Short/Day/6",
            "text": "六"
        },
        "$:/language/Date/Short/Month/1": {
            "title": "$:/language/Date/Short/Month/1",
            "text": "01月"
        },
        "$:/language/Date/Short/Month/2": {
            "title": "$:/language/Date/Short/Month/2",
            "text": "02月"
        },
        "$:/language/Date/Short/Month/3": {
            "title": "$:/language/Date/Short/Month/3",
            "text": "03月"
        },
        "$:/language/Date/Short/Month/4": {
            "title": "$:/language/Date/Short/Month/4",
            "text": "04月"
        },
        "$:/language/Date/Short/Month/5": {
            "title": "$:/language/Date/Short/Month/5",
            "text": "05月"
        },
        "$:/language/Date/Short/Month/6": {
            "title": "$:/language/Date/Short/Month/6",
            "text": "06月"
        },
        "$:/language/Date/Short/Month/7": {
            "title": "$:/language/Date/Short/Month/7",
            "text": "07月"
        },
        "$:/language/Date/Short/Month/8": {
            "title": "$:/language/Date/Short/Month/8",
            "text": "08月"
        },
        "$:/language/Date/Short/Month/9": {
            "title": "$:/language/Date/Short/Month/9",
            "text": "09月"
        },
        "$:/language/Date/Short/Month/10": {
            "title": "$:/language/Date/Short/Month/10",
            "text": "10月"
        },
        "$:/language/Date/Short/Month/11": {
            "title": "$:/language/Date/Short/Month/11",
            "text": "11月"
        },
        "$:/language/Date/Short/Month/12": {
            "title": "$:/language/Date/Short/Month/12",
            "text": "12月"
        },
        "$:/language/RelativeDate/Future/Days": {
            "title": "$:/language/RelativeDate/Future/Days",
            "text": "<<period>> 天后"
        },
        "$:/language/RelativeDate/Future/Hours": {
            "title": "$:/language/RelativeDate/Future/Hours",
            "text": "<<period>> 小时后"
        },
        "$:/language/RelativeDate/Future/Minutes": {
            "title": "$:/language/RelativeDate/Future/Minutes",
            "text": "<<period>> 分钟后"
        },
        "$:/language/RelativeDate/Future/Months": {
            "title": "$:/language/RelativeDate/Future/Months",
            "text": "<<period>> 个月后"
        },
        "$:/language/RelativeDate/Future/Second": {
            "title": "$:/language/RelativeDate/Future/Second",
            "text": "1 秒后"
        },
        "$:/language/RelativeDate/Future/Seconds": {
            "title": "$:/language/RelativeDate/Future/Seconds",
            "text": "<<period>> 秒后"
        },
        "$:/language/RelativeDate/Future/Years": {
            "title": "$:/language/RelativeDate/Future/Years",
            "text": "<<period>> 年后"
        },
        "$:/language/RelativeDate/Past/Days": {
            "title": "$:/language/RelativeDate/Past/Days",
            "text": "<<period>> 天前"
        },
        "$:/language/RelativeDate/Past/Hours": {
            "title": "$:/language/RelativeDate/Past/Hours",
            "text": "<<period>> 小时前"
        },
        "$:/language/RelativeDate/Past/Minutes": {
            "title": "$:/language/RelativeDate/Past/Minutes",
            "text": "<<period>> 分钟前"
        },
        "$:/language/RelativeDate/Past/Months": {
            "title": "$:/language/RelativeDate/Past/Months",
            "text": "<<period>> 个月前"
        },
        "$:/language/RelativeDate/Past/Second": {
            "title": "$:/language/RelativeDate/Past/Second",
            "text": "1 秒前"
        },
        "$:/language/RelativeDate/Past/Seconds": {
            "title": "$:/language/RelativeDate/Past/Seconds",
            "text": "<<period>> 秒前"
        },
        "$:/language/RelativeDate/Past/Years": {
            "title": "$:/language/RelativeDate/Past/Years",
            "text": "<<period>> 年前"
        },
        "$:/language/Docs/ModuleTypes/allfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/allfilteroperator",
            "text": "''all'' 筛选器算子的子算子。"
        },
        "$:/language/Docs/ModuleTypes/animation": {
            "title": "$:/language/Docs/ModuleTypes/animation",
            "text": "动画模块包含可用于 RevealWidget 的动画。"
        },
        "$:/language/Docs/ModuleTypes/authenticator": {
            "title": "$:/language/Docs/ModuleTypes/authenticator",
            "text": "定义内置 HTTP 服务器对请求的身份验证方式。"
        },
        "$:/language/Docs/ModuleTypes/bitmapeditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/bitmapeditoroperation",
            "text": "一个位图编辑器工具栏操作。"
        },
        "$:/language/Docs/ModuleTypes/command": {
            "title": "$:/language/Docs/ModuleTypes/command",
            "text": "可于 Node.js 执行的指令。"
        },
        "$:/language/Docs/ModuleTypes/config": {
            "title": "$:/language/Docs/ModuleTypes/config",
            "text": "加入 `$tw.config` 的数据。"
        },
        "$:/language/Docs/ModuleTypes/filteroperator": {
            "title": "$:/language/Docs/ModuleTypes/filteroperator",
            "text": "个别筛选器算子方法。"
        },
        "$:/language/Docs/ModuleTypes/global": {
            "title": "$:/language/Docs/ModuleTypes/global",
            "text": "加入 `$tw` 的全域数据。"
        },
        "$:/language/Docs/ModuleTypes/info": {
            "title": "$:/language/Docs/ModuleTypes/info",
            "text": "透过 [[$:/temp/info-plugin]] 伪插件,发布系统信息。"
        },
        "$:/language/Docs/ModuleTypes/isfilteroperator": {
            "title": "$:/language/Docs/ModuleTypes/isfilteroperator",
            "text": "''is'' 筛选器算子的运算符。"
        },
        "$:/language/Docs/ModuleTypes/library": {
            "title": "$:/language/Docs/ModuleTypes/library",
            "text": "一般用途的 JavaScript 模块的通用模块类型。"
        },
        "$:/language/Docs/ModuleTypes/macro": {
            "title": "$:/language/Docs/ModuleTypes/macro",
            "text": "JavaScript ''宏''定义。"
        },
        "$:/language/Docs/ModuleTypes/parser": {
            "title": "$:/language/Docs/ModuleTypes/parser",
            "text": "不同内容类型的解析器。"
        },
        "$:/language/Docs/ModuleTypes/route": {
            "title": "$:/language/Docs/ModuleTypes/route",
            "text": "定义内置 HTTP 服务器如何处理各个网址格式。"
        },
        "$:/language/Docs/ModuleTypes/saver": {
            "title": "$:/language/Docs/ModuleTypes/saver",
            "text": "于浏览器保存文件的不同的保存处理方法。"
        },
        "$:/language/Docs/ModuleTypes/startup": {
            "title": "$:/language/Docs/ModuleTypes/startup",
            "text": "启动时期的功能函数。"
        },
        "$:/language/Docs/ModuleTypes/storyview": {
            "title": "$:/language/Docs/ModuleTypes/storyview",
            "text": "查看模式用以自订 list 小部件的动画与行为。"
        },
        "$:/language/Docs/ModuleTypes/texteditoroperation": {
            "title": "$:/language/Docs/ModuleTypes/texteditoroperation",
            "text": "一个文本编辑器工具栏操作。"
        },
        "$:/language/Docs/ModuleTypes/tiddlerdeserializer": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerdeserializer",
            "text": "转换不同内容类型至条目。"
        },
        "$:/language/Docs/ModuleTypes/tiddlerfield": {
            "title": "$:/language/Docs/ModuleTypes/tiddlerfield",
            "text": "定义个别条目栏位的行为。"
        },
        "$:/language/Docs/ModuleTypes/tiddlermethod": {
            "title": "$:/language/Docs/ModuleTypes/tiddlermethod",
            "text": "添加方法至 `$tw.Tiddler` 原型。"
        },
        "$:/language/Docs/ModuleTypes/upgrader": {
            "title": "$:/language/Docs/ModuleTypes/upgrader",
            "text": "于升级/导入过程中,套用升级处理至条目。"
        },
        "$:/language/Docs/ModuleTypes/utils": {
            "title": "$:/language/Docs/ModuleTypes/utils",
            "text": "添加方法至 `$tw.utils`。"
        },
        "$:/language/Docs/ModuleTypes/utils-node": {
            "title": "$:/language/Docs/ModuleTypes/utils-node",
            "text": "将特定于 Node.js 的方法添加到 '$tw.utils'。"
        },
        "$:/language/Docs/ModuleTypes/widget": {
            "title": "$:/language/Docs/ModuleTypes/widget",
            "text": "封装 DOM 渲染和刷新的小部件。"
        },
        "$:/language/Docs/ModuleTypes/wikimethod": {
            "title": "$:/language/Docs/ModuleTypes/wikimethod",
            "text": "添加方法至 `$tw.Wiki`。"
        },
        "$:/language/Docs/ModuleTypes/wikirule": {
            "title": "$:/language/Docs/ModuleTypes/wikirule",
            "text": "WikiText 解析器的个别的语法规则。"
        },
        "$:/language/Docs/PaletteColours/alert-background": {
            "title": "$:/language/Docs/PaletteColours/alert-background",
            "text": "警示背景"
        },
        "$:/language/Docs/PaletteColours/alert-border": {
            "title": "$:/language/Docs/PaletteColours/alert-border",
            "text": "警示边框"
        },
        "$:/language/Docs/PaletteColours/alert-highlight": {
            "title": "$:/language/Docs/PaletteColours/alert-highlight",
            "text": "警示高亮度"
        },
        "$:/language/Docs/PaletteColours/alert-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/alert-muted-foreground",
            "text": "警示的低调前景"
        },
        "$:/language/Docs/PaletteColours/background": {
            "title": "$:/language/Docs/PaletteColours/background",
            "text": "一般背景"
        },
        "$:/language/Docs/PaletteColours/blockquote-bar": {
            "title": "$:/language/Docs/PaletteColours/blockquote-bar",
            "text": "引言条"
        },
        "$:/language/Docs/PaletteColours/button-background": {
            "title": "$:/language/Docs/PaletteColours/button-background",
            "text": "默认按钮背景"
        },
        "$:/language/Docs/PaletteColours/button-border": {
            "title": "$:/language/Docs/PaletteColours/button-border",
            "text": "默认按钮边框"
        },
        "$:/language/Docs/PaletteColours/button-foreground": {
            "title": "$:/language/Docs/PaletteColours/button-foreground",
            "text": "默认按钮前景"
        },
        "$:/language/Docs/PaletteColours/code-background": {
            "title": "$:/language/Docs/PaletteColours/code-background",
            "text": "代码背景"
        },
        "$:/language/Docs/PaletteColours/code-border": {
            "title": "$:/language/Docs/PaletteColours/code-border",
            "text": "代码边框"
        },
        "$:/language/Docs/PaletteColours/code-foreground": {
            "title": "$:/language/Docs/PaletteColours/code-foreground",
            "text": "代码前景"
        },
        "$:/language/Docs/PaletteColours/dirty-indicator": {
            "title": "$:/language/Docs/PaletteColours/dirty-indicator",
            "text": "未保存变更指示器"
        },
        "$:/language/Docs/PaletteColours/download-background": {
            "title": "$:/language/Docs/PaletteColours/download-background",
            "text": "下载按钮背景"
        },
        "$:/language/Docs/PaletteColours/download-foreground": {
            "title": "$:/language/Docs/PaletteColours/download-foreground",
            "text": "下载按钮前景"
        },
        "$:/language/Docs/PaletteColours/dragger-background": {
            "title": "$:/language/Docs/PaletteColours/dragger-background",
            "text": "拖动区背景"
        },
        "$:/language/Docs/PaletteColours/dragger-foreground": {
            "title": "$:/language/Docs/PaletteColours/dragger-foreground",
            "text": "拖动区前景"
        },
        "$:/language/Docs/PaletteColours/dropdown-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-background",
            "text": "下拉背景"
        },
        "$:/language/Docs/PaletteColours/dropdown-border": {
            "title": "$:/language/Docs/PaletteColours/dropdown-border",
            "text": "下拉边框"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background-selected",
            "text": "选定的下拉页签背景"
        },
        "$:/language/Docs/PaletteColours/dropdown-tab-background": {
            "title": "$:/language/Docs/PaletteColours/dropdown-tab-background",
            "text": "下拉页签背景"
        },
        "$:/language/Docs/PaletteColours/dropzone-background": {
            "title": "$:/language/Docs/PaletteColours/dropzone-background",
            "text": "拖放背景"
        },
        "$:/language/Docs/PaletteColours/external-link-background-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-hover",
            "text": "悬停外部链结背景"
        },
        "$:/language/Docs/PaletteColours/external-link-background-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-background-visited",
            "text": "已造访过的外部链结背景"
        },
        "$:/language/Docs/PaletteColours/external-link-background": {
            "title": "$:/language/Docs/PaletteColours/external-link-background",
            "text": "外部链结背景"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-hover",
            "text": "悬停外部链结前景"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground-visited": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground-visited",
            "text": "已造访过的外部链结前景"
        },
        "$:/language/Docs/PaletteColours/external-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/external-link-foreground",
            "text": "外部链结前景"
        },
        "$:/language/Docs/PaletteColours/foreground": {
            "title": "$:/language/Docs/PaletteColours/foreground",
            "text": "一般前景"
        },
        "$:/language/Docs/PaletteColours/menubar-background": {
            "title": "$:/language/Docs/PaletteColours/menubar-background",
            "text": "菜单列背景"
        },
        "$:/language/Docs/PaletteColours/menubar-foreground": {
            "title": "$:/language/Docs/PaletteColours/menubar-foreground",
            "text": "菜单列前景"
        },
        "$:/language/Docs/PaletteColours/message-background": {
            "title": "$:/language/Docs/PaletteColours/message-background",
            "text": "信息框背景"
        },
        "$:/language/Docs/PaletteColours/message-border": {
            "title": "$:/language/Docs/PaletteColours/message-border",
            "text": "信息边框"
        },
        "$:/language/Docs/PaletteColours/message-foreground": {
            "title": "$:/language/Docs/PaletteColours/message-foreground",
            "text": "信息框前景"
        },
        "$:/language/Docs/PaletteColours/modal-backdrop": {
            "title": "$:/language/Docs/PaletteColours/modal-backdrop",
            "text": "模块背景幕"
        },
        "$:/language/Docs/PaletteColours/modal-background": {
            "title": "$:/language/Docs/PaletteColours/modal-background",
            "text": "模块背景"
        },
        "$:/language/Docs/PaletteColours/modal-border": {
            "title": "$:/language/Docs/PaletteColours/modal-border",
            "text": "模块边框"
        },
        "$:/language/Docs/PaletteColours/modal-footer-background": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-background",
            "text": "模块页脚背景"
        },
        "$:/language/Docs/PaletteColours/modal-footer-border": {
            "title": "$:/language/Docs/PaletteColours/modal-footer-border",
            "text": "模块页脚边框"
        },
        "$:/language/Docs/PaletteColours/modal-header-border": {
            "title": "$:/language/Docs/PaletteColours/modal-header-border",
            "text": "模块标题边框"
        },
        "$:/language/Docs/PaletteColours/muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/muted-foreground",
            "text": "一般低调前景"
        },
        "$:/language/Docs/PaletteColours/notification-background": {
            "title": "$:/language/Docs/PaletteColours/notification-background",
            "text": "通知背景"
        },
        "$:/language/Docs/PaletteColours/notification-border": {
            "title": "$:/language/Docs/PaletteColours/notification-border",
            "text": "通知边框"
        },
        "$:/language/Docs/PaletteColours/page-background": {
            "title": "$:/language/Docs/PaletteColours/page-background",
            "text": "页面背景"
        },
        "$:/language/Docs/PaletteColours/pre-background": {
            "title": "$:/language/Docs/PaletteColours/pre-background",
            "text": "pre 背景"
        },
        "$:/language/Docs/PaletteColours/pre-border": {
            "title": "$:/language/Docs/PaletteColours/pre-border",
            "text": "pre 边框"
        },
        "$:/language/Docs/PaletteColours/primary": {
            "title": "$:/language/Docs/PaletteColours/primary",
            "text": "主颜色"
        },
        "$:/language/Docs/PaletteColours/select-tag-background": {
            "title": "$:/language/Docs/PaletteColours/select-tag-background",
            "text": "`<select>` 元素背景"
        },
        "$:/language/Docs/PaletteColours/select-tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/select-tag-foreground",
            "text": "`<select>` 元素文本"
        },
        "$:/language/Docs/PaletteColours/sidebar-button-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-button-foreground",
            "text": "侧边栏按钮前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground-hover",
            "text": "悬停侧边栏控制项前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-controls-foreground",
            "text": "侧边栏控制项前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground-shadow": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground-shadow",
            "text": "侧边栏前景阴影"
        },
        "$:/language/Docs/PaletteColours/sidebar-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-foreground",
            "text": "侧边栏前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground-hover",
            "text": "悬停侧边栏低调前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-muted-foreground",
            "text": "侧边栏低调前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background-selected",
            "text": "侧边栏选定页签背景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-background": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-background",
            "text": "侧边栏页签背景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border-selected",
            "text": "侧边栏选定页签边框"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-border": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-border",
            "text": "侧边栏页签边框"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-divider": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-divider",
            "text": "侧边栏页签分隔线"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground-selected",
            "text": "侧边栏选定页签前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tab-foreground",
            "text": "侧边栏页签前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground-hover",
            "text": "侧边栏悬停条目链结前景"
        },
        "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/sidebar-tiddler-link-foreground",
            "text": "侧边栏条目链结前景"
        },
        "$:/language/Docs/PaletteColours/site-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/site-title-foreground",
            "text": "网站标题前景"
        },
        "$:/language/Docs/PaletteColours/static-alert-foreground": {
            "title": "$:/language/Docs/PaletteColours/static-alert-foreground",
            "text": "静态警示前景"
        },
        "$:/language/Docs/PaletteColours/tab-background-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-background-selected",
            "text": "选定的页签背景"
        },
        "$:/language/Docs/PaletteColours/tab-background": {
            "title": "$:/language/Docs/PaletteColours/tab-background",
            "text": "页签背景"
        },
        "$:/language/Docs/PaletteColours/tab-border-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-border-selected",
            "text": "选定的页签边框"
        },
        "$:/language/Docs/PaletteColours/tab-border": {
            "title": "$:/language/Docs/PaletteColours/tab-border",
            "text": "页签边框"
        },
        "$:/language/Docs/PaletteColours/tab-divider": {
            "title": "$:/language/Docs/PaletteColours/tab-divider",
            "text": "页签分隔线"
        },
        "$:/language/Docs/PaletteColours/tab-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground-selected",
            "text": "选定的页签前景"
        },
        "$:/language/Docs/PaletteColours/tab-foreground": {
            "title": "$:/language/Docs/PaletteColours/tab-foreground",
            "text": "页签前景"
        },
        "$:/language/Docs/PaletteColours/table-border": {
            "title": "$:/language/Docs/PaletteColours/table-border",
            "text": "表格边框"
        },
        "$:/language/Docs/PaletteColours/table-footer-background": {
            "title": "$:/language/Docs/PaletteColours/table-footer-background",
            "text": "表格页脚背景"
        },
        "$:/language/Docs/PaletteColours/table-header-background": {
            "title": "$:/language/Docs/PaletteColours/table-header-background",
            "text": "表格标题背景"
        },
        "$:/language/Docs/PaletteColours/tag-background": {
            "title": "$:/language/Docs/PaletteColours/tag-background",
            "text": "标签背景"
        },
        "$:/language/Docs/PaletteColours/tag-foreground": {
            "title": "$:/language/Docs/PaletteColours/tag-foreground",
            "text": "标签前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-background",
            "text": "条目背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-border",
            "text": "条目边框"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-hover",
            "text": "悬停的条目控制项前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground-selected",
            "text": "选定的条目控制项前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-controls-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-controls-foreground",
            "text": "条目控制项前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-background",
            "text": "条目编辑器背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border-image": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border-image",
            "text": "条目编辑器边框图片"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-border",
            "text": "条目编辑器边框"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-even": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-even",
            "text": "条目编辑器中偶数栏位背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd": {
            "title": "$:/language/Docs/PaletteColours/tiddler-editor-fields-odd",
            "text": "条目编辑器中奇数栏位背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-background",
            "text": "条目信息面板背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-border": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-border",
            "text": "条目信息面板边框"
        },
        "$:/language/Docs/PaletteColours/tiddler-info-tab-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-info-tab-background",
            "text": "条目信息面板页签背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-background": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-background",
            "text": "条目链结背景"
        },
        "$:/language/Docs/PaletteColours/tiddler-link-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-link-foreground",
            "text": "条目链结前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-subtitle-foreground",
            "text": "条目副标题前景"
        },
        "$:/language/Docs/PaletteColours/tiddler-title-foreground": {
            "title": "$:/language/Docs/PaletteColours/tiddler-title-foreground",
            "text": "条目标题前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-new-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-new-button",
            "text": "工具栏 '添加条目' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-options-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-options-button",
            "text": "工具栏 '选项' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-save-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-save-button",
            "text": "工具栏 '保存' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-info-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-info-button",
            "text": "工具栏 '资讯' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-edit-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-edit-button",
            "text": "工具栏 '编辑' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-close-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-close-button",
            "text": "工具栏 '关闭' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-delete-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-delete-button",
            "text": "工具栏 '删除' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-cancel-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-cancel-button",
            "text": "工具栏 '取消' 按钮前景"
        },
        "$:/language/Docs/PaletteColours/toolbar-done-button": {
            "title": "$:/language/Docs/PaletteColours/toolbar-done-button",
            "text": "工具栏 '完成  按钮前景"
        },
        "$:/language/Docs/PaletteColours/untagged-background": {
            "title": "$:/language/Docs/PaletteColours/untagged-background",
            "text": "未设标签的背景"
        },
        "$:/language/Docs/PaletteColours/very-muted-foreground": {
            "title": "$:/language/Docs/PaletteColours/very-muted-foreground",
            "text": "非常低调前景"
        },
        "$:/language/EditTemplate/Body/External/Hint": {
            "title": "$:/language/EditTemplate/Body/External/Hint",
            "text": "此条目显示保存于主要的 TiddlyWiki 文件之外的内容。你可以编辑其标签和字段,但不能直接编辑内容本身"
        },
        "$:/language/EditTemplate/Body/Placeholder": {
            "title": "$:/language/EditTemplate/Body/Placeholder",
            "text": "输入此条目的内容"
        },
        "$:/language/EditTemplate/Body/Preview/Type/Output": {
            "title": "$:/language/EditTemplate/Body/Preview/Type/Output",
            "text": "输出"
        },
        "$:/language/EditTemplate/Field/Remove/Caption": {
            "title": "$:/language/EditTemplate/Field/Remove/Caption",
            "text": "删除字段"
        },
        "$:/language/EditTemplate/Field/Remove/Hint": {
            "title": "$:/language/EditTemplate/Field/Remove/Hint",
            "text": "删除字段"
        },
        "$:/language/EditTemplate/Field/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Caption",
            "text": "字段列表"
        },
        "$:/language/EditTemplate/Field/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Field/Dropdown/Hint",
            "text": "显示字段列表"
        },
        "$:/language/EditTemplate/Fields/Add/Button": {
            "title": "$:/language/EditTemplate/Fields/Add/Button",
            "text": "添加"
        },
        "$:/language/EditTemplate/Fields/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Fields/Add/Button/Hint",
            "text": "添加字段至条目"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/System": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/System",
            "text": "系统字段"
        },
        "$:/language/EditTemplate/Fields/Add/Dropdown/User": {
            "title": "$:/language/EditTemplate/Fields/Add/Dropdown/User",
            "text": "使用者字段"
        },
        "$:/language/EditTemplate/Fields/Add/Name/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Name/Placeholder",
            "text": "字段名称"
        },
        "$:/language/EditTemplate/Fields/Add/Prompt": {
            "title": "$:/language/EditTemplate/Fields/Add/Prompt",
            "text": "添加字段:"
        },
        "$:/language/EditTemplate/Fields/Add/Value/Placeholder": {
            "title": "$:/language/EditTemplate/Fields/Add/Value/Placeholder",
            "text": "字段内容"
        },
        "$:/language/EditTemplate/Shadow/Warning": {
            "title": "$:/language/EditTemplate/Shadow/Warning",
            "text": "这是一个默认条目。您做的任何更改将会覆盖来自 <<pluginLink>> 插件的默认版本。"
        },
        "$:/language/EditTemplate/Shadow/OverriddenWarning": {
            "title": "$:/language/EditTemplate/Shadow/OverriddenWarning",
            "text": "这是一个修改过的默认条目。删除此条目可以还原为 <<pluginLink>> 插件中的默认版本。"
        },
        "$:/language/EditTemplate/Tags/Add/Button": {
            "title": "$:/language/EditTemplate/Tags/Add/Button",
            "text": "添加"
        },
        "$:/language/EditTemplate/Tags/Add/Button/Hint": {
            "title": "$:/language/EditTemplate/Tags/Add/Button/Hint",
            "text": "添加标签"
        },
        "$:/language/EditTemplate/Tags/Add/Placeholder": {
            "title": "$:/language/EditTemplate/Tags/Add/Placeholder",
            "text": "标签名称"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Caption": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Caption",
            "text": "清除输入"
        },
        "$:/language/EditTemplate/Tags/ClearInput/Hint": {
            "title": "$:/language/EditTemplate/Tags/ClearInput/Hint",
            "text": "清除标签输入"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Caption",
            "text": "标签清单"
        },
        "$:/language/EditTemplate/Tags/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Tags/Dropdown/Hint",
            "text": "显示标签清单"
        },
        "$:/language/EditTemplate/Title/BadCharacterWarning": {
            "title": "$:/language/EditTemplate/Title/BadCharacterWarning",
            "text": "请注意,避免在条目名称中使用这些字符:<<bad-chars>>"
        },
        "$:/language/EditTemplate/Title/Exists/Prompt": {
            "title": "$:/language/EditTemplate/Title/Exists/Prompt",
            "text": "目标条目已经存在"
        },
        "$:/language/EditTemplate/Title/Relink/Prompt": {
            "title": "$:/language/EditTemplate/Title/Relink/Prompt",
            "text": "将在其他条目的 //tags// 和 //list// 字段中的 ''<$text text=<<fromTitle>>/>'' 改为 ''<$text text=<<toTitle>>/>''"
        },
        "$:/language/EditTemplate/Title/References/Prompt": {
            "title": "$:/language/EditTemplate/Title/References/Prompt",
            "text": "下列对此条目的引用,不会自动更新:"
        },
        "$:/language/EditTemplate/Type/Dropdown/Caption": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Caption",
            "text": "内容类型清单"
        },
        "$:/language/EditTemplate/Type/Dropdown/Hint": {
            "title": "$:/language/EditTemplate/Type/Dropdown/Hint",
            "text": "显示内容类型清单"
        },
        "$:/language/EditTemplate/Type/Delete/Caption": {
            "title": "$:/language/EditTemplate/Type/Delete/Caption",
            "text": "删除内容类型"
        },
        "$:/language/EditTemplate/Type/Delete/Hint": {
            "title": "$:/language/EditTemplate/Type/Delete/Hint",
            "text": "删除内容类型"
        },
        "$:/language/EditTemplate/Type/Placeholder": {
            "title": "$:/language/EditTemplate/Type/Placeholder",
            "text": "内容类型"
        },
        "$:/language/EditTemplate/Type/Prompt": {
            "title": "$:/language/EditTemplate/Type/Prompt",
            "text": "类型:"
        },
        "$:/language/Exporters/StaticRiver": {
            "title": "$:/language/Exporters/StaticRiver",
            "text": "静态 HTML"
        },
        "$:/language/Exporters/JsonFile": {
            "title": "$:/language/Exporters/JsonFile",
            "text": "JSON 文件"
        },
        "$:/language/Exporters/CsvFile": {
            "title": "$:/language/Exporters/CsvFile",
            "text": "CSV 文件"
        },
        "$:/language/Exporters/TidFile": {
            "title": "$:/language/Exporters/TidFile",
            "text": "\".tid\" 文件"
        },
        "$:/language/Docs/Fields/_canonical_uri": {
            "title": "$:/language/Docs/Fields/_canonical_uri",
            "text": "外部图像条目的完整的 URI"
        },
        "$:/language/Docs/Fields/bag": {
            "title": "$:/language/Docs/Fields/bag",
            "text": "条目的来源集的名称"
        },
        "$:/language/Docs/Fields/caption": {
            "title": "$:/language/Docs/Fields/caption",
            "text": "显示于页签或按钮上的标题文字"
        },
        "$:/language/Docs/Fields/color": {
            "title": "$:/language/Docs/Fields/color",
            "text": "条目的 CSS 颜色值"
        },
        "$:/language/Docs/Fields/component": {
            "title": "$:/language/Docs/Fields/component",
            "text": "负责[[警示条目|AlertMechanism]]的组件名称"
        },
        "$:/language/Docs/Fields/created": {
            "title": "$:/language/Docs/Fields/created",
            "text": "条目的创建日期"
        },
        "$:/language/Docs/Fields/creator": {
            "title": "$:/language/Docs/Fields/creator",
            "text": "条目的创建者"
        },
        "$:/language/Docs/Fields/current-tiddler": {
            "title": "$:/language/Docs/Fields/current-tiddler",
            "text": "用于缓存[[浏览历史列表|HistoryMechanism]]的最上层条目"
        },
        "$:/language/Docs/Fields/dependents": {
            "title": "$:/language/Docs/Fields/dependents",
            "text": "插件的相依插件列表"
        },
        "$:/language/Docs/Fields/description": {
            "title": "$:/language/Docs/Fields/description",
            "text": "插件的说明、描述"
        },
        "$:/language/Docs/Fields/draft.of": {
            "title": "$:/language/Docs/Fields/draft.of",
            "text": "草稿条目,包含条目的标题、标签、栏位 ..."
        },
        "$:/language/Docs/Fields/draft.title": {
            "title": "$:/language/Docs/Fields/draft.title",
            "text": "草稿条目的标题"
        },
        "$:/language/Docs/Fields/footer": {
            "title": "$:/language/Docs/Fields/footer",
            "text": "wizard 的注脚"
        },
        "$:/language/Docs/Fields/icon": {
            "title": "$:/language/Docs/Fields/icon",
            "text": "条目的标题含有与条目关联的图标"
        },
        "$:/language/Docs/Fields/library": {
            "title": "$:/language/Docs/Fields/library",
            "text": "若设为 \"yes\",表示条目应该被保存为一个 JavaScript 程序库"
        },
        "$:/language/Docs/Fields/list": {
            "title": "$:/language/Docs/Fields/list",
            "text": "条目的列表,指定一些条目的标题清单"
        },
        "$:/language/Docs/Fields/list-before": {
            "title": "$:/language/Docs/Fields/list-before",
            "text": "前条目名称将被添加到条目排序清单中的设置条目名称之前,或若此栏位存在但是空的,则被添加于清单的前端"
        },
        "$:/language/Docs/Fields/list-after": {
            "title": "$:/language/Docs/Fields/list-after",
            "text": "当前条目名称将被添加到条目排序清单的设置条目名称之后,或若此栏位存在但是空的,则被添加于清单的尾端"
        },
        "$:/language/Docs/Fields/modified": {
            "title": "$:/language/Docs/Fields/modified",
            "text": "条目的最近修改日期与时间"
        },
        "$:/language/Docs/Fields/modifier": {
            "title": "$:/language/Docs/Fields/modifier",
            "text": "条目的最近修改者"
        },
        "$:/language/Docs/Fields/name": {
            "title": "$:/language/Docs/Fields/name",
            "text": "具可读性的插件条目的名称"
        },
        "$:/language/Docs/Fields/plugin-priority": {
            "title": "$:/language/Docs/Fields/plugin-priority",
            "text": "插件条目的优先级数值"
        },
        "$:/language/Docs/Fields/plugin-type": {
            "title": "$:/language/Docs/Fields/plugin-type",
            "text": "插件条目的类型"
        },
        "$:/language/Docs/Fields/released": {
            "title": "$:/language/Docs/Fields/released",
            "text": "TiddlyWiki 的发布日期"
        },
        "$:/language/Docs/Fields/revision": {
            "title": "$:/language/Docs/Fields/revision",
            "text": "条目存放于服务器中的修订版本"
        },
        "$:/language/Docs/Fields/source": {
            "title": "$:/language/Docs/Fields/source",
            "text": "条目的网址"
        },
        "$:/language/Docs/Fields/subtitle": {
            "title": "$:/language/Docs/Fields/subtitle",
            "text": "一个 wizard 的副标题"
        },
        "$:/language/Docs/Fields/tags": {
            "title": "$:/language/Docs/Fields/tags",
            "text": "条目的标签清单"
        },
        "$:/language/Docs/Fields/text": {
            "title": "$:/language/Docs/Fields/text",
            "text": "条目的内文"
        },
        "$:/language/Docs/Fields/throttle.refresh": {
            "title": "$:/language/Docs/Fields/throttle.refresh",
            "text": "如果存在,则限制此条目的刷新"
        },
        "$:/language/Docs/Fields/title": {
            "title": "$:/language/Docs/Fields/title",
            "text": "条目的唯一名称"
        },
        "$:/language/Docs/Fields/toc-link": {
            "title": "$:/language/Docs/Fields/toc-link",
            "text": "若设为: \"no\",则抑制目录树中的条目链接。"
        },
        "$:/language/Docs/Fields/type": {
            "title": "$:/language/Docs/Fields/type",
            "text": "条目的内容类型"
        },
        "$:/language/Docs/Fields/version": {
            "title": "$:/language/Docs/Fields/version",
            "text": "插件的版本信息"
        },
        "$:/language/Docs/Fields/_is_skinny": {
            "title": "$:/language/Docs/Fields/_is_skinny",
            "text": "如果存在,则表示必须从服务器加载条目的文本字段"
        },
        "$:/language/Filters/AllTiddlers": {
            "title": "$:/language/Filters/AllTiddlers",
            "text": "所有条目,不含系统条目"
        },
        "$:/language/Filters/RecentSystemTiddlers": {
            "title": "$:/language/Filters/RecentSystemTiddlers",
            "text": "最近修改的条目,包含系统条目"
        },
        "$:/language/Filters/RecentTiddlers": {
            "title": "$:/language/Filters/RecentTiddlers",
            "text": "最近修改的条目"
        },
        "$:/language/Filters/AllTags": {
            "title": "$:/language/Filters/AllTags",
            "text": "所有标签,不含系统标签"
        },
        "$:/language/Filters/Missing": {
            "title": "$:/language/Filters/Missing",
            "text": "缺失条目"
        },
        "$:/language/Filters/Drafts": {
            "title": "$:/language/Filters/Drafts",
            "text": "草稿条目"
        },
        "$:/language/Filters/Orphans": {
            "title": "$:/language/Filters/Orphans",
            "text": "孤立条目"
        },
        "$:/language/Filters/SystemTiddlers": {
            "title": "$:/language/Filters/SystemTiddlers",
            "text": "系统条目"
        },
        "$:/language/Filters/ShadowTiddlers": {
            "title": "$:/language/Filters/ShadowTiddlers",
            "text": "默认条目"
        },
        "$:/language/Filters/OverriddenShadowTiddlers": {
            "title": "$:/language/Filters/OverriddenShadowTiddlers",
            "text": "被覆写的默认条目"
        },
        "$:/language/Filters/SessionTiddlers": {
            "title": "$:/language/Filters/SessionTiddlers",
            "text": "自维基加载后修改的条目"
        },
        "$:/language/Filters/SystemTags": {
            "title": "$:/language/Filters/SystemTags",
            "text": "系统标签"
        },
        "$:/language/Filters/StoryList": {
            "title": "$:/language/Filters/StoryList",
            "text": "故事河中的条目,不含 ~$:/AdvancedSearch"
        },
        "$:/language/Filters/TypedTiddlers": {
            "title": "$:/language/Filters/TypedTiddlers",
            "text": "非维基文字条目"
        },
        "GettingStarted": {
            "title": "GettingStarted",
            "text": "\\define lingo-base() $:/language/ControlPanel/Basics/\n欢迎使用 ~TiddlyWiki 及参与 ~TiddlyWiki 社群\n\n开始将重要资讯存放于 ~TiddlyWiki 之前,确认您可以可靠地保存变更是很重要的。详细资讯请参阅 https://tiddlywiki.com/#GettingStarted\n\n!! 设置此 ~TiddlyWiki\n\n<div class=\"tc-control-panel\">\n\n|<$link to=\"$:/SiteTitle\"><<lingo Title/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteTitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/SiteSubtitle\"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler=\"$:/SiteSubtitle\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/DefaultTiddlers\"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag=\"textarea\" tiddler=\"$:/DefaultTiddlers\"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |\n</div>\n\n请参阅[[控制台|$:/ControlPanel]]查看更多选项。"
        },
        "$:/language/Help/build": {
            "title": "$:/language/Help/build",
            "description": "自动执行已配置的命令",
            "text": "生成指定的生成目标为当前 wiki。若未指定任何生成目标,则生成所有可用的目标。\n\n```\n--build <target> [<target> ...]\n```\n\n生成目标在 wiki 文件夹的 `tiddlywiki.info` 文件中定义。\n"
        },
        "$:/language/Help/clearpassword": {
            "title": "$:/language/Help/clearpassword",
            "description": "清除用于后续加密的密码",
            "text": "清除用于后续加密的密码\n\n```\n--clearpassword\n```\n"
        },
        "$:/language/Help/default": {
            "title": "$:/language/Help/default",
            "text": "\\define commandTitle()\n$:/language/Help/$(command)$\n\\end\n```\n用法: tiddlywiki [<wikifolder>] [--<command> [<args>...]...]\n```\n\n可用的命令:\n\n<ul>\n<$list filter=\"[commands[]sort[title]]\" variable=\"command\">\n<li><$link to=<<commandTitle>>><$macrocall $name=\"command\" $type=\"text/plain\" $output=\"text/plain\"/></$link>: <$transclude tiddler=<<commandTitle>> field=\"description\"/></li>\n</$list>\n</ul>\n\n取得关于某个命令的详细帮助:\n\n```\ntiddlywiki --help <command>\n```\n"
        },
        "$:/language/Help/deletetiddlers": {
            "title": "$:/language/Help/deletetiddlers",
            "description": "删除一组条目",
            "text": "<<.from-version \"5.1.20\">> 删除由筛选器标识的一组条目。\n\n```\n--deletetiddlers <filter>\n```\n"
        },
        "$:/language/Help/editions": {
            "title": "$:/language/Help/editions",
            "description": "列出可用的 TiddlyWiki 版本",
            "text": "列出可用版本的名称和描述。您可以用 `--init` 命令创建一个指定版本的新维基。\n\n```\n--editions\n```\n"
        },
        "$:/language/Help/fetch": {
            "title": "$:/language/Help/fetch",
            "description": "通过网址从维基撷取条目",
            "text": "通过 HTTP/HTTPS 撷取一个或多个文件,并导入匹配筛选器的条目,可选的转换传入的名称。\n\n```\n--fetch file <url> <import-filter> <transform-filter>\n--fetch files <url-filter> <import-filter> <transform-filter>\n--fetch raw-file <url> <transform-filter>\n--fetch raw-files <url-filter> <transform-filter>\n```\n\n \"file\" 和 \"files\" 选项撷取指定的文件,并尝试导入其中的条目(与将文件拖动到浏览器视窗中的处理相同)。 \"raw-file\" 和 \"raw-files\" 变选项撷取指定的文件,并将原始文件资料存储于条目,而不套用导入逻辑。\n\n使用 \"file\" and \"raw-file\" 选项为仅撷取单个文件,且第一个参数为要读取文件的网址。\n\n使用 \"files\" 和 \"raw-files\" 选项为撷取多个文件,且第一个参数是一个产生要读取文件的网址清单的筛选器。例如,给定标签为 \"remote-server\" 的一组具有字段 \"url\" 的条目,筛选器 `[tag[remote-server]get[url]]` 将取回所有可用的网址。\n\n对于 \"file\" 和 \"files\" 选项,the `<import-filter>` 参数指定一个筛选器,用于确定要导入哪些条目。如果未提供,则默认为 `[all[tiddlers]]`。\n\n对于所有选项,`<transform-filter>` 参数指定一个可选的筛选器,用于转换导入条目的名称。例如,`[addprefix[$:/myimports/]]` 会将前缀  `$:/myimports/` 加至每个名称。\n\n于 `--fetch` 之前使用 `--verbose` 命令,将在导入期间输出进度信息。\n\n请注意,TiddlyWiki 不会撷取一个已经加载插件的旧版本。\n\n以下示例从 https://tiddlywiki.com 取回所有非系统条目,并将其保存到一个 JSON 文件:\n\n```\ntiddlywiki --verbose --fetch file \"https://tiddlywiki.com/\" \"[!is[system]]\" \"\" --rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[!is[system]]\"\n```\n\n以下范例从 https://tiddlywiki.com 取回 \"favicon\" 文件,并将其保存在名为 \"output.ico\" 的文件中。请注意,在 \"--fetch\" 命令中引用的中间条目 \"Icon Tiddler\",因为它被用作转换筛选器来替换预设的名称,而 \"--savetiddler\" 命令没有引号,因为它是直接用作标题。\n\n```\ntiddlywiki --verbose --fetch raw-file \"https://tiddlywiki.com/favicon.ico\" \"[[Icon Tiddler]]\" --savetiddler \"Icon Tiddler\" output.ico\n```\n"
        },
        "$:/language/Help/help": {
            "title": "$:/language/Help/help",
            "description": "显示 TiddlyWiki 命令的说明",
            "text": "显示命令的帮助文本:\n\n```\n--help [<command>]\n```\n\n若省略命令名称,则显示可用命令的清单。\n"
        },
        "$:/language/Help/import": {
            "title": "$:/language/Help/import",
            "description": "从文件导入条目",
            "text": "从 TiddlyWiki 文件 (`.html`)、`.tiddler`、`.tid`、`.json` 或其他本机文件导入条目。必须明确指定解串器,而不像 load 命令,从文件扩展名推断解串器。\n\n```\n--import <filepath> <deserializer> [<title>] [<encoding>]\n```\n\n核心的解串器包括:\n\n* application/javascript\n* application/json\n* application/x-tiddler\n* application/x-tiddler-html-div\n* application/x-tiddlers\n* text/html\n* text/plain\n\n导入的条目名称,默认为文件名。\n\n编码默认为 \"utf8\",但用于导入二进制文件可以是 \"base64\"。\n\n请注意,TiddlyWiki 不会导入旧版本的已加载插件。\n"
        },
        "$:/language/Help/init": {
            "title": "$:/language/Help/init",
            "description": "初始化一个新的 wiki 文件夹",
            "text": "初始化一个空的 [[WikiFolder|WikiFolders]] 的指定版本的副本。\n\n```\n--init <edition> [<edition> ...]\n```\n\n例如:\n\n```\ntiddlywiki ./MyWikiFolder --init empty\n```\n\n注意:\n\n* 若有需要,将创建 wiki 文件夹目录\n* 其中 \"edition\" 默认为 ''empty''\n* 若 wiki 文件夹不是空的,则初始化命令将失败\n* 初始化命令会删除 'tiddlywiki.info' 文件内所有 'includeWikis' 的定义。\n* 当指定多个版本时,这些版本于初始化后,将覆写早期版本共用的所有文件 (故此最终的 `tiddlywiki.info` 文件将是从最近的版本复制而得)\n* `--editions` 传回所有可用版本的清单。\n"
        },
        "$:/language/Help/listen": {
            "title": "$:/language/Help/listen",
            "description": "为 TiddlyWiki 提供一个 HTTP 服务器接口",
            "text": "通过 HTTP 提供一个维基服务。\n\nlisten 命令使用[[命名的命令参数|NamedCommandParameters]]:\n\n```\n--listen [<name>=<value>]...\n```\n\n所有参数都是可选的, 具有安全的默认值, 可以按任意顺序指定。认可的参数有:\n\n* ''host'' - 可选的主机名称, (默认为 \"127.0.0.1\" 或名为 \"localhost\")\n* ''path-prefix'' - 可选的路径前缀\n* ''port'' - 侦听的埠号;非数值会被解译为一个系统环境变数,从其中提取埠号 (默认为 \"8080\")\n* ''credentials'' - 凭证 CSV 文件的路径名(相对于维基文件夹)\n* ''anon-username'' - 匿名用户的编辑署名\n* ''username'' - 可选的基本验证用户名称\n* ''password'' - 可选的基本验证密码\n* ''authenticated-user-header'' - 可选的标头名称,用于受信任身份验证\n* ''readers'' - 允许读取此维基的主体,以逗号分隔的清单\n* ''writers'' - 允许写入此维基的主体,以逗号分隔的清单\n* ''csrf-disable'' - 设置为 \"yes\" 以禁用 CSRF 检查 (默认为 \"no\")\n* ''root-tiddler'' - 服务的基本条目 (默认为 \"$:/core/save/all\")\n* ''root-render-type'' - 呈现的基本条目的内容类型 (默认为 \"text/plain\")\n* ''root-serve-type'' - 服务的基本条目的内容类型 (默认为 \"text/html\")\n* ''tls-cert'' - TLS 证书文件的路径名(相对于维基文件夹)\n* ''tls-key'' - TLS 密钥文件的路径名(相对于维基文件夹)\n* ''debug-level'' - 可选的调试级别;设置为 \"debug\" 来查看请求的详细信息;(默认为 \"none\")\n* ''gzip'' - 设为 \"yes\" 以启用某些 http 端点的 gzip 压缩 (默认为 \"no\")\n\n有关向整个本地网络开启实例的信息,以及可能的安全问题,请参阅 TiddlyWiki.com 的 WebServer 条目。\n"
        },
        "$:/language/Help/load": {
            "title": "$:/language/Help/load",
            "description": "从文件中加载条目",
            "text": "从 TiddlyWiki (`.html`), `.tiddler`, `.tid`, `.json` 或其他本机文件加载条目。应用的处理程序取决于导入文件的扩展名。如果您需要明确指定解串器和编码,请改用 `import` 命令。\n\n```\n--load <filepath> [noerror]\n--load <dirpath> [noerror]\n```\n\n默认情况下, 如果未找到条目,load 命令会引发错误。通过提供可选的 \"noerror\" 参数可以抑制该错误。\n\n从已加密的 TiddlyWiki 文件中加载条目,须使用 PasswordCommand 指定密码,例如:\n\n```\ntiddlywiki ./MyWiki --password pa55w0rd --load my_encrypted_wiki.html\n```\n\n请注意 TiddlyWiki 将不加载旧版本的已挂载的插件。\n"
        },
        "$:/language/Help/makelibrary": {
            "title": "$:/language/Help/makelibrary",
            "description": "构建升级处理所需的程式库插件",
            "text": "为升级处理构建 `$:/UpgradeLibrary` 条目。\n\n升级程式库被格式化为一个插件类型为 `library` 的一般插件条目。它包含 TiddlyWiki5 存储库中所有可用的插件、布景主题和语言包的副本。\n\n此命令仅供内部使用;它只是与使用者构建一个自订的升级程序相关。\n\n```\n--makelibrary <title>\n```\n\n标题参数默认为 `$:/UpgradeLibrary`。\n"
        },
        "$:/language/Help/notfound": {
            "title": "$:/language/Help/notfound",
            "text": "无此帮助项目"
        },
        "$:/language/Help/output": {
            "title": "$:/language/Help/output",
            "description": "设置后续命令的基准输出文件夹",
            "text": "设置后续命令的基准输出文件夹,默认为该版本文件夹的 `output` 子文件夹。\n\n```\n--output <pathname>\n```\n\n若指定的路径是相对路径,则它是被解析相对于当前的工作文件夹。例如:`--output .` 將輸出文件夹設置為當前工作文件夹。"
        },
        "$:/language/Help/password": {
            "title": "$:/language/Help/password",
            "description": "设置用以加密的密码",
            "text": "设置用以加密的密码\n\n```\n--password <password>\n```\n\n''请注意'':这不是用于提供 TiddlyWiki 具有密码保护功能。相反地,请看 [[ServerCommand]] 的密码选项说明。\n"
        },
        "$:/language/Help/render": {
            "title": "$:/language/Help/render",
            "description": "呈现个别条目到文件",
            "text": "呈现由筛选器标识的个别条目,并将结果保存到指定的文件。\n\n可选择性地指定范本条目名称。在此情况下,不是直接呈现每个条目,而是使用设为正在呈现的条目名称的 \"currentTiddler\" 变量,来呈现范本条目。\n\n也可以选择性地指定附加变量的名称和值。\n\n```\n--render <tiddler-filter> [<filename-filter>] [<render-type>] [<template>] [<name>] [<value>]\n```\n\n* ''tiddler-filter'': 标识要呈现的条目的筛选器\n* ''filename-filter'': 可选的筛选器,转换条目名称至路径名。如果省略,默认为 `[is[tiddler]addsuffix[.html]]`,其使用未改变的条目名称为文件名\n* ''template'': 可选的范本,用于呈现每个条目\n* ''render-type'': 可选的呈现类型:`text/html` (默认值) 会传回完整的 HTML 文本,而 `text/plain` 只会传回文本内容 (即其忽略 HTML 标记与其他不可印出的数据)\n* ''name'': 可选的变量名称\n* ''value'': 可选的变量值\n\n默认情况下,文件名被解析为相对于发行版文件夹的 `output` 子文件夹。`--output` 命令可用于将输出指到一个不同的文件夹。\n\n附注:\n\n* 输出目录不清除任何现有的文件\n* 文件名的路径中,任何不存在的文件夹,将自动创建。\n* 当正呈现的条目名称中带有空格,请注意同时使用命令行接口所要求的引号,与 TiddlyWiki 的双重方括号;`--render \"[[Motovun Jack.jpg]]\"`\n* 所选的项目被设置为当前正在呈现的条目名称,以此评估文件名筛选器,允条目名称用作基础计算的文件名。例如,`[encodeuricomponent[]addprefix[static/]]` 为每个条目名称套用 URI 编码,然后增加首码 `static/`\n* `--render` 命令是已弃用的 `--rendertiddler` 和 `--rendertiddlers` 的一个更灵活的替代命令。\n\n例子:\n\n* `--render \"[!is[system]]\" \"[encodeuricomponent[]addprefix[tiddlers/]addsuffix[.html]]\"` -- 呈现所有非系统条目为 \"tiddlers\" 子文件夹中的文件,文件名为 URL 编码的条目名称和扩展名 HTML\n"
        },
        "$:/language/Help/rendertiddler": {
            "title": "$:/language/Help/rendertiddler",
            "description": "呈现个别条目为指定的内容类型",
            "text": "(请注意:`--rendertiddler` 命令已被弃用,而支持新的、更灵活的 `--render` 命令)\n\n呈现个别条目为指定的[[内容类型|ContentType]],默认为 `text/html` 且保存为指定的文件名。\n\n还可以指定一个模板,在这种情况下,\"currentTiddler\" 变量设为正在呈现的条目 (第一个参数值) 与模板条目合并呈现。\n\n也能可选地指定附加变量的名称与其值。\n\n```\n--rendertiddler <title> <filename> [<type>] [<template>]\n```\n\n默认情况下,文件名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件夹。\n\n自动创建在文件名称的路径中任何缺少的文件夹。\n\n例如,以下命令通过使用核心模板 `$:/core/templates/exporters/JsonFile`,将所有匹配筛选器 `[tag[done]]` 的条目保存到名为 `output.json` 的 JSON 文件。\n\n```\n--rendertiddler \"$:/core/templates/exporters/JsonFile\" output.json text/plain \"\" exportFilter \"[tag[done]]\"\n```"
        },
        "$:/language/Help/rendertiddlers": {
            "title": "$:/language/Help/rendertiddlers",
            "description": "呈现符合筛选条件的条目为指定的内容类型",
            "text": "(请注意:`--rendertiddlers` 命令已被弃用,而支持新的、更灵活的 `--render` 命令)\n\n呈现符合筛选条的条目为指定的[[内容类型|ContentType]] (默认为 `text/html`) 与扩展名 (默认为 `.html`).\n\n```\n--rendertiddlers '<filter>' <template> <pathname> [<type>] [<extension>] [\"noclean\"]\n```\n\n例如:\n\n```\n--rendertiddlers '[!is[system]]' $:/core/templates/static.tiddler.html ./static text/plain\n```\n\n默认情况下,路径名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件。\n\n在目标文件夹中的任何文件都会被删除,除非指定 ''noclean'' 旗标。若缺少目标文件夹,则以递归方式创建。"
        },
        "$:/language/Help/save": {
            "title": "$:/language/Help/save",
            "description": "将个别原始条目保存到文件",
            "text": "将筛选器标识的个别条目,以原始文本或二进位格式,保存到指定的文件。\n\n```\n--save <tiddler-filter> <filename-filter>\n```\n\n* ''tiddler-filter'': 标识要保存的条目的筛选器\n* ''filename-filter'': 可选的筛选器,转换条目名称至路径名。如果省略,默认为 `[is[tiddler]]`,其使用未改变的条目名称为文件名\n\n附注:\n\n* 输出文件夹不清除任何现有的文件\n* 文件名的路径中,任何不存在的文件夹,将自动创建。\n* 当正保存的条目的名称中带有空格,请注意同时使用命令行接口所要求的引号,与 TiddlyWiki 的双重方括号;`--save  \"[[Motovun Jack.jpg]]\"`\n* 所选的项目被设置为当前正在保存的条目名称,以此评估文件名筛选器,允条目名称用作基础计算的文件名。例如,`[encodeuricomponent[]addprefix[static/]]` 为每个条目名称套用 URI 编码,然后增加首码 `static/`\n* `--save` 命令是已被弃用的 `--savetiddler` 和 `--savetiddlers` 的一个更灵活的替代命令。\n\n例子:\n\n* `--save \"[!is[system]is[image]]\" \"[encodeuricomponent[]addprefix[tiddlers/]]\"` -- 保存所有非系统的图像条目为 \"tiddlers\" 子文件夹中的文件,文件名为 URL 编码的条目名称"
        },
        "$:/language/Help/savetiddler": {
            "title": "$:/language/Help/savetiddler",
            "description": "将条目的原始内容保存到一个文件",
            "text": "(请注意:`--savetiddler` 命令已被弃用,而支持新的、更灵活的 `--save` 命令)\n\n保存个别条目的原始文本或二进制格式到指定的文件名。\n\n```\n--savetiddler <title> <filename>\n```\n\n默认情况下,文件名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件。\n\n自动创建在文件名称的路径中任何缺少的文件夹。\n"
        },
        "$:/language/Help/savetiddlers": {
            "title": "$:/language/Help/savetiddlers",
            "description": "将一群条目的原始内容保存到一个文件夹",
            "text": "(请注意:`--savetiddlers` 命令已被弃用,而支持新的、更灵活的 `--save` 命令)\n\n保存一群条目的原始文字或二进制格式到指定的文件夹。\n\n```\n--savetiddlers <filter> <pathname> [noclean]\n```\n\n默认情况下,路径名被解析为相对于版本文件夹的 `output` 子文件夹。 `--output` 命令可以用于将输出指定到一个不同的文件夹。\n\n保存指定的文件之前,会先清除输出目录的现有文件。可藉由指定 ''noclean'' 旗标,禁用该删除动作。\n\n自动创建在路径中任何缺少的文件夹。\n"
        },
        "$:/language/Help/savewikifolder": {
            "title": "$:/language/Help/savewikifolder",
            "description": "将维基保存到一个新的维基文件夹",
            "text": "<<.from-version \"5.1.20\">> 将当前维基保存为一个维基文件夹,包含条目、插件和配置:\n\n```\n--savewikifolder <wikifolderpath> [<filter>]\n```\n\n* 目标维基文件夹必须为空或不存在\n* 筛选器指定应包括哪些条目。其为可选,默认为 `[all[tiddlers]]`\n* 官方插件库中的插件,将替换为 `tiddlywiki.info` 文件中引用到的插件\n* 自订插件将解压缩到自己的文件夹中\n\n常见的用法是将一个 TiddlyWiki HTML 文件转换成维基文件夹:\n\n```\ntiddlywiki --load ./mywiki.html --savewikifolder ./mywikifolder\n```\n"
        },
        "$:/language/Help/server": {
            "title": "$:/language/Help/server",
            "description": "提供一个 HTTP 服务器介面到 TiddlyWiki (已弃用,支持新的 listen 命令)",
            "text": "在服务器中内置 TiddlyWiki5 是非常简单。虽与 TiddlyWeb 兼容,但不支持许多健全互联网面向的使用方式所需的功能。\n\n提供呈现一个指定条目,也可将个别条目编码成 JSON,且支持基本的 HTTP 操作 `GET`、`PUT` 及 `DELETE`.\n\n```\n--server <port> <root-tiddler> <root-render-type> <root-serve-type> <username> <password> <host> <path-prefix> <debug-level>\n```\n\n参数说明:\n\n* ''port'' - 要侦听的埠号;非数值会被解译为一个系统环境变数,从其中提取埠号 (默认为 \"8080\")\n* ''root-tiddler'' - 服务的基本条目 (默认为 \"$:/core/save/all\")\n* ''root-render-type'' - 呈现的基本条目的内容类型 (默认为 \"text/plain\")\n* ''root-serve-type'' - 服务的基本条目的内容类型 (默认为 \"text/html\")\n* ''username'' - 默认的编辑者署名\n* ''password'' - 可选的基本验证密码\n* ''host'' - 可选的主机名称, (默认为 \"127.0.0.1\" 或名为 \"localhost\")\n* ''path-prefix'' - 可选的路径前缀\n* ''debug-level'' - 可选的调试级别;设置为 \"debug\" 来查看请求的详细信息;(默认为 \"none\")\n\n若指定密码参数,浏览器将提示使用者输入用户名与密码。注意,密码系以明码方式传递,应只在受信任的网络或 HTTPS 上使用。\n\n例如:\n\n```\n--server 8080 $:/core/save/all text/plain text/html MyUserName passw0rd\n```\n\n若您需要设置主机名称或路径前缀,而不要求输入密码,则可以指定空字符串的使用者名和密码。\n\n```\n--server 8080 $:/core/save/all text/plain text/html \"\" \"\" 192.168.0.245\n```\n\n使用这样的位址,会将您的系统暴露给本地网络。有关向整个本地网络开启实例的信息,以及可能的安全问题,请参阅 TiddlyWiki.com 的 WebServer 条目。\n\n同时执行多个 TiddlyWiki 服务,须分别指定不同的埠号。使用环境变数,有助于将埠号传递给 Node.js 进程。本示例引用一个名为 \"MY_PORT_NUMBER\" 的环境变数:\n\n```\n--server MY_PORT_NUMBER $:/core/save/all text/plain text/html MyUserName passw0rd\n```"
        },
        "$:/language/Help/setfield": {
            "title": "$:/language/Help/setfield",
            "description": "准备用于外部条目",
            "text": "//请注意此命令是试验性的,且可能会更改或在最终定稿前被替换//\n\n设置一群条目的指定栏位到 wikifying 范本条目的结果,其中的  `currentTiddler` 变数设置为各该条目。\n\n```\n--setfield <filter> <fieldname> <templatetitle> <rendertype>\n```\n\n参数说明:\n\n* ''filter'' - 受影响的辨识条目的筛选条件\n* ''fieldname'' - 要修改的栏位(默认为 \"text\")\n* ''templatetitle'' - 该条目 wikify 到指定栏位。若为空白或丢失,则删除指定的栏位\n* ''rendertype'' - 要呈现的文本类型(默认为 \"text/plain\"; \"text/html\" 可以用于包含 HTML 标记))\n"
        },
        "$:/language/Help/unpackplugin": {
            "title": "$:/language/Help/unpackplugin",
            "description": "从插件解开附属的条目",
            "text": "提取插件的附属条目,将其建立为一般条目:\n\n```\n--unpackplugin <title>\n```\n"
        },
        "$:/language/Help/verbose": {
            "title": "$:/language/Help/verbose",
            "description": "触发详细的输出模式",
            "text": "触发显示详细的命令执行过程,可用于调试\n\n```\n--verbose\n```\n"
        },
        "$:/language/Help/version": {
            "title": "$:/language/Help/version",
            "description": "显示 TiddlyWiki 的版本编号",
            "text": "显示 TiddlyWiki 的版本编号。\n\n```\n--version\n```\n"
        },
        "$:/language/Import/Imported/Hint": {
            "title": "$:/language/Import/Imported/Hint",
            "text": "下列条目已被导入:"
        },
        "$:/language/Import/Listing/Cancel/Caption": {
            "title": "$:/language/Import/Listing/Cancel/Caption",
            "text": "取消"
        },
        "$:/language/Import/Listing/Hint": {
            "title": "$:/language/Import/Listing/Hint",
            "text": "这些条目已备妥导入:"
        },
        "$:/language/Import/Listing/Import/Caption": {
            "title": "$:/language/Import/Listing/Import/Caption",
            "text": "导入"
        },
        "$:/language/Import/Listing/Select/Caption": {
            "title": "$:/language/Import/Listing/Select/Caption",
            "text": "选择"
        },
        "$:/language/Import/Listing/Status/Caption": {
            "title": "$:/language/Import/Listing/Status/Caption",
            "text": "状态"
        },
        "$:/language/Import/Listing/Title/Caption": {
            "title": "$:/language/Import/Listing/Title/Caption",
            "text": "条目"
        },
        "$:/language/Import/Listing/Preview": {
            "title": "$:/language/Import/Listing/Preview",
            "text": "预览:"
        },
        "$:/language/Import/Listing/Preview/Text": {
            "title": "$:/language/Import/Listing/Preview/Text",
            "text": "文本"
        },
        "$:/language/Import/Listing/Preview/TextRaw": {
            "title": "$:/language/Import/Listing/Preview/TextRaw",
            "text": "文本 (原始)"
        },
        "$:/language/Import/Listing/Preview/Fields": {
            "title": "$:/language/Import/Listing/Preview/Fields",
            "text": "字段"
        },
        "$:/language/Import/Listing/Preview/Diff": {
            "title": "$:/language/Import/Listing/Preview/Diff",
            "text": "差异"
        },
        "$:/language/Import/Listing/Preview/DiffFields": {
            "title": "$:/language/Import/Listing/Preview/DiffFields",
            "text": "差异 (字段)"
        },
        "$:/language/Import/Listing/Rename/Prompt": {
            "title": "$:/language/Import/Listing/Rename/Prompt",
            "text": "重新命名为:"
        },
        "$:/language/Import/Listing/Rename/Tooltip": {
            "title": "$:/language/Import/Listing/Rename/Tooltip",
            "text": "导入前重新命名条目"
        },
        "$:/language/Import/Listing/Rename/ConfirmRename": {
            "title": "$:/language/Import/Listing/Rename/ConfirmRename",
            "text": "重新命名条目"
        },
        "$:/language/Import/Listing/Rename/CancelRename": {
            "title": "$:/language/Import/Listing/Rename/CancelRename",
            "text": "取消"
        },
        "$:/language/Import/Listing/Rename/OverwriteWarning": {
            "title": "$:/language/Import/Listing/Rename/OverwriteWarning",
            "text": "具有此标题的条目已存在。"
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Incompatible",
            "text": "封锁的不兼容或过时插件。"
        },
        "$:/language/Import/Upgrader/Plugins/Suppressed/Version": {
            "title": "$:/language/Import/Upgrader/Plugins/Suppressed/Version",
            "text": "封锁的插件 (由于传入的 <<incoming>> 不比现有版本 <<existing>> 新)。"
        },
        "$:/language/Import/Upgrader/Plugins/Upgraded": {
            "title": "$:/language/Import/Upgrader/Plugins/Upgraded",
            "text": "升级插件,从 <<incoming>> 到 <<upgraded>>。"
        },
        "$:/language/Import/Upgrader/State/Suppressed": {
            "title": "$:/language/Import/Upgrader/State/Suppressed",
            "text": "封锁的暂存状态条目。"
        },
        "$:/language/Import/Upgrader/System/Suppressed": {
            "title": "$:/language/Import/Upgrader/System/Suppressed",
            "text": "封锁的系统条目。"
        },
        "$:/language/Import/Upgrader/System/Warning": {
            "title": "$:/language/Import/Upgrader/System/Warning",
            "text": "核心模块条目。"
        },
        "$:/language/Import/Upgrader/System/Alert": {
            "title": "$:/language/Import/Upgrader/System/Alert",
            "text": "您即将导入一个条目会覆盖一个核心模块条目。不建议这样做,因为可能会使系统不稳定。"
        },
        "$:/language/Import/Upgrader/ThemeTweaks/Created": {
            "title": "$:/language/Import/Upgrader/ThemeTweaks/Created",
            "text": "从 <$text text=<<from>>/> 迁移布景主题。"
        },
        "$:/language/AboveStory/ClassicPlugin/Warning": {
            "title": "$:/language/AboveStory/ClassicPlugin/Warning",
            "text": "您貌似要加载为 ~TiddlyWiki 经典版设计的插件。请注意,[[这些插件无法运行于 TiddlyWiki 5.x.x 版|https://tiddlywiki.com/#TiddlyWikiClassic]]。检测到 ~TiddlyWiki 经典版插件:"
        },
        "$:/language/BinaryWarning/Prompt": {
            "title": "$:/language/BinaryWarning/Prompt",
            "text": "此条目包含二进制数据"
        },
        "$:/language/ClassicWarning/Hint": {
            "title": "$:/language/ClassicWarning/Hint",
            "text": "此条目以经典版 TiddlyWiki 标记格式撰写,不完全兼容新版 TiddlyWiki 的格式,详细信息请参阅:https://tiddlywiki.com/static/Upgrading。"
        },
        "$:/language/ClassicWarning/Upgrade/Caption": {
            "title": "$:/language/ClassicWarning/Upgrade/Caption",
            "text": "升级"
        },
        "$:/language/CloseAll/Button": {
            "title": "$:/language/CloseAll/Button",
            "text": "全部关闭"
        },
        "$:/language/ColourPicker/Recent": {
            "title": "$:/language/ColourPicker/Recent",
            "text": "最近︰"
        },
        "$:/language/ConfirmCancelTiddler": {
            "title": "$:/language/ConfirmCancelTiddler",
            "text": "您确定要放弃对条目 \"<$text text=<<title>>/>\" 的更改?"
        },
        "$:/language/ConfirmDeleteTiddler": {
            "title": "$:/language/ConfirmDeleteTiddler",
            "text": "您确定要删除条目 \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmOverwriteTiddler": {
            "title": "$:/language/ConfirmOverwriteTiddler",
            "text": "您确定要复写条目 \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmEditShadowTiddler": {
            "title": "$:/language/ConfirmEditShadowTiddler",
            "text": "您即将要编辑默认条目,任何更改将会复盖默认的系统,使未来的升级不寻常。您确定要编辑 \"<$text text=<<title>>/>\"?"
        },
        "$:/language/ConfirmAction": {
            "title": "$:/language/ConfirmAction",
            "text": "是否要继续?"
        },
        "$:/language/Count": {
            "title": "$:/language/Count",
            "text": "计数"
        },
        "$:/language/DefaultNewTiddlerTitle": {
            "title": "$:/language/DefaultNewTiddlerTitle",
            "text": "新条目"
        },
        "$:/language/Diffs/CountMessage": {
            "title": "$:/language/Diffs/CountMessage",
            "text": "<<diff-count>> 个差异"
        },
        "$:/language/DropMessage": {
            "title": "$:/language/DropMessage",
            "text": "拖放到此处 (或按 ESC 键取消)"
        },
        "$:/language/Encryption/Cancel": {
            "title": "$:/language/Encryption/Cancel",
            "text": "取消"
        },
        "$:/language/Encryption/ConfirmClearPassword": {
            "title": "$:/language/Encryption/ConfirmClearPassword",
            "text": "您要清除密码吗?当保存此维基时,这将删除已套用的加密"
        },
        "$:/language/Encryption/Username": {
            "title": "$:/language/Encryption/Username",
            "text": "用户名称"
        },
        "$:/language/Encryption/Password": {
            "title": "$:/language/Encryption/Password",
            "text": "密码"
        },
        "$:/language/Encryption/PromptSetPassword": {
            "title": "$:/language/Encryption/PromptSetPassword",
            "text": "为此 TiddlyWiki 设置一个新密码"
        },
        "$:/language/Encryption/RepeatPassword": {
            "title": "$:/language/Encryption/RepeatPassword",
            "text": "重复输入密码"
        },
        "$:/language/Encryption/PasswordNoMatch": {
            "title": "$:/language/Encryption/PasswordNoMatch",
            "text": "密码不匹配"
        },
        "$:/language/Encryption/SetPassword": {
            "title": "$:/language/Encryption/SetPassword",
            "text": "设定密码"
        },
        "$:/language/Error/Caption": {
            "title": "$:/language/Error/Caption",
            "text": "错误"
        },
        "$:/language/Error/EditConflict": {
            "title": "$:/language/Error/EditConflict",
            "text": "服务器上的文件已更改"
        },
        "$:/language/Error/Filter": {
            "title": "$:/language/Error/Filter",
            "text": "筛选器错误"
        },
        "$:/language/Error/FilterRunPrefix": {
            "title": "$:/language/Error/FilterRunPrefix",
            "text": "筛选器错误:筛选器 run 的未知首码"
        },
        "$:/language/Error/FilterSyntax": {
            "title": "$:/language/Error/FilterSyntax",
            "text": "筛选器运算式中的语法错误"
        },
        "$:/language/Error/FormatFilterOperator": {
            "title": "$:/language/Error/FormatFilterOperator",
            "text": "筛选器错误:`format` 筛选器运算符的未知尾码"
        },
        "$:/language/Error/IsFilterOperator": {
            "title": "$:/language/Error/IsFilterOperator",
            "text": "筛选器错误︰'is' 筛选器运算符的未知操作数"
        },
        "$:/language/Error/LoadingPluginLibrary": {
            "title": "$:/language/Error/LoadingPluginLibrary",
            "text": "加载插件程式库时,发生错误"
        },
        "$:/language/Error/NetworkErrorAlert": {
            "title": "$:/language/Error/NetworkErrorAlert",
            "text": "`<h2>''网络错误''</h2>与服务器的连缐似乎已中断。这可能表示您的网络连缐有问题。请尝试恢复网路连缐才能继续。<br><br>''恢复连缐时,所有未保存的更改,将自动同步''。`"
        },
        "$:/language/Error/RecursiveTransclusion": {
            "title": "$:/language/Error/RecursiveTransclusion",
            "text": "于 transclude 小部件中的递回嵌入错误"
        },
        "$:/language/Error/RetrievingSkinny": {
            "title": "$:/language/Error/RetrievingSkinny",
            "text": "简要条目清单撷取错误"
        },
        "$:/language/Error/SavingToTWEdit": {
            "title": "$:/language/Error/SavingToTWEdit",
            "text": "保存到 TWEdit 时,发生错误"
        },
        "$:/language/Error/WhileSaving": {
            "title": "$:/language/Error/WhileSaving",
            "text": "保存时,发生错误"
        },
        "$:/language/Error/XMLHttpRequest": {
            "title": "$:/language/Error/XMLHttpRequest",
            "text": "XMLHttpRequest 错误代码"
        },
        "$:/language/InternalJavaScriptError/Title": {
            "title": "$:/language/InternalJavaScriptError/Title",
            "text": "内部的 JavaScript 错误"
        },
        "$:/language/InternalJavaScriptError/Hint": {
            "title": "$:/language/InternalJavaScriptError/Hint",
            "text": "喔,真是令人尴尬。建议刷新您的浏览器,重新启动 TiddlyWiki"
        },
        "$:/language/InvalidFieldName": {
            "title": "$:/language/InvalidFieldName",
            "text": "字段名称 \"<$text text=<<fieldName>>/>\" 包含无效字符,字段名称只能包含小写字母、数字、底线 (`_`)、 连字号 (`-`) 和小数点 (`.`)"
        },
        "$:/language/LayoutSwitcher/Description": {
            "title": "$:/language/LayoutSwitcher/Description",
            "text": "打开布局切换器"
        },
        "$:/language/LazyLoadingWarning": {
            "title": "$:/language/LazyLoadingWarning",
            "text": "<p>正在从 ''<$text text={{!!_canonical_uri}}/>'' 加载外部内容 ...</p><p>如果此信息未消失,可能是条目内容类型与外部内容的类型不匹配,或是您可能正在使用的浏览器,不支援单文件式维基的外部内容。请参阅 https://tiddlywiki.com/#ExternalText</p>"
        },
        "$:/language/LoginToTiddlySpace": {
            "title": "$:/language/LoginToTiddlySpace",
            "text": "登录 TiddlySpace"
        },
        "$:/language/Manager/Controls/FilterByTag/None": {
            "title": "$:/language/Manager/Controls/FilterByTag/None",
            "text": "(无)"
        },
        "$:/language/Manager/Controls/FilterByTag/Prompt": {
            "title": "$:/language/Manager/Controls/FilterByTag/Prompt",
            "text": "依标签筛选︰"
        },
        "$:/language/Manager/Controls/Order/Prompt": {
            "title": "$:/language/Manager/Controls/Order/Prompt",
            "text": "反向顺序"
        },
        "$:/language/Manager/Controls/Search/Placeholder": {
            "title": "$:/language/Manager/Controls/Search/Placeholder",
            "text": "搜寻"
        },
        "$:/language/Manager/Controls/Search/Prompt": {
            "title": "$:/language/Manager/Controls/Search/Prompt",
            "text": "搜寻︰"
        },
        "$:/language/Manager/Controls/Show/Option/Tags": {
            "title": "$:/language/Manager/Controls/Show/Option/Tags",
            "text": "标签"
        },
        "$:/language/Manager/Controls/Show/Option/Tiddlers": {
            "title": "$:/language/Manager/Controls/Show/Option/Tiddlers",
            "text": "条目"
        },
        "$:/language/Manager/Controls/Show/Prompt": {
            "title": "$:/language/Manager/Controls/Show/Prompt",
            "text": "显示︰"
        },
        "$:/language/Manager/Controls/Sort/Prompt": {
            "title": "$:/language/Manager/Controls/Sort/Prompt",
            "text": "排序︰"
        },
        "$:/language/Manager/Item/Colour": {
            "title": "$:/language/Manager/Item/Colour",
            "text": "颜色"
        },
        "$:/language/Manager/Item/Fields": {
            "title": "$:/language/Manager/Item/Fields",
            "text": "字段"
        },
        "$:/language/Manager/Item/Icon/None": {
            "title": "$:/language/Manager/Item/Icon/None",
            "text": "(无)"
        },
        "$:/language/Manager/Item/Icon": {
            "title": "$:/language/Manager/Item/Icon",
            "text": "图标"
        },
        "$:/language/Manager/Item/RawText": {
            "title": "$:/language/Manager/Item/RawText",
            "text": "原始文字"
        },
        "$:/language/Manager/Item/Tags": {
            "title": "$:/language/Manager/Item/Tags",
            "text": "标签"
        },
        "$:/language/Manager/Item/Tools": {
            "title": "$:/language/Manager/Item/Tools",
            "text": "工具"
        },
        "$:/language/Manager/Item/WikifiedText": {
            "title": "$:/language/Manager/Item/WikifiedText",
            "text": "Wikified 文字"
        },
        "$:/language/MissingTiddler/Hint": {
            "title": "$:/language/MissingTiddler/Hint",
            "text": "佚失条目 \"<$text text=<<currentTiddler>>/>\" - 点击 {{||$:/core/ui/Buttons/edit}} 可创建此条目"
        },
        "$:/language/No": {
            "title": "$:/language/No",
            "text": "否"
        },
        "$:/language/OfficialPluginLibrary": {
            "title": "$:/language/OfficialPluginLibrary",
            "text": "~TiddlyWiki 官方插件程式库"
        },
        "$:/language/OfficialPluginLibrary/Hint": {
            "title": "$:/language/OfficialPluginLibrary/Hint",
            "text": "此为在 tiddlywiki.com 的 ~TiddlyWiki 官方插件程式库。由核心团队维护的插件、主题和语言包。"
        },
        "$:/language/PageTemplate/Description": {
            "title": "$:/language/PageTemplate/Description",
            "text": "默认的 ~Tiddlywiki 布局"
        },
        "$:/language/PageTemplate/Name": {
            "title": "$:/language/PageTemplate/Name",
            "text": "默认的 ~PageTemplate"
        },
        "$:/language/PluginReloadWarning": {
            "title": "$:/language/PluginReloadWarning",
            "text": "请保存 {{$:/core/ui/Buttons/save-wiki}} 并刷新页面 {{$:/core/ui/Buttons/refresh}} ,使 ~JavaScript 插件的更改生效"
        },
        "$:/language/RecentChanges/DateFormat": {
            "title": "$:/language/RecentChanges/DateFormat",
            "text": "YYYY年0MM月0DD日"
        },
        "$:/language/Shortcuts/Input/Accept/Hint": {
            "title": "$:/language/Shortcuts/Input/Accept/Hint",
            "text": "接受选取的项目"
        },
        "$:/language/Shortcuts/Input/AcceptVariant/Hint": {
            "title": "$:/language/Shortcuts/Input/AcceptVariant/Hint",
            "text": "接受选取项目 (变种)"
        },
        "$:/language/Shortcuts/Input/AdvancedSearch/Hint": {
            "title": "$:/language/Shortcuts/Input/AdvancedSearch/Hint",
            "text": "从侧边栏搜寻字段内打开[[进阶搜寻|$:/AdvancedSearch]]面板"
        },
        "$:/language/Shortcuts/Input/Cancel/Hint": {
            "title": "$:/language/Shortcuts/Input/Cancel/Hint",
            "text": "清除输入字段"
        },
        "$:/language/Shortcuts/Input/Down/Hint": {
            "title": "$:/language/Shortcuts/Input/Down/Hint",
            "text": "选择下一个项目"
        },
        "$:/language/Shortcuts/Input/Tab-Left/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Left/Hint",
            "text": "选择上一个页签"
        },
        "$:/language/Shortcuts/Input/Tab-Right/Hint": {
            "title": "$:/language/Shortcuts/Input/Tab-Right/Hint",
            "text": "选择下一个页签"
        },
        "$:/language/Shortcuts/Input/Up/Hint": {
            "title": "$:/language/Shortcuts/Input/Up/Hint",
            "text": "选择前一个项目"
        },
        "$:/language/Shortcuts/SidebarLayout/Hint": {
            "title": "$:/language/Shortcuts/SidebarLayout/Hint",
            "text": "更改侧边栏布局"
        },
        "$:/language/Switcher/Subtitle/theme": {
            "title": "$:/language/Switcher/Subtitle/theme",
            "text": "切换布景主题"
        },
        "$:/language/Switcher/Subtitle/layout": {
            "title": "$:/language/Switcher/Subtitle/layout",
            "text": "切换布局"
        },
        "$:/language/Switcher/Subtitle/language": {
            "title": "$:/language/Switcher/Subtitle/language",
            "text": "切换语言"
        },
        "$:/language/Switcher/Subtitle/palette": {
            "title": "$:/language/Switcher/Subtitle/palette",
            "text": "切换调色板"
        },
        "$:/language/SystemTiddler/Tooltip": {
            "title": "$:/language/SystemTiddler/Tooltip",
            "text": "此为系统条目"
        },
        "$:/language/SystemTiddlers/Include/Prompt": {
            "title": "$:/language/SystemTiddlers/Include/Prompt",
            "text": "包括系统条目"
        },
        "$:/language/TagManager/Colour/Heading": {
            "title": "$:/language/TagManager/Colour/Heading",
            "text": "颜色"
        },
        "$:/language/TagManager/Count/Heading": {
            "title": "$:/language/TagManager/Count/Heading",
            "text": "计数"
        },
        "$:/language/TagManager/Icon/Heading": {
            "title": "$:/language/TagManager/Icon/Heading",
            "text": "图标"
        },
        "$:/language/TagManager/Icons/None": {
            "title": "$:/language/TagManager/Icons/None",
            "text": "无"
        },
        "$:/language/TagManager/Info/Heading": {
            "title": "$:/language/TagManager/Info/Heading",
            "text": "信息"
        },
        "$:/language/TagManager/Tag/Heading": {
            "title": "$:/language/TagManager/Tag/Heading",
            "text": "标签"
        },
        "$:/language/Tiddler/DateFormat": {
            "title": "$:/language/Tiddler/DateFormat",
            "text": "YYYY年0MM月0DD日 0hh:0mm"
        },
        "$:/language/UnsavedChangesWarning": {
            "title": "$:/language/UnsavedChangesWarning",
            "text": "在此 TiddlyWiki 您有尚未保存的变更"
        },
        "$:/language/Yes": {
            "title": "$:/language/Yes",
            "text": "是"
        },
        "$:/language/Modals/Download": {
            "title": "$:/language/Modals/Download",
            "type": "text/vnd.tiddlywiki",
            "subtitle": "Download changes",
            "footer": "<$button message=\"tm-close-tiddler\">关闭</$button>",
            "help": "https://tiddlywiki.com/",
            "text": "您的浏览器只支援手动保存。\n\n要保存更动的维基,右键点击下方的下载链结,选择\"下载文件\"或\"保存文件\",然后选择文件夹或文件名。\n\n//您可以藉由按一下 Ctrl 键(Windows)或 options/ alt 键(Mac OS X)中的链接,稍微加速操作。您不会被提示文件夹或文件名,您的浏览器可能无法辨认它的文件名 -- 在做其他任何事之前,您可能需要重新命名扩展名为 `.html` 的文件。//\n\n在智能型手机上,不允许下载文件,但您可以标记链结,然后从一台可以正常保存维基的台式机的维基同步你的书签。"
        },
        "$:/language/Modals/SaveInstructions": {
            "title": "$:/language/Modals/SaveInstructions",
            "type": "text/vnd.tiddlywiki",
            "subtitle": "Save your work",
            "footer": "<$button message=\"tm-close-tiddler\">关闭</$button>",
            "help": "https://tiddlywiki.com/static/SavingChanges.html",
            "text": "您对此 wiki 的变更需被保存为 ~TiddlyWiki HTML 文件。\n\n!!! 桌面版浏览器\n\n# 从''文件''菜单点选 ''另存为''\n# 选定文件名及保存位置\n#* 某些浏览器依然需要明确指定文件格式为 ''Webpage, HTML only'' 或类似的。\n# 关闭此页签\n\n!!! 智能手机版浏览器\n\n# 为此页建立书签\n#* 若您已设置 iCloud 或 Google 同步,该书签将自动与之前开启及保存于您电脑的书签同步。\n# 关闭此页签\n\n//若您再次于 Mobile Safari 开启该书签,将会再看到此信息。若要继续使用该文件,只需点击下列 ''关闭'' 按钮//\n"
        },
        "$:/config/NewJournal/Title": {
            "title": "$:/config/NewJournal/Title",
            "text": "YYYY年0MM月0DD日"
        },
        "$:/config/NewJournal/Text": {
            "title": "$:/config/NewJournal/Text",
            "text": ""
        },
        "$:/config/NewJournal/Tags": {
            "title": "$:/config/NewJournal/Tags",
            "text": "日志\n"
        },
        "$:/language/Notifications/Save/Done": {
            "title": "$:/language/Notifications/Save/Done",
            "text": "已保存 wiki"
        },
        "$:/language/Notifications/Save/Starting": {
            "title": "$:/language/Notifications/Save/Starting",
            "text": "开始保存 wiki"
        },
        "$:/language/Notifications/CopiedToClipboard/Succeeded": {
            "title": "$:/language/Notifications/CopiedToClipboard/Succeeded",
            "text": "已复制到剪贴板!"
        },
        "$:/language/Notifications/CopiedToClipboard/Failed": {
            "title": "$:/language/Notifications/CopiedToClipboard/Failed",
            "text": "无法复制到剪贴板!"
        },
        "$:/language/Search/DefaultResults/Caption": {
            "title": "$:/language/Search/DefaultResults/Caption",
            "text": "列表"
        },
        "$:/language/Search/Filter/Caption": {
            "title": "$:/language/Search/Filter/Caption",
            "text": "筛选"
        },
        "$:/language/Search/Filter/Hint": {
            "title": "$:/language/Search/Filter/Hint",
            "text": "以[[筛选表达式|https://tiddlywiki.com/static/Filters.html]]查找"
        },
        "$:/language/Search/Filter/Matches": {
            "title": "$:/language/Search/Filter/Matches",
            "text": "//<small><<resultCount>> 个条目符合条件</small>//"
        },
        "$:/language/Search/Matches": {
            "title": "$:/language/Search/Matches",
            "text": "//<small><<resultCount>> 个条目符合条件</small>//"
        },
        "$:/language/Search/Matches/All": {
            "title": "$:/language/Search/Matches/All",
            "text": "所有匹配:"
        },
        "$:/language/Search/Matches/Title": {
            "title": "$:/language/Search/Matches/Title",
            "text": "条目名称匹配:"
        },
        "$:/language/Search/Search": {
            "title": "$:/language/Search/Search",
            "text": "查找"
        },
        "$:/language/Search/Search/TooShort": {
            "title": "$:/language/Search/Search/TooShort",
            "text": "查找文本太短"
        },
        "$:/language/Search/Shadows/Caption": {
            "title": "$:/language/Search/Shadows/Caption",
            "text": "默认"
        },
        "$:/language/Search/Shadows/Hint": {
            "title": "$:/language/Search/Shadows/Hint",
            "text": "查找默认条目"
        },
        "$:/language/Search/Shadows/Matches": {
            "title": "$:/language/Search/Shadows/Matches",
            "text": "//<small><<resultCount>> 个条目符合条件</small>//"
        },
        "$:/language/Search/Standard/Caption": {
            "title": "$:/language/Search/Standard/Caption",
            "text": "标准"
        },
        "$:/language/Search/Standard/Hint": {
            "title": "$:/language/Search/Standard/Hint",
            "text": "查找一般条目"
        },
        "$:/language/Search/Standard/Matches": {
            "title": "$:/language/Search/Standard/Matches",
            "text": "//<small><<resultCount>> 个条目符合条件</small>//"
        },
        "$:/language/Search/System/Caption": {
            "title": "$:/language/Search/System/Caption",
            "text": "系统"
        },
        "$:/language/Search/System/Hint": {
            "title": "$:/language/Search/System/Hint",
            "text": "查找系统条目"
        },
        "$:/language/Search/System/Matches": {
            "title": "$:/language/Search/System/Matches",
            "text": "//<small><<resultCount>> 个条目符合条件</small>//"
        },
        "$:/language/SideBar/All/Caption": {
            "title": "$:/language/SideBar/All/Caption",
            "text": "全部"
        },
        "$:/language/SideBar/Contents/Caption": {
            "title": "$:/language/SideBar/Contents/Caption",
            "text": "目录"
        },
        "$:/language/SideBar/Drafts/Caption": {
            "title": "$:/language/SideBar/Drafts/Caption",
            "text": "草稿"
        },
        "$:/language/SideBar/Explorer/Caption": {
            "title": "$:/language/SideBar/Explorer/Caption",
            "text": "探索"
        },
        "$:/language/SideBar/Missing/Caption": {
            "title": "$:/language/SideBar/Missing/Caption",
            "text": "缺失"
        },
        "$:/language/SideBar/More/Caption": {
            "title": "$:/language/SideBar/More/Caption",
            "text": "更多"
        },
        "$:/language/SideBar/Open/Caption": {
            "title": "$:/language/SideBar/Open/Caption",
            "text": "开启"
        },
        "$:/language/SideBar/Orphans/Caption": {
            "title": "$:/language/SideBar/Orphans/Caption",
            "text": "孤立"
        },
        "$:/language/SideBar/Recent/Caption": {
            "title": "$:/language/SideBar/Recent/Caption",
            "text": "最近"
        },
        "$:/language/SideBar/Shadows/Caption": {
            "title": "$:/language/SideBar/Shadows/Caption",
            "text": "默认"
        },
        "$:/language/SideBar/System/Caption": {
            "title": "$:/language/SideBar/System/Caption",
            "text": "系统"
        },
        "$:/language/SideBar/Tags/Caption": {
            "title": "$:/language/SideBar/Tags/Caption",
            "text": "标签"
        },
        "$:/language/SideBar/Tags/Untagged/Caption": {
            "title": "$:/language/SideBar/Tags/Untagged/Caption",
            "text": "未设标签"
        },
        "$:/language/SideBar/Tools/Caption": {
            "title": "$:/language/SideBar/Tools/Caption",
            "text": "工具"
        },
        "$:/language/SideBar/Types/Caption": {
            "title": "$:/language/SideBar/Types/Caption",
            "text": "类型"
        },
        "$:/SiteSubtitle": {
            "title": "$:/SiteSubtitle",
            "text": "一个非线性的网页式笔记"
        },
        "$:/SiteTitle": {
            "title": "$:/SiteTitle",
            "text": "我的 ~TiddlyWiki"
        },
        "$:/language/Snippets/ListByTag": {
            "title": "$:/language/Snippets/ListByTag",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "依标签筛选的条目列表",
            "text": "<<list-links \"[tag[task]sort[title]]\">>\n"
        },
        "$:/language/Snippets/MacroDefinition": {
            "title": "$:/language/Snippets/MacroDefinition",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "宏的定义",
            "text": "\\define macroName(param1:\"默认值\",param2)\n宏的内容\n\\end\n"
        },
        "$:/language/Snippets/Table4x3": {
            "title": "$:/language/Snippets/Table4x3",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "4 x 3 的表格",
            "text": "|! | !一 | !二 | !三 | !四 |\n|! 1| | | | |\n|! 2| | | | |\n|! 3 | | | | |\n"
        },
        "$:/language/Snippets/TableOfContents": {
            "title": "$:/language/Snippets/TableOfContents",
            "tags": "$:/tags/TextEditor/Snippet",
            "caption": "目录",
            "text": "<div class=\"tc-table-of-contents\">\n\n<<toc-selective-expandable 'TableOfContents'>>\n\n</div>"
        },
        "$:/language/ThemeTweaks/ThemeTweaks": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks",
            "text": "主题调整"
        },
        "$:/language/ThemeTweaks/ThemeTweaks/Hint": {
            "title": "$:/language/ThemeTweaks/ThemeTweaks/Hint",
            "text": "您可以调整 ''Vanilla'' 布景主题的某些样貌。"
        },
        "$:/language/ThemeTweaks/Options": {
            "title": "$:/language/ThemeTweaks/Options",
            "text": "选项"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout",
            "text": "侧边栏布局"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fixed-Fluid",
            "text": "固定故事,浮动侧边栏"
        },
        "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed": {
            "title": "$:/language/ThemeTweaks/Options/SidebarLayout/Fluid-Fixed",
            "text": "浮动故事,固定侧边栏"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles",
            "text": "置顶标题"
        },
        "$:/language/ThemeTweaks/Options/StickyTitles/Hint": {
            "title": "$:/language/ThemeTweaks/Options/StickyTitles/Hint",
            "text": "使条目名称\"黏着\"于浏览器窗口的顶端"
        },
        "$:/language/ThemeTweaks/Options/CodeWrapping": {
            "title": "$:/language/ThemeTweaks/Options/CodeWrapping",
            "text": "在代码区块中折行"
        },
        "$:/language/ThemeTweaks/Settings": {
            "title": "$:/language/ThemeTweaks/Settings",
            "text": "设置"
        },
        "$:/language/ThemeTweaks/Settings/FontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/FontFamily",
            "text": "字型"
        },
        "$:/language/ThemeTweaks/Settings/CodeFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/CodeFontFamily",
            "text": "代码字型"
        },
        "$:/language/ThemeTweaks/Settings/EditorFontFamily": {
            "title": "$:/language/ThemeTweaks/Settings/EditorFontFamily",
            "text": "编辑器字型"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImage": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImage",
            "text": "页面背景图像"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment",
            "text": "页面背景图像附属"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Scroll",
            "text": "随条目卷动"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageAttachment/Fixed",
            "text": "固定于窗口"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize",
            "text": "页面背景图像大小"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Auto",
            "text": "自动"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Cover",
            "text": "覆盖"
        },
        "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain": {
            "title": "$:/language/ThemeTweaks/Settings/BackgroundImageSize/Contain",
            "text": "包含"
        },
        "$:/language/ThemeTweaks/Metrics": {
            "title": "$:/language/ThemeTweaks/Metrics",
            "text": "大小"
        },
        "$:/language/ThemeTweaks/Metrics/FontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/FontSize",
            "text": "字体大小"
        },
        "$:/language/ThemeTweaks/Metrics/LineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/LineHeight",
            "text": "行高"
        },
        "$:/language/ThemeTweaks/Metrics/BodyFontSize": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyFontSize",
            "text": "条目本文的字体大小"
        },
        "$:/language/ThemeTweaks/Metrics/BodyLineHeight": {
            "title": "$:/language/ThemeTweaks/Metrics/BodyLineHeight",
            "text": "条目本文的行高"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft",
            "text": "故事左侧位置"
        },
        "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryLeft/Hint",
            "text": "故事河(条目区)的左边缘与页面左端的间距"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop",
            "text": "故事顶端位置"
        },
        "$:/language/ThemeTweaks/Metrics/StoryTop/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryTop/Hint",
            "text": "故事河(条目区)的上边缘与页面顶端的间距"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight",
            "text": "故事右侧位置"
        },
        "$:/language/ThemeTweaks/Metrics/StoryRight/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryRight/Hint",
            "text": "侧边栏的左边缘与页面左端的间距"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth",
            "text": "故事的宽度"
        },
        "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/StoryWidth/Hint",
            "text": "故事河的整体宽度"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth",
            "text": "条目宽度"
        },
        "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/TiddlerWidth/Hint",
            "text": "在故事河内"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint",
            "text": "侧边栏中断点"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarBreakpoint/Hint",
            "text": "故事河和侧边栏会并排显示的最小页面宽度"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth",
            "text": "侧边栏宽度"
        },
        "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint": {
            "title": "$:/language/ThemeTweaks/Metrics/SidebarWidth/Hint",
            "text": "在浮动-固定布局中,侧边栏的宽度"
        },
        "$:/language/TiddlerInfo/Advanced/Caption": {
            "title": "$:/language/TiddlerInfo/Advanced/Caption",
            "text": "高级"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Empty/Hint",
            "text": "无信息"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Heading",
            "text": "插件明细"
        },
        "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/PluginInfo/Hint",
            "text": "此插件包含以下预设条目:"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Heading",
            "text": "默认条目状态"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/NotShadow/Hint",
            "text": "<$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> 不是一个默认条目"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Hint",
            "text": "<$link to=<<infoTiddler>>><$text text=<<infoTiddler>>/></$link> 是一个默认条目"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/Shadow/Source",
            "text": "此条目定义于插件 <$link to=<<pluginTiddler>>><$text text=<<pluginTiddler>>/></$link>"
        },
        "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint": {
            "title": "$:/language/TiddlerInfo/Advanced/ShadowInfo/OverriddenShadow/Hint",
            "text": "已被一般条目覆写"
        },
        "$:/language/TiddlerInfo/Fields/Caption": {
            "title": "$:/language/TiddlerInfo/Fields/Caption",
            "text": "栏位"
        },
        "$:/language/TiddlerInfo/List/Caption": {
            "title": "$:/language/TiddlerInfo/List/Caption",
            "text": "列表"
        },
        "$:/language/TiddlerInfo/List/Empty": {
            "title": "$:/language/TiddlerInfo/List/Empty",
            "text": "此条目无指定列表"
        },
        "$:/language/TiddlerInfo/Listed/Caption": {
            "title": "$:/language/TiddlerInfo/Listed/Caption",
            "text": "被列于"
        },
        "$:/language/TiddlerInfo/Listed/Empty": {
            "title": "$:/language/TiddlerInfo/Listed/Empty",
            "text": "此条目未出现于其他条目的列表中"
        },
        "$:/language/TiddlerInfo/References/Caption": {
            "title": "$:/language/TiddlerInfo/References/Caption",
            "text": "反向链接"
        },
        "$:/language/TiddlerInfo/References/Empty": {
            "title": "$:/language/TiddlerInfo/References/Empty",
            "text": "无条目链接至此"
        },
        "$:/language/TiddlerInfo/Tagging/Caption": {
            "title": "$:/language/TiddlerInfo/Tagging/Caption",
            "text": "子条目"
        },
        "$:/language/TiddlerInfo/Tagging/Empty": {
            "title": "$:/language/TiddlerInfo/Tagging/Empty",
            "text": "无任何条目以此条目之标题为标签"
        },
        "$:/language/TiddlerInfo/Tools/Caption": {
            "title": "$:/language/TiddlerInfo/Tools/Caption",
            "text": "工具"
        },
        "$:/language/Docs/Types/application/javascript": {
            "title": "$:/language/Docs/Types/application/javascript",
            "description": "JavaScript 源码",
            "name": "application/javascript",
            "group": "开发者"
        },
        "$:/language/Docs/Types/application/json": {
            "title": "$:/language/Docs/Types/application/json",
            "description": "JSON 数据",
            "name": "application/json",
            "group": "开发者"
        },
        "$:/language/Docs/Types/application/x-tiddler-dictionary": {
            "title": "$:/language/Docs/Types/application/x-tiddler-dictionary",
            "description": "数据字典",
            "name": "application/x-tiddler-dictionary",
            "group": "开发者"
        },
        "$:/language/Docs/Types/image/gif": {
            "title": "$:/language/Docs/Types/image/gif",
            "description": "GIF 图像",
            "name": "image/gif",
            "group": "图像"
        },
        "$:/language/Docs/Types/image/jpeg": {
            "title": "$:/language/Docs/Types/image/jpeg",
            "description": "JPEG 图像",
            "name": "image/jpeg",
            "group": "图像"
        },
        "$:/language/Docs/Types/image/png": {
            "title": "$:/language/Docs/Types/image/png",
            "description": "PNG 图像",
            "name": "image/png",
            "group": "图像"
        },
        "$:/language/Docs/Types/image/svg+xml": {
            "title": "$:/language/Docs/Types/image/svg+xml",
            "description": "结构式矢量图",
            "name": "image/svg+xml",
            "group": "图像"
        },
        "$:/language/Docs/Types/image/x-icon": {
            "title": "$:/language/Docs/Types/image/x-icon",
            "description": "图标",
            "name": "image/x-icon",
            "group": "图像"
        },
        "$:/language/Docs/Types/text/css": {
            "title": "$:/language/Docs/Types/text/css",
            "description": "静态样式",
            "name": "text/css",
            "group": "开发者"
        },
        "$:/language/Docs/Types/text/html": {
            "title": "$:/language/Docs/Types/text/html",
            "description": "HTML 标记",
            "name": "text/html",
            "group": "文本"
        },
        "$:/language/Docs/Types/text/plain": {
            "title": "$:/language/Docs/Types/text/plain",
            "description": "纯文本",
            "name": "text/plain",
            "group": "文本"
        },
        "$:/language/Docs/Types/text/vnd.tiddlywiki": {
            "title": "$:/language/Docs/Types/text/vnd.tiddlywiki",
            "description": "TiddlyWiki 5",
            "name": "text/vnd.tiddlywiki",
            "group": "文本"
        },
        "$:/language/Docs/Types/text/x-tiddlywiki": {
            "title": "$:/language/Docs/Types/text/x-tiddlywiki",
            "description": "TiddlyWiki 2",
            "name": "text/x-tiddlywiki",
            "group": "文本"
        },
        "$:/config/Search/MinLength": {
            "title": "$:/config/Search/MinLength",
            "text": "1"
        },
        "$:/languages/zh-Hans/icon": {
            "title": "$:/languages/zh-Hans/icon",
            "type": "image/svg+xml",
            "text": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<svg xmlns=\"http://www.w3.org/2000/svg\" version=\"1.1\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"1500\" height=\"1000\" viewBox=\"-5 -5 30 20\">\n<title>Flag of the People's Republic of China</title>\n<rect fill=\"#de2910\" x=\"-5\" y=\"-5\" width=\"30\" height=\"20\"/>\n<defs>\n<polygon id=\"s\" points=\"0,-513674 301930,415571 -488533,-158734 488533,-158734 -301930,415571\"\nfill=\"#ffde00\" transform=\"scale(0.0000019467600073)\"/>\n</defs>\n<use xlink:href=\"#s\" transform=\"scale(3)\"/>\n<use xlink:href=\"#s\" transform=\"translate(5,-3) rotate(-120.963756)\"/>\n<use xlink:href=\"#s\" transform=\"translate(7,-1) rotate(-98.130102)\"/>\n<use xlink:href=\"#s\" transform=\"translate(7,2) rotate(-74.054604)\"/>\n<use xlink:href=\"#s\" transform=\"translate(5,4) rotate(-51.3401917)\"/>\n</svg>\n"
        }
    }
}
$:/palettes/ContrastDark
{
    "tiddlers": {
        "$:/plugins/felixhayashi/hotzone/config.js": {
            "title": "$:/plugins/felixhayashi/hotzone/config.js",
            "text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/config.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.config={classNames:{storyRiver:\"tc-story-river\",tiddlerFrame:\"tc-tiddler-frame\",tiddlerTitle:\"tc-title\"},references:{userConfig:\"$:/config/hotzone/focusOffset\",focussedTiddlerStore:\"$:/temp/focussedTiddler\"},checkbackTime:$tw.utils.getAnimationDuration()}})();",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/hotzone/hotzone.js": {
            "title": "$:/plugins/felixhayashi/hotzone/hotzone.js",
            "text": "/*\\\n\ntitle: $:/plugins/felixhayashi/hotzone/hotzone.js\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n(function(){\"use strict\";exports.name=\"hotzone\";exports.platforms=[\"browser\"];exports.after=[\"story\"];exports.synchronous=true;exports.startup=function(){var t=require(\"$:/plugins/felixhayashi/hotzone/config.js\").config;var e=null;var i=document.getElementsByClassName(t.classNames.storyRiver)[0];var r=$tw.wiki.getTiddlerData(t.references.userConfig,{});var s=isNaN(parseInt(r.focusOffset))?150:parseInt(r.focusOffset);var a=function(e,i,r){if(!(e instanceof Element))return;if(!$tw.utils.hasClass(e,t.classNames.tiddlerFrame))return;var s=e.getElementsByClassName(t.classNames.tiddlerTitle)[0];if(s){var a=s.innerText||s.textContent;return a.trim()}};var n=function(e,i){$tw.wiki.addTiddler(new $tw.Tiddler({title:t.references.focussedTiddlerStore,text:e},$tw.wiki.getModificationFields()));if(i){var r=document.getElementsByClassName(\"hzone-focus\")[0];if(r){$tw.utils.removeClass(r,\"hzone-focus\")}$tw.utils.addClass(i,\"hzone-focus\")}};var l=function(){var r=$tw.wiki.getTiddler(\"$:/StoryList\");if(r&&r.fields.list.length){var l=null;var o=Number.MAX_VALUE;var f=i.children;var u=t.classNames.tiddlerFrame;for(var d=f.length;d--;){if($tw.utils.hasClass(f[d],u)){var c=f[d].getBoundingClientRect();var v=Math.min(Math.abs(s-c.top),Math.abs(s-c.bottom));if(v<o){l=f[d];o=v}}}var w=a(l);if(w!==e&&$tw.wiki.getTiddler(w)){e=w;n(e,l);return}}else if(e){e=\"\";n(e)}};var o=function(t){var e;var i=false;return function(r,s){var a=this;if(i&&!s){}else{i=s;if(e!=null){clearTimeout(e)}e=setTimeout((function(){e=null;i=false;t.apply(a)}),r)}}};var f=o(l);var u=function(t){if(t[\"$:/HistoryList\"]){if(!$tw.wiki.tiddlerExists(\"$:/HistoryList\"))return;var e=$tw.wiki.getTiddler(\"$:/HistoryList\").fields[\"current-tiddler\"];var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");var r=i.indexOf(e)>=0;if(!r)return;f($tw.utils.getAnimationDuration()+10,true)}else if(t[\"$:/StoryList\"]){f($tw.utils.getAnimationDuration()+10,true)}};var d=function(t){f(300,false)};$tw.wiki.addEventListener(\"change\",u);window.addEventListener(\"scroll\",d,false);d()}})();",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/hotzone/Configuration": {
            "title": "$:/plugins/felixhayashi/hotzone/Configuration",
            "text": "Please see the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information on the options.\n\nSave and reload the wiki to activate changes.\n\n<table>\n  <tr>\n    <th align=\"left\">Focus offset:</th>\n    <td><$edit-text tiddler=\"$:/config/hotzone/focusOffset\" tag=\"input\" default=\"71px\" /></td>\n  </tr>\n</table>"
        },
        "$:/temp/focussedTiddler": {
            "title": "$:/temp/focussedTiddler"
        },
        "$:/plugins/felixhayashi/hotzone/License": {
            "title": "$:/plugins/felixhayashi/hotzone/License",
            "text": "This code is released under the BSD license. For the exact terms visit:\n\nhttps://github.com/felixhayashi/TW5-HotZone/blob/master/LICENSE"
        },
        "$:/plugins/felixhayashi/hotzone/Readme": {
            "title": "$:/plugins/felixhayashi/hotzone/Readme",
            "text": "Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-HotZone]] for more information."
        }
    }
}
{
    "tiddlers": {
        "$:/plugins/felixhayashi/tiddlymap/layout": {
            "text": "\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline \n\nbody .tc-page-container-wrapper.tc-modal-displayed{-webkit-filter:inherit;-moz-filter:inherit;filter:inherit}body .tc-modal-wrapper{z-index:1010}body .tc-modal-wrapper .tc-modal-header svg{vertical-align:sub}body .tc-modal-wrapper .tc-modal-header h3{line-height:10px}body .tc-modal-wrapper .tc-modal-body{min-height:250px;max-height:70vh;padding-top:0px;padding-bottom:0px;overflow:auto}body .tc-modal-wrapper .tc-modal-footer{padding:8px}body .tc-modal-wrapper .tc-modal-footer .tmap-dialog-button{font-weight:bold}body .tc-modal-wrapper .tc-modal-footer .tmap-hidden-close-button{display:none}table.tmap-table tr:nth-child(odd),.tc-modal-body table.tmap-config-table tr:nth-child(odd){background-color:#F0F0F0}table.tmap-table tr:nth-child(even),.tc-modal-body table.tmap-config-table tr:nth-child(even){background-color:#FFFFFF}.tmap-save-canvas-preview{text-align:center;background:lightgray}.tmap-save-canvas-preview img{background-color:white;max-width:100%;max-height:100px;border:1px solid red}.tmap-list-separator{display:block;background-color:#efefef;margin:10px 0 5px 0;cursor:default;border-bottom:1px dotted gray;font-weight:bold;font-size:0.8em}.tmap-unicode-icon{width:1em;display:inline-block;text-align:center;color:black}html .tmap-link{color:#5778D8}html .tmap-link:hover{color:white;background:#5778D8}html .tmap-small-list,html .tmap-smaller-list,html .tmap-very-small-list{overflow:auto;min-height:2em;max-height:9em;display:block}html .tmap-smaller-list{max-height:7em}html .tmap-very-small-list{max-height:5empx}html .tc-tiddler-controls button.tmap-active-button svg{fill:#888888}html #tmap-node-filter-dialog #tmap-filter-tips{font-size:0.8em}html #tmap-node-filter-dialog textarea{height:100px;max-height:300px;overflow:auto;width:100%;font-size:11px;font-family:\"Courier New\", Courier, monospace}@media (max-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-desktop-editor .tmap-widget:not(.tmap-fullscreen){display:none}}@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}){.tc-sidebar-scrollable .tmap-mobile-editor{display:none}.tc-modal-wrapper{z-index:1010}.tc-modal-wrapper .tc-modal{boder:1px solid #999999;left:calc(50% - 400px);width:802px}.tc-modal-wrapper .tc-modal-body{left:calc(50% - 400px);width:800px}}@-o-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-moz-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-webkit-keyframes fadein-keyframes{0%{opacity:0}100%{opacity:1}}@keyframes flash fadein-keyframes{0%{opacity:0}100%{opacity:1}}@-o-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-moz-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@-webkit-keyframes fadeout-keyframes{0%{opacity:1}100%{opacity:0}}@keyframes flash fadeout-keyframes{0%{opacity:1}100%{opacity:0}}.tmap-config-widget{background:#F0F0F0;padding:5px;margin:5px 0;box-sizing:border-box;display:block}.tmap-config-widget .vis-network{display:none}.tmap-config-widget .vis-configuration-wrapper{width:100%}.tmap-config-widget .vis-configuration-wrapper .vis-config-rangeinput{height:inherit;margin-left:4px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item{width:100%;height:inherit;background:none;padding-left:0px;left:0}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item.tmap-vis-config-item-active .vis-config-label::after{content:\"(inherited)\";position:absolute;display:inline-block;margin-left:10px;-o-animation:fadein-keyframes 1s;-moz-animation:fadein-keyframes 1s;-webkit-animation:fadein-keyframes 1s;animation:fadein-keyframes 1s;content:\"✔\";color:green;font-weight:bold;font-size:15px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item button.tmap-config-item-reset{vertical-align:top;margin-left:5px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range{width:150px}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-range::-moz-range-track{width:150px !important}.tmap-config-widget .vis-configuration-wrapper .vis-configuration.vis-config-item .vis-config-label{width:150px}.tmap-config-widget::after{clear:both;content:\"\";display:block}.tmap-flash-message{border:1px solid lightgray;padding:5px;margin:6px 0;display:block;color:#333333}.tmap-flash-message.tmap-info,.tmap-flash-message.tmap-plain,.tmap-flash-message.tmap-neutral{background:#F0F0F0}.tmap-flash-message.tmap-info::before,.tmap-flash-message.tmap-plain::before,.tmap-flash-message.tmap-neutral::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-valid,.tmap-flash-message.tmap-success{background:#D1EED4}.tmap-flash-message.tmap-valid::before,.tmap-flash-message.tmap-success::before{content:\"i\";display:inline-block;border-radius:50%;width:0.8em;border:2px solid;font-family:serif;text-align:center;height:0.8em;font-weight:bold;line-height:0.8em;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-warning{background:#FFF6D1}.tmap-flash-message.tmap-warning::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-flash-message.tmap-malformed,.tmap-flash-message.tmap-invalid,.tmap-flash-message.tmap-danger{background:#EED5D1}.tmap-flash-message.tmap-malformed::before,.tmap-flash-message.tmap-invalid::before,.tmap-flash-message.tmap-danger::before{content:\"\";display:inline-block;background:url(<<tmap \"datauri\" \"$:/core/images/warning\" \"\">>);display:inline-block;width:1em;height:1em;background-size:100% 100%;vertical-align:text-top;margin-right:2px}.tmap-widget{background:#FFFFFF;width:auto;position:relative;border:1px dotted lightgray;padding:2px;color:#666;display:block}.tmap-widget .tmap-download-canvas{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active){cursor:pointer}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active) .vis-navigation{display:none}.tmap-widget.tmap-click-to-use:not(.tmap-fullscreen) .vis-network:not(.vis-active):hover:before{color:gray;background:white;content:\"Click to use\";font-size:14px;font-weight:bold;right:calc(50% - 65px - 5px);position:absolute;text-align:center;top:calc(50% - 14px - 5px);width:130px;z-index:2000;padding:5px;pointer-events:none;background-color:rgba(255,255,255,0.3)}.tmap-widget .tmap-loading-bar{display:none;position:absolute;text-align:center;font-size:2em;padding:10px;top:50%;background:rgba(245,245,245,0.5);z-index:1;width:250px;margin:auto;left:0px;right:0px}.tmap-widget .tmap-vis-graph{height:calc(100% - 35px)}.tmap-widget.tmap-no-buttons .vis-navigation{display:none}.tmap-widget.tmap-advanced-editor .tmap-topbar{background:#d6d9d8}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button{color:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-active-button svg{fill:#488DCD}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button{font-size:1.5em;vertical-align:bottom;height:28px;fill:#555555}.tmap-widget.tmap-advanced-editor .tmap-topbar .tmap-unicode-button svg{vertical-align:baseline}.tmap-widget .tmap-menu-bar{width:100%}.tmap-widget .tmap-topbar{background:#F5F5F5;border-bottom:1px solid lightgray;padding:3px 5px;height:35px;position:relative}.tmap-widget .tmap-topbar .tmap-view-label{width:100%;text-align:center;font-weight:bold;padding-top:3px}.tmap-widget .tmap-topbar .tmap-focus-button{position:absolute;right:10px;top:6px}.tmap-widget .tmap-topbar .tmap-focus-button input{width:140px}.tmap-widget .tmap-topbar .tmap-search-dropdown{position:relative}.tmap-widget .tmap-topbar .tmap-search-dropdown .tc-drop-down{position:absolute;z-index:999;right:0px}.tmap-widget .tmap-topbar [hidden]{display:none}.tmap-widget .tmap-topbar select{width:30%;max-width:200px;word-wrap:initial;padding:0px;height:28px}.tmap-widget .tmap-topbar button{line-height:inherit;color:#666}.tmap-widget .tmap-topbar>*{display:inline-block}.tmap-widget .tmap-topbar .tmap-separator:after{color:#bdbdbd;margin:3px;content:\" | \"}.tmap-widget .tmap-topbar .tc-edit-add-tag .tc-add-tag-name input{width:70%}.tmap-widget .tmap-topbar .tc-sidebar-header{text-shadow:none}.tmap-widget .tmap-topbar .tc-edit-tags{border:none;padding:inherit;box-shadow:none}.tmap-widget.tmap-static-mode .tmap-topbar{height:initial}.tmap-widget.tmap-static-mode .tmap-vis-graph{text-align:center;cursor:not-allowed}.tmap-widget.tmap-static-mode .tmap-vis-graph:not(.tmap-graph-placeholder):hover::before{box-shadow:10px 10px 5px lightgray;color:gray;background:white;content:\"Static\";font-size:18px;font-weight:bold;left:50%;margin-left:-100px;position:absolute;text-align:center;top:50px;width:200px;z-index:2000;padding:5px;pointer-events:none}.tmap-widget.tmap-static-mode .tmap-vis-graph.tmap-graph-placeholder::before{content:\"No Preview\";display:block;text-align:center;padding:20px}.tmap-widget .tc-drop-down{min-width:170px;padding:5px;margin:5px 0}.tmap-widget .tc-drop-down button,.tmap-widget .tc-drop-down a{padding:0 2px;text-decoration:none}.tmap-widget .tc-drop-down button:hover,.tmap-widget .tc-drop-down a:hover{color:#ffffff}.tmap-widget .tc-drop-down button svg,.tmap-widget .tc-drop-down a svg{vertical-align:middle}.tmap-widget .tc-block-dropdown{width:370px;min-width:370px;padding:5px;margin:15px 0 0 -370px}.tmap-widget .tc-block-dropdown a{display:inline;padding:0px}.tmap-widget.tmap-plain-design{border:none;padding:0px}.tmap-widget.tmap-plain-design .tmap-topbar{display:none}.tc-sidebar-scrollable .tmap-widget{position:absolute;min-height:350px}.tmap-widget div.vis-network .vis-edit-mode{height:26px}.tmap-widget div.vis-network .vis-manipulation{height:34px;border-top:1px solid #d6d9d8;background:rgba(245,245,245,0.7)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled{right:15px}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-fullscreen-button{bottom:90px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button.tmap-button-enabled.tmap-halfscreen-button{bottom:130px;background-image:url(<<tmap \"datauri\" \"$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png\" \"\">>)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover{box-shadow:0 0 3px 3px rgba(75,75,75,0.3)}.tmap-widget div.vis-network .vis-navigation .vis-button:hover:before{background:beige;display:block;color:black;padding:3px;position:relative;border:1px solid lightgray;width:80px;left:-100px;top:-50px;z-index:1000;text-align:center}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-up:before{left:30px;content:\"Scroll up\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-down:before{left:30px;content:\"Scroll down\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-right:before{left:30px;content:\"Scroll right\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-left:before{left:30px;content:\"Scroll left\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomOut:before{content:\"Zoom out\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomIn:before{content:\"Zoom in\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.vis-zoomExtends:before{content:\"Fit whole graph\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-fullscreen-button:before{content:\"Toggle Fullscreen\"}.tmap-widget div.vis-network .vis-navigation .vis-button:hover.tmap-halfscreen-button:before{content:\"Toggle Halfscreen\"}.tc-dropzone>.tc-story-river .tmap-widget .vis-navigation .tmap-halfscreen-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:not(.tmap-fullscreen) .vis-navigation .vis-button{display:none}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.tmap-fullscreen-button{display:block}.tc-dropzone>.tc-story-river .tmap-widget:hover .vis-navigation .vis-button.vis-zoomExtends{display:block}body.tmap-has-fullscreen-widget{overflow:hidden}body.tmap-has-fullscreen-widget .tmap-widget.tmap-fullscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*.tmap-has-fullscreen-widget{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important}body.tmap-has-fullscreen-widget .tc-dropzone>*:not(.tmap-has-fullscreen-widget){display:none}body.tmap-has-halfscreen-widget .tmap-widget.tmap-halfscreen{background:white !important;height:100% !important;width:100% !important;position:fixed !important;top:0 !important;right:0 !important;bottom:0 !important;left:0 !important;z-index:999 !important;border:none !important;margin:0 !important;position:absolute !important;border-left:1px solid lightgray !important}.tc-modal-footer .tmap-hidden-close-button{display:none}.tmap-modal-content{position:relative;padding:1em 0;padding-top:0}.tmap-modal-content table tr td{vertical-align:top}.tmap-modal-content :not(pre)>code{padding:1px;font-size:0.9em;position:relative;top:-1px}.tmap-modal-content :not(pre)>code{color:#666}.tmap-modal-content .tc-tab-set .tc-tab-content{margin-top:0.5em}.tmap-modal-content .tc-image-button{font-size:14px}.tmap-modal-content fieldset{margin:0px}.tmap-modal-content fieldset legend{font-weight:bold}.tc-modal-body .tmap-modal-editor>p{margin:0px}.tc-modal-body .tmap-modal-editor .tmap-template-select select{width:50%}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame{margin:auto;width:auto}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-controls{display:none}.tc-modal-body .tmap-modal-editor .tc-tiddler-frame .tc-tiddler-title{display:none}.tc-modal-body table{margin:6px 0;border:none;width:100%}.tc-modal-body table td,.tc-modal-body table th{border:1px solid lightgray}.tc-modal-body table.tmap-key-value-table th{width:30%;background-color:#F0F0F0}.tc-modal-body table.tmap-config-table.tmap-large-input tr td:last-child{width:20%}.tc-modal-body table.tmap-config-table.tmap-small-input tr td:last-child{width:60%}.tc-modal-body table.tmap-config-table tr td{border:none;vertical-align:top;padding:5px}.tc-modal-body table.tmap-config-table tr td:first-child{width:15%}.tc-modal-body table.tmap-config-table tr td:last-child{width:40%}.tc-modal-body table.tmap-config-table tr td input:not([type=radio]),.tc-modal-body table.tmap-config-table tr td textarea,.tc-modal-body table.tmap-config-table tr td select{width:100%;word-wrap:normal}.tc-modal-body table.tmap-config-table tr td textarea{height:100%}.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch input,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch textarea,.tc-modal-body table.tmap-config-table tr td .tmap-no-stretch select{width:auto}.tc-modal-body table.tmap-config-table tr td div.tmap-button-wrapper{text-align:center}.tc-modal-body table.tmap-config-table tr td .tmap-note{margin-top:0.5em}.tc-modal-body table.tmap-config-table tr td .tmap-description{font-style:italic}#tmap-element-type-manager>div:first-child{height:50vh;float:left;width:21%;background:linear-gradient(90deg, #f5f5f5 0%, #fff 50%)}#tmap-element-type-manager>div:first-child .tmap-searchbar{padding:1em 0 0 0}#tmap-element-type-manager>div:first-child .tmap-searchbar input{width:calc(100% - 36px)}#tmap-element-type-manager>div:first-child .tmap-searchbar button{width:30px;float:right}#tmap-element-type-manager>div:first-child ul{height:calc(100% - 65px);overflow:auto;margin-top:1em;padding:0}#tmap-element-type-manager>div:first-child ul.no-bullets li{list-style:none}#tmap-element-type-manager>div:first-child ul li{white-space:nowrap}#tmap-element-type-manager>div:first-child ul li .tmap-ranking{width:30px;display:inline-block}#tmap-element-type-manager>div:last-child{height:100%;width:calc(79% - 15px);float:right}#tmap-element-type-manager>div:last-child .tc-tab-set .tc-tab-content{overflow:auto;height:50vh}.tmap-manage-node-types .tmap-edge-type-specific{display:none !important}.tmap-manage-edge-types .tmap-node-type-specific{display:none !important}.tmap-modal-fullscreen-editor .tc-tab-content p{margin:1em 0}.tmap-has-pending-template{background-color:#C1EDC4}#tmap-search-table td{border:none;padding-left:0px}#tmap-search-table td:first-child{width:30px}#tmap-search-table b{display:inline-block;width:40px;text-align:right}#tmap-search-table ul{padding-left:20px;margin:1em 0 0 0}#tmap-search-table ul li{list-style:inherit}#tmap-search-table ul button{text-align:left}button.tmap-go-back{margin-bottom:1em;font-weight:bold}.tmap-badges>span,.tmap-badge{background:gray;font-size:11px;color:white;padding:3px 4px;display:inline-block;font-weight:bold;border-radius:2px;line-height:1em;cursor:help}.tmap-badges>span.tmap-red-flag,.tmap-badge.tmap-red-flag{background:red}.tmap-popup{display:none;position:absolute;opacity:0;transition:opacity 0.3s ease}.tmap-popup.tmap-popup-active{opacity:1}.tmap-tooltip{box-shadow:3px 3px 10px rgba(0,0,0,0.2);min-width:100px;min-height:50px;max-width:<<tmap option config.sys.popups.width>>;max-height:<<tmap option config.sys.popups.height>>;padding:5px;resize:both;overflow:auto;cursor:auto;font-family:verdana;font-size:14px;background-color:#f5f4ed;border:1px solid #808074;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.tmap-tooltip[style*=\"height\"]{max-height:none !important}.tmap-tooltip[style*=\"width\"]{max-width:none !important}.tmap-quick-connect{font-size:0.7em}.tmap-quick-connect p{padding-left:0;padding-right:0}.tmap-quick-connect .tc-drop-down{padding:5px;width:250px;white-space:normal;line-height:1em;position:absolute;z-index:1000;right:50px;background:linear-gradient(45deg, #f5f5f5 0%, #fff 50%, #f5f5f5 100%)}.tmap-quick-connect .tc-drop-down:first-child{padding-top:0;margin-top:0}.tmap-quick-connect .tc-drop-down .title{margin:1.5em 0 0.5em 0;font-weight:bold;color:gray}.tmap-quick-connect .tc-drop-down select{width:80px;word-wrap:initial}.tmap-quick-connect .tc-drop-down table{width:100%;border:none;margin:0.5em 0}.tmap-quick-connect .tc-drop-down table td,.tmap-quick-connect .tc-drop-down table th{padding:3px 3px 3px 0;vertical-align:middle;font-weight:normal;border:none}.tmap-quick-connect .tc-drop-down table td table,.tmap-quick-connect .tc-drop-down table th table{margin:0}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-search-bar,.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{background:#F1F1F1;margin-top:0;border-bottom:1px solid #D5D5D5;border-top:1px solid #D5D5D5}.tmap-quick-connect .tc-drop-down table.tmap-quick-connect-search-bar td,.tmap-quick-connect .tc-drop-down th{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-quick-connect-existing-bar{padding:5px}.tmap-quick-connect .tc-drop-down .tmap-connection-table th,.tmap-quick-connect .tc-drop-down .tmap-connection-table td{text-align:left;padding:1px 1px 1px 0}.tmap-quick-connect .tc-drop-down .tmap-connection-table button{width:20px;padding:0px}.tmap-quick-connect .tc-drop-down .tmap-scroll-table{height:120px;overflow:auto;display:block}.tmap-quick-connect .tc-drop-down hr{border:0;height:0;border-top:1px solid rgba(0,0,0,0.1);border-bottom:1px solid rgba(255,255,255,0.3)}.tmap-quick-connect .tc-drop-down a{display:inline;padding:0;color:#5778d8;background:transparent}.tmap-quick-connect .tc-drop-down a:hover{background:transparent;color:#5778d8;text-decoration:underline}.tmap-quick-connect .tc-drop-down button{display:inline-block;padding:0px 3px;text-align:center;color:#333333;line-height:1.0}.tmap-quick-connect .tc-drop-down button:hover{color:#ffffff}.tmap-quick-connect .tc-drop-down button svg{fill:inherit}.tmap-quick-connect .tc-drop-down button svg:hover{fill:#ffffff}\n",
            "title": "$:/plugins/felixhayashi/tiddlymap/layout",
            "type": "text/vnd.tiddlywiki",
            "tags": [
                "$:/tags/Stylesheet"
            ]
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();/* @preserve TW-Guard */ /* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}var AbstractEdgeTypeSubscriber=function(){function e(r){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},i=t.priority,n=i===undefined?0:i,a=t.skipOthers,s=a===undefined?true:a,u=t.ignore,l=u===undefined?false:u;_classCallCheck(this,e);this.allEdgeTypes=r;this.priority=n;this.skipOthers=s;this.ignore=l}_createClass(e,[{key:\"setTracker\",value:function e(r){this.tracker=r}},{key:\"loadEdges\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"loadEdges\")}},{key:\"canHandle\",value:function e(r){throw new _exception.MissingOverrideError(this,\"canHandle\")}},{key:\"insertEdge\",value:function e(r,t,i){}},{key:\"deleteEdge\",value:function e(r,t,i){}}]);return e}();exports.default=AbstractEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var i=r[t];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(r,t,i){if(t)e(r.prototype,t);if(i)e(r,i);return r}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractMagicEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e,t){_classCallCheck(this,r);var i=_possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,t));i.edgeTypesByFieldName=_utils2.default.makeHashMap();for(var a in e){var n=e[a];if(i.canHandle(n)){i.edgeTypesByFieldName[n.name]=n}}return i}_createClass(r,[{key:\"getReferencesFromField\",value:function e(r,t,i){throw new _exception.MissingOverrideError(this,\"getReferencesFromField\")}},{key:\"getReferences\",value:function e(r,t,i){var a=_utils2.default.makeHashMap();var n=r.fields;for(var s in n){var u=this.edgeTypesByFieldName[s];if(!u||i&&!i[u.id])continue;var o=this.getReferencesFromField(r,s,t);if(o&&o.length){a[u.id]=o}}return a}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.default=AbstractMagicEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractMagicEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var AbstractRefEdgeTypeSubscriber=function(e){_inherits(t,e);function t(){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).apply(this,arguments))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=this.getReferences(t,r,i);if(!a||!_utils2.default.hasElements(a))return;var s=t.fields[\"tmap.id\"];var n=$tm.tracker.getIdsByTiddlers();var u=this.allEdgeTypes;var l=_utils2.default.getTiddlerRef(t);var o=_utils2.default.makeHashMap();for(var f in a){var c=a[f];if(!c){continue}var p=u[f];for(var d=c.length;d--;){var _=c[d];if(!_||!$tw.wiki.tiddlerExists(_)||_utils2.default.isSystemOrDraft(_)||r&&!r[_]){continue}var b=p.id+$tw.utils.hashString(l+_);o[b]=new _Edge2.default(s,n[_],p.id,b)}}return o}},{key:\"getReferences\",value:function e(t,r,i){throw new _exception.MissingOverrideError(this,\"getReferences\")}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.default=AbstractRefEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/AbstractRefEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var s=r[t];s.enumerable=s.enumerable||false;s.configurable=true;if(\"value\"in s)s.writable=true;Object.defineProperty(e,s.key,s)}}return function(r,t,s){if(t)e(r.prototype,t);if(s)e(r,s);return r}}();function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeTypeSubscriberRegistry=function(){function e(r,t,s){_classCallCheck(this,e);this.subscriberClasses=r;this.tracker=s;this.updateIndex(t)}_createClass(e,[{key:\"getAllForType\",value:function e(r){var t=this.allSubscribers;var s=[];for(var i=0,a=t.length;i<a;i++){if(t[i].canHandle(r)){s.push(t[i]);if(t[i].skipOthers){break}}}return s}},{key:\"getAll\",value:function e(){return this.allSubscribers}},{key:\"updateIndex\",value:function e(r){var t=[];var s=this.subscriberClasses;for(var i in s){var a=new s[i](r);a.setTracker(this.tracker);if(a.ignore===true){continue}t.push(a)}t.sort(function(e,r){return r.priority-e.priority});this.allSubscribers=t}}]);return e}();exports.default=EdgeTypeSubscriberRegistry;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/EdgeTypeSubscriberRegistry.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TmapEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _AbstractEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractEdgeTypeSubscriber\");var _AbstractEdgeTypeSubscriber2=_interopRequireDefault(_AbstractEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/tmap\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TmapEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:0},r)))}_createClass(t,[{key:\"loadEdges\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\");if(!a){return}var n=this.tracker.getTiddlersByIds();var u=t.fields[\"tmap.id\"];var s=_utils2.default.makeHashMap();for(var l in a){var o=a[l];var d=n[o.to];if(d&&(!r||r[d])&&(!i||i[o.type])){s[l]=new _Edge2.default(u,o.to,o.type,l)}}return s}},{key:\"insertEdge\",value:function e(t,r,i){var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});r.id=r.id||_utils2.default.genUUID();a[r.id]={to:r.to,type:i.id};_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"deleteEdge\",value:function e(t,r,i){if(!r.id)return;var a=_utils2.default.parseFieldData(t,\"tmap.edges\",{});delete a[r.id];_utils2.default.writeFieldData(t,\"tmap.edges\",a,$tm.config.sys.jsonIndentation);return r}},{key:\"canHandle\",value:function e(t){return true}}]);return t}(_AbstractEdgeTypeSubscriber2.default);exports.TmapEdgeTypeSubscriber=TmapEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/TmapEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FieldEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/field\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FieldEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-field\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return[t.fields[r]]}},{key:\"insertEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,n);return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=this.tracker.getTiddlerById(r.to);if(n==null){return}_utils2.default.setField(t,i.name,undefined);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FieldEdgeTypeSubscriber=FieldEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FieldEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.FilterEdgeTypeSubstriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _widget2=_interopRequireDefault(_widget);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/filter\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var FilterEdgeTypeSubstriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-filter\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){var n=t.fields[r];var a=new _widget2.default.widget({});a.setVariable(\"currentTiddler\",t.fields.title);var u=new _widget2.default.widget({},{parentWidget:a});var s=_utils2.default.getMatches(n,i,u);return s}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var a=t.fields[n]||\"\";var u=this.tracker.getTiddlerById(r.to);var s=$tw.utils.stringifyList([u]);if(a.length>0){s=\" \"+s}_utils2.default.setField(t,n,a+s);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.FilterEdgeTypeSubstriber=FilterEdgeTypeSubstriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/FilterEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.ListEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _AbstractMagicEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractMagicEdgeTypeSubscriber\");var _AbstractMagicEdgeTypeSubscriber2=_interopRequireDefault(_AbstractMagicEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/list\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var ListEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:10},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.namespace===\"tw-list\"}},{key:\"getReferencesFromField\",value:function e(t,r,i){return $tw.utils.parseStringArray(t.fields[r])}},{key:\"insertEdge\",value:function e(t,r,i){if(!r.to){return}var n=i.name;var s=$tw.utils.parseStringArray(t.fields[n]);s=(s||[]).slice();var a=this.tracker.getTiddlerById(r.to);s.push(a);_utils2.default.setField(t,n,$tw.utils.stringifyList(s));return r}},{key:\"deleteEdge\",value:function e(t,r,i){var n=$tw.utils.parseStringArray(t.fields[i.name]);n=(n||[]).slice();var s=this.tracker.getTiddlerById(r.to);var a=n.indexOf(s);if(a>-1){n.splice(a,1)}var u=void 0;if(n.length>0){u=$tw.utils.stringifyList(n)}_utils2.default.setField(t,i.name,u);return r}}]);return t}(_AbstractMagicEdgeTypeSubscriber2.default);exports.ListEdgeTypeSubscriber=ListEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/magicEdgeTypeSubscriber/ListEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.LinkEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/link\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var LinkEdgeTypeSubscriber=function(e){_inherits(t,e);function t(e){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,_extends({priority:20},r)))}_createClass(t,[{key:\"canHandle\",value:function e(t){return t.id===\"tw-body:link\"}},{key:\"getReferences\",value:function e(t,r,n){if(n&&!n[\"tw-body:link\"]){return}var i=$tw.wiki.getTiddlerLinks(t.fields.title);if(!i||!i.length){return}return{\"tw-body:link\":i}}}]);return t}(_AbstractRefEdgeTypeSubscriber2.default);exports.LinkEdgeTypeSubscriber=LinkEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/LinkEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.TranscludeEdgeTypeSubscriber=undefined;var _extends=Object.assign||function(e){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var n in t){if(Object.prototype.hasOwnProperty.call(t,n)){e[n]=t[n]}}}return e};var _createClass=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(r,t,n){if(t)e(r.prototype,t);if(n)e(r,n);return r}}();var _AbstractRefEdgeTypeSubscriber=require(\"$:/plugins/felixhayashi/tiddlymap/js/AbstractRefEdgeTypeSubscriber\");var _AbstractRefEdgeTypeSubscriber2=_interopRequireDefault(_AbstractRefEdgeTypeSubscriber);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,r){if(!(e instanceof r)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,r){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return r&&(typeof r===\"object\"||typeof r===\"function\")?r:e}function _inherits(e,r){if(typeof r!==\"function\"&&r!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof r)}e.prototype=Object.create(r&&r.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(r)Object.setPrototypeOf?Object.setPrototypeOf(e,r):e.__proto__=r}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/modules/edge-type-handler/body/transclude\ntype: application/javascript\nmodule-type: tmap.edgetypehandler\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TranscludeEdgeTypeSubscriber=function(e){_inherits(r,e);function r(e){var t=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,r);return _possibleConstructorReturn(this,(r.__proto__||Object.getPrototypeOf(r)).call(this,e,_extends({priority:20,ignore:typeof $tw.wiki.getTiddlerTranscludes!==\"function\"},t)))}_createClass(r,[{key:\"canHandle\",value:function e(r){return r.id===\"tw-body:transclude\"}},{key:\"getReferences\",value:function e(r,t,n){if(n&&!n[\"tw-body:transclude\"]){return}var i=$tw.wiki.getTiddlerTranscludes(r.fields.title);if(!i||!i.length){return}return{\"tw-body:transclude\":i}}}]);return r}(_AbstractRefEdgeTypeSubscriber2.default);exports.TranscludeEdgeTypeSubscriber=TranscludeEdgeTypeSubscriber;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/edgeTypeSubscriber/refEdgeTypeSubscriber/TranscludeEdgeTypeSubscriber.js.map\n",
            "type": "application/javascript",
            "module-type": "tmap.edgetypehandler"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Edge": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Edge",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Edge\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var Edge=function e(t,i,s,l){_classCallCheck(this,e);this.from=t;this.to=i;this.type=s;this.id=l||_utils2.default.genUUID()};exports.default=Edge;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/Edge.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/EdgeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/EdgeType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/EdgeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var n=t.getIdParts(e),o=n.marker,a=n.namespace,i=n.name;e=t.getId(o,a,i);var l=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,env.path.edgeTypes,t.fieldMeta,r));l.id=e;l.marker=o;l.name=i;l.namespace=a;var u=(l.style||{}).arrows;if(u){l.invertedArrow=isArrowEnabled(u,\"from\");l.toArrow=isArrowEnabled(u,\"to\")||isArrowEnabled(u,\"middle\");l.biArrow=l.invertedArrow===l.toArrow;if(l.biArrow){l.toArrow=true;l.invertedArrow=true}}else{l.toArrow=true}Object.freeze(l);return l}_createClass(t,[{key:\"getLabel\",value:function e(){return this.label||this.name}}],[{key:\"getIdParts\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";t=_utils2.default.getWithoutPrefix(t,env.path.edgeTypes+\"/\");var r=t.match(edgeTypeRegex)||[];return{marker:r[1]||\"\",namespace:r[3]&&r[2]||\"\",name:r[3]||r[2]||\"\"}}},{key:\"getId\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];return n?t+(r&&r+\":\")+n:\"tmap:unknown\"}}]);return t}(_MapElementType3.default);EdgeType.getInstance=function(e){return e instanceof EdgeType?e:new EdgeType(e)};EdgeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{label:{},\"show-label\":{}});var isArrowEnabled=function e(t,r){var n=t[r];if(n==null&&r===\"to\"){return true}return(typeof n===\"undefined\"?\"undefined\":_typeof(n))===\"object\"?n.enabled!==false:n===true};var edgeTypeRegex=new RegExp(\"^(_?)([^:_][^:]*):?([^:]*)\");exports.default=EdgeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/EdgeType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/MapElementType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/MapElementType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(t){return typeof t}:function(t){return t&&typeof Symbol===\"function\"&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t};var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var l=e[i];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(t,l.key,l)}}return function(e,i,l){if(i)t(e.prototype,i);if(l)t(e,l);return e}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/MapElementType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(t){return t&&t.__esModule?t:{default:t}}function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}var MapElementType=function(){function t(e,i,l,s){_classCallCheck(this,t);this.id=e;this.root=i;this._fieldMeta=l;this.fullPath=this.root+\"/\"+this.id;this.isShipped=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath);this._load(s||this.fullPath)}_createClass(t,[{key:\"_load\",value:function t(e){if(!e){return}if(typeof e===\"string\"){var i=_utils2.default.startsWith(e,this.root);var l=i?e:this.root+\"/\"+e;this._loadFromTiddler(l)}else if(e instanceof $tw.Tiddler){this._loadFromTiddler(e)}else if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){for(var s in this._fieldMeta){this[s]=e[s]}}}},{key:\"_loadFromTiddler\",value:function t(e){var i=_utils2.default.getTiddler(e);if(!i){return}var l=$tw.wiki.getSubTiddler($tm.path.pluginRoot,this.fullPath)||{};var s=$tw.utils.extend({},l.fields,i.fields);for(var r in this._fieldMeta){var a=this._fieldMeta[r].parse;var f=s[r];this[r]=a?a.call(this,f):f}}},{key:\"exists\",value:function t(){return _utils2.default.tiddlerExists(this.fullPath)}},{key:\"setStyle\",value:function t(e,i){if(typeof e===\"string\"){e=_utils2.default.parseJSON(e)}if((typeof e===\"undefined\"?\"undefined\":_typeof(e))===\"object\"){if(i){_utils2.default.merge(this.style,e)}else{this.style=e}}}},{key:\"save\",value:function t(e,i){if(!e){e=this.fullPath}else if(typeof e!==\"string\"){return}var l={title:e,text:\"\"};if(!_utils2.default.startsWith(e,this.root)){l.id=this.id}for(var s in this._fieldMeta){var r=this._fieldMeta[s].stringify;l[s]=r?r.call(this,this[s]):this[s]}if(!this.exists()){Object.assign(l,$tw.wiki.getCreationFields())}if(i!==true){Object.assign(l,$tw.wiki.getModificationFields())}$tw.wiki.addTiddler(new $tw.Tiddler(l))}}]);return t}();MapElementType.fieldMeta={description:{},style:{parse:_utils2.default.parseJSON,stringify:JSON.stringify},modified:{},created:{}};exports.default=MapElementType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/MapElementType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/NodeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/NodeType",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r){if(Object.prototype.hasOwnProperty.call(r,n)){e[n]=r[n]}}}return e};var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(e,n.key,n)}}return function(t,r,n){if(r)e(t.prototype,r);if(n)e(t,n);return t}}();var _MapElementType2=require(\"$:/plugins/felixhayashi/tiddlymap/js/MapElementType\");var _MapElementType3=_interopRequireDefault(_MapElementType2);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/NodeType\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var NodeType=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);e=typeof e===\"string\"?_utils2.default.getWithoutPrefix(e,$tm.path.nodeTypes+\"/\"):\"tmap:unknown\";var n=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,$tm.path.nodeTypes,t.fieldMeta,r));Object.freeze(n);return n}_createClass(t,[{key:\"getInheritors\",value:function e(t){return this.scope?_utils2.default.getMatches(this.scope,t||$tw.wiki.allTitles()):[]}}]);return t}(_MapElementType3.default);NodeType.getInstance=function(e){return e instanceof NodeType?e:new NodeType(e)};NodeType.fieldMeta=_extends({},_MapElementType3.default.fieldMeta,{view:{},priority:{parse:function e(t){return isNaN(t)?1:parseInt(t)},stringify:function e(t){return _utils2.default.isInteger(t)?t.toString():\"1\"}},scope:{stringify:_utils2.default.getWithoutNewLines},\"fa-icon\":{},\"tw-icon\":{}});exports.default=NodeType;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/NodeType.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var r in i){if(Object.prototype.hasOwnProperty.call(i,r)){e[r]=i[r]}}}return e};var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var ViewAbstraction=function(){function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);if(t instanceof e){return t}this._registerPaths(t);if(i.isCreate){if(!this.configTRef){var r=_utils2.default.getRandomLabel({plural:true});this.configTRef=$tw.wiki.generateNewTitle($tm.path.views+\"/\"+r)}this._createView(i)}else if(!e.exists(this.getRoot())){throw new ResourceNotFoundException(\"ViewAbstraction\",t)}}_createClass(e,[{key:\"isLocked\",value:function e(){return $tw.wiki.isShadowTiddler(this.configTRef)}},{key:\"update\",value:function e(t){var i=t.changedTiddlers;if(t[env.path.edgeTypes]||_utils2.default.hasKeyWithPrefix(i,this.getRoot())){this._clearCaches();return true}return false}},{key:\"addPlaceholder\",value:function e(t){_utils2.default.cp(_utils2.default.getTiddlerRef(t),this.snapshotTRef,true)}},{key:\"exists\",value:function t(){return e.exists(this)}},{key:\"getRoot\",value:function e(){return this.configTRef}},{key:\"getCreationDate\",value:function e(t){var i=$tw.wiki.getTiddler(this.configTRef).fields[\"created\"];if(t){return i instanceof Date?$tw.utils.formatDateString(i,\"DDth MMM YYYY\"):\"\"}return i}},{key:\"getLabel\",value:function e(){return _utils2.default.getBasename(this.configTRef)}},{key:\"destroy\",value:function e(){_utils2.default.deleteTiddlers(_utils2.default.getMatches(\"[prefix[\"+this.configTRef+\"]]\"))}},{key:\"getOccurrences\",value:function e(){var t=\"[regexp:text[<\\\\$(tiddlymap|tmap).*?view=.\"+this.getLabel()+\"..*?>]]\";return _utils2.default.getMatches(t)}},{key:\"rename\",value:function t(i){if(typeof i!==\"string\"){return false}if(_utils2.default.inArray(\"/\",i)){$tm.notify('A view name must not contain any \"/\"');return false}var r=this.getLabel();var a=env.path.views+\"/\"+i;var n=this.getRoot();_utils2.default.mv(n,a,true);if($tm.config.sys.defaultView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"defaultView\",i)}if($tm.config.sys.liveTab.fallbackView===r){_utils2.default.setEntry($tm.ref.sysUserConf,\"liveTab.fallbackView\",i)}$tw.wiki.each(function(t,a){if(t.fields[\"tmap.open-view\"]===r){_utils2.default.setField(a,\"tmap.open-view\",i);return}if(e.exists(a)){var n=new e(a);var l=n.getNodeData();for(var s in l){if(l[s][\"open-view\"]===r){l[s][\"open-view\"]=i}}n.saveNodeData(l)}});this._clearCaches();this._registerPaths(i)}},{key:\"isEnabled\",value:function e(t){return _utils2.default.isTrue(this.getConfig(t),false)}},{key:\"getConfig\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.configTRef,\"tmap-config\",function(){var e=_utils2.default.getTiddler(i.configTRef).fields;return _utils2.default.getPropertiesByPrefix(e,\"config.\")});var a=t&&_utils2.default.startsWith(t,\"config.\")?t:\"config.\"+t;return t?r[a]:r}},{key:\"setConfig\",value:function e(){for(var t=arguments.length,i=Array(t),r=0;r<t;r++){i[r]=arguments[r]}if(i[0]==null){return}if(i.length===1&&_typeof(i[0])===\"object\"){for(var a in i[0]){this.setConfig(a,i[0][a])}}else if(i.length===2&&typeof i[0]===\"string\"){var n=_utils2.default.getWithoutPrefix(i[0],\"config.\");var l=i[1];if(l===undefined){return}var s=this.getConfig();if(l===null){$tm.logger(\"debug\",\"Removing config\",n);delete s[\"config.\"+n]}else{if(n===\"edge_type_namespace\"){var o=l.match(/[^:]+/);l=o?o[0]:\"\"}}$tm.logger(\"log\",\"Setting config\",n,l);s[\"config.\"+n]=l;$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),s))}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(i)))}}},{key:\"isNodeIncludedById\",value:function t(i){var r=$tw.utils.escapeRegExp(e._getNodeIdFilterPart(i));return this.getNodeFilter(\"raw\").match(r)}},{key:\"setNodeFilter\",value:function e(t,i){t=t.replace(/[\\n\\r]/g,\" \");if(this.getNodeFilter(\"raw\")===t){return}_utils2.default.setField(this.nodeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Node filter set to\",t)}},{key:\"setEdgeTypeFilter\",value:function e(t){t=t.replace(/[\\n\\r]/g,\" \");if(this.getEdgeTypeFilter(\"raw\")===t){return}_utils2.default.setField(this.edgeTypeFilterTRef,\"filter\",t);$tm.logger(\"debug\",\"Edge filter set to\",t)}},{key:\"addNode\",value:function t(i){if(!this.isNodeIncludedById(i)){if(_utils2.default.isTrue($tm.config.sys.alwaysAddNodeIdToViewFilter)||!_utils2.default.isMatch(i.tRef,this.getNodeFilter(\"compiled\"))){var r=e._getNodeIdFilterPart(i);var a=\" \";this.setNodeFilter(this.getNodeFilter(\"raw\")+a+r)}this.saveNodePosition(i)}}},{key:\"removeNode\",value:function t(i){if(!this.isNodeIncludedById(i)){return false}var r=e._getNodeIdFilterPart(i);var a=this.getNodeFilter(\"raw\").replace(r,\"\");this.setNodeFilter(a);return true}},{key:\"getEdgeTypeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.edgeTypeFilterTRef,\"tmap-edgeTypeFilter\",function(){var e=$tm.indeces.allETy;var t=Object.keys(e);var r=$tw.wiki.getTiddler(i.edgeTypeFilterTRef);var a={};a.raw=r&&r.fields.filter||\"\";a.pretty=_utils2.default.getPrettyFilter(a.raw);a.matches=_utils2.default.getEdgeTypeMatches(a.raw,e);a.whitelist=_utils2.default.getLookupTable(a.matches);return a});return t?r[t]:r}},{key:\"isEdgeTypeVisible\",value:function e(t){return _utils2.default.isEdgeTypeMatch(_EdgeType2.default.getInstance(t).id,this.getEdgeTypeFilter(\"raw\"))}},{key:\"getNodeFilter\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.nodeFilterTRef,\"tmap-nodeFilter\",function(){var e=_utils2.default.makeHashMap();var t=$tw.wiki.getTiddler(i.nodeFilterTRef);e.raw=t&&t.fields.filter||\"\";e.pretty=_utils2.default.getPrettyFilter(e.raw);e.compiled=$tw.wiki.compileFilter(e.raw);return e});return t?r[t]:r}},{key:\"getNodeData\",value:function e(t){var i=this;var r=$tw.wiki.getCacheForTiddler(this.mapTRef,\"tmap-map\",function(){return _utils2.default.parseFieldData(i.mapTRef,\"text\",{})});return t?r[t]:r}},{key:\"equals\",value:function t(i){return i===this||e.exists(i)&&new e(i).getRoot()===this.getRoot()}},{key:\"saveNodeData\",value:function e(){var t=this.getNodeData();for(var i=arguments.length,r=Array(i),a=0;a<i;a++){r[a]=arguments[a]}if(r.length===2){if(_typeof(r[1])===\"object\"){if(r[1]===null){delete t[r[0]]}else{t[r[0]]=Object.assign(t[r[0]]||{},r[1])}}}else if(r.length===1&&_typeof(r[0])===\"object\"){$tm.logger(\"log\",\"Storing data in\",this.mapTRef);Object.assign(t,r[0])}else{throw new(Function.prototype.bind.apply(_exception.InvalidArgumentException,[null].concat(r)))}_utils2.default.writeFieldData(this.mapTRef,\"text\",t,$tm.config.sys.jsonIndentation)}},{key:\"saveNodePosition\",value:function e(t){if(t.id&&t.x!=null&&t.y!=null){this.saveNodeData(t.id,{x:t.x,y:t.y})}}},{key:\"saveNodePositions\",value:function e(t){var i=this.getNodeData();for(var r in t){i[r]=i[r]||{};i[r].x=t[r].x;i[r].y=t[r].y}this.saveNodeData(i)}},{key:\"setCentralTopic\",value:function e(t){this.setConfig(\"central-topic\",t)}},{key:\"saveNodeStyle\",value:function e(t,i){var r=this.getNodeData(t)||{};var a={x:r.x,y:r.y};for(var n in r){delete r[n]}this.saveNodeData(t,_extends({},i,a))}},{key:\"_registerPaths\",value:function t(i,r){this.configTRef=e._getRootPath(i);this.mapTRef=this.configTRef+\"/map\";this.nodeFilterTRef=this.configTRef+\"/filter/nodes\";this.edgeTypeFilterTRef=this.configTRef+\"/filter/edges\";this.snapshotTRef=this.getRoot()+\"/snapshot\"}},{key:\"_clearCaches\",value:function e(){_utils2.default.getMatches(\"[prefix[\"+this.getRoot()+\"]]\").forEach(function(e){$tw.wiki.clearCache(e)})}},{key:\"_createView\",value:function t(){var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},r=i.isForce,a=i.protoView,n=i.isHidden;if(e.exists(this)){if(!r){return}this.destroy()}if(e.exists(a)){_utils2.default.cp(new e(a).getRoot(),this.configTRef,true)}var l={title:this.configTRef,id:_utils2.default.genUUID()};if(!n){l[$tm.field.viewMarker]=true}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(this.configTRef),l));this.setEdgeTypeFilter(env.filter.defaultEdgeTypeFilter)}}],[{key:\"_getNodeIdFilterPart\",value:function e(t){var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;return\"[field:tmap.id[\"+i+\"]]\"}},{key:\"_getRootPath\",value:function t(i){if(i instanceof e){return i.configTRef}if(i instanceof $tw.Tiddler){i=i.fields.title}if(typeof i===\"string\"){var r=_utils2.default.getWithoutPrefix(i,$tm.path.views+\"/\");if(r&&!_utils2.default.hasSubString(r,\"/\")){return $tm.path.views+\"/\"+r}}}},{key:\"exists\",value:function t(i){if(!i){return false}if(i instanceof e){i=i.configTRef}else{i=e._getRootPath(i)}return _utils2.default.tiddlerExists(i)}}]);return e}();exports.default=ViewAbstraction;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/graph/ViewAbstraction.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Popup": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Popup",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function Popup(e,t){t=t||{};this._parentDomNode=e;this._domNode=document.createElement(\"div\");this._domNode.style.display=\"none\";this._domNode.className=\"tmap-popup\";this._parentDomNode.appendChild(this._domNode);$tw.utils.addClass(this._domNode,t.className);this._isEnabled=true;this._isPreventShowOrHide=false;this._isHideOnClick=!!t.hideOnClick;this._timeoutShow=null;this._timeoutHide=null;this._isDisplayNoneAfterAnimation=true;var i=parseInt(t.leavingDelay);this._hideDelayLeavingPopup=_utils2.default.isInteger(i)?i:200;i=parseInt(t.hideDelay);this._hideDelay=_utils2.default.isInteger(i)?i:200;i=parseInt(t.showDelay);this._showDelay=_utils2.default.isInteger(i)?i:200;_utils2.default.bindTo(this,[\"_show\",\"_hide\",\"_handleEnter\",\"_handleLeave\",\"_handleAnimationEnd\",\"_handleClick\"]);this._listeners={mouseenter:this._handleEnter,mouseleave:this._handleLeave,click:[this._handleClick,true]};var s=this._handleAnimationEnd;this._listeners[$tw.utils.convertEventName(\"animationEnd\")]=s;this._listeners[$tw.utils.convertEventName(\"transitionEnd\")]=s;_utils2.default.setDomListeners(\"add\",this._domNode,this._listeners,false)}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Popup\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */Popup.prototype._handleEnter=function(e){this._isPreventShowOrHide=true};Popup.prototype._handleLeave=function(e){this._isPreventShowOrHide=false;this.hide(this._hideDelayLeavingPopup)};Popup.prototype._handleClick=function(e){if(this._isHideOnClick){this._hide(true)}};Popup.prototype._handleAnimationEnd=function(){if(this._isDisplayNoneAfterAnimation){this._domNode.style.display=\"none\"}};Popup.prototype._hide=function(e){if(!e&&this._isPreventShowOrHide)return;this._isDisplayNoneAfterAnimation=true;this._isPreventShowOrHide=false;$tw.utils.removeClass(this._domNode,\"tmap-popup-active\")};Popup.prototype._show=function(e,t){if(this._isPreventShowOrHide||$tm.mouse.ctrlKey||!this._isEnabled){return}this._domNode.style.display=\"none\";$tw.utils.removeClass(this._domNode,\"tmap-popup-active\");this._domNode.removeAttribute(\"style\");_utils2.default.removeDOMChildNodes(this._domNode);var i=this._domNode.appendChild(document.createElement(\"div\"));if(typeof t===\"function\"){t(e,i)}else{i.innerHTML=t}if(!i.childNodes.length)return;var s=this._parentDomNode.getBoundingClientRect();var o=$tm.mouse.clientX;var n=$tm.mouse.clientY;this._domNode.style.display=\"block\";var d=this._domNode.getBoundingClientRect();var l=s.right-(o+d.width);var h=o-d.width-s.left;var a=l>h;var u=s.bottom-(n+d.height);var r=n-d.height-s.top;var p=u>r;var _=a?-15:d.width+15;var m=p?-15:d.height+15;this._domNode.style.left=o-s.left-_+\"px\";this._domNode.style.top=n-s.top-m+\"px\";this._isDisplayNoneAfterAnimation=false;$tw.utils.addClass(this._domNode,\"tmap-popup-active\")};Popup.prototype.show=function(e,t,i){this._clearTimeouts();i=_utils2.default.isInteger(i)?i:this._showDelay;this._timeoutShow=setTimeout(this._show,i,e,t)};Popup.prototype.hide=function(e,t){this._clearTimeouts();e=_utils2.default.isInteger(e)?e:this._hideDelay;if(t||e===0){this._hide(t)}else{this._timeoutHide=setTimeout(this._hide,e,t)}};Popup.prototype.setEnabled=function(e){this._isEnabled=e};Popup.prototype.isShown=function(){return this._domNode.style.display===\"block\"};Popup.prototype._clearTimeouts=function(){clearTimeout(this._timeoutShow);clearTimeout(this._timeoutHide);this._timeoutShow=undefined;this._timeoutHide=undefined};exports.default=Popup;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/Popup.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function t(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||false;n.configurable=true;if(\"value\"in n)n.writable=true;Object.defineProperty(t,n.key,n)}}return function(e,i,n){if(i)t(e.prototype,i);if(n)t(e,n);return e}}();function _classCallCheck(t,e){if(!(t instanceof e)){throw new TypeError(\"Cannot call a class as a function\")}}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\ntype: application/SelectionRectangle\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var SelectionRectangle=function(){function t(e,i){_classCallCheck(this,t);this.x1=e;this.x2=e;this.y1=i;this.y2=i}_createClass(t,[{key:\"span\",value:function t(e,i){this.x2=e;this.y2=i}},{key:\"getWidth\",value:function t(){return this.x2-this.x1}},{key:\"getHeight\",value:function t(){return this.y2-this.y1}},{key:\"getRect\",value:function t(){return[this.x1,this.y1,this.getWidth(),this.getHeight()]}},{key:\"isPointWithin\",value:function t(e){var i=e.x,n=e.y;var a=this.x1,r=this.x2,s=this.y1,u=this.y2;var h=Math.min(a,r);var c=Math.max(a,r);var l=Math.min(s,u);var o=Math.max(s,u);return h<i&&i<c&&l<n&&n<o}}]);return t}();exports.default=SelectionRectangle;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/SelectionRectangle.js.map\n",
            "type": "application/SelectionRectangle",
            "module-type": "library"
        },
        "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js": {
            "title": "/home/felo/projects/Tiddlywiki/TiddlyWiki5/plugins/felixhayashi/tiddlymap/js/lib/TypeDefs.js",
            "text": "\"use strict\";\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/TypeDefs.js.map\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/config/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/config/vis",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/config/vis\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var visConfig={locale:\"en_EN\",clickToUse:false,autoResize:false,height:\"100%\",width:\"100%\",configure:{enabled:false},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:true,navigationButtons:true,multiselect:true,selectable:true,selectConnectedEdges:true,tooltipDelay:600,zoomView:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:false}},manipulation:{initiallyActive:true},nodes:{shape:\"box\",widthConstraint:{maximum:160},heightConstraint:{valign:\"center\"},shadow:{enabled:false},color:{border:\"#2B7CE9\",background:\"#97C2FC\"}},edges:{smooth:{enabled:true},color:{color:\"#848484\",inherit:false},arrows:{to:{enabled:true}}},layout:{hierarchical:{enabled:false,levelSeparation:200,nodeSpacing:170,treeSpacing:230,sortMethod:\"directed\",parentCentralization:true,edgeMinimization:true,blockShifting:true,direction:\"UD\"}},physics:{forceAtlas2Based:{gravitationalConstant:-300,springLength:0,springConstant:.2,centralGravity:.015,damping:.4},hierarchicalRepulsion:{nodeDistance:120,centralGravity:0,springLength:100,springConstant:.01,damping:.09},solver:\"forceAtlas2Based\",stabilization:{enabled:true,iterations:1e3,updateInterval:10,onlyDynamicEdges:false,fit:false}}};exports.default=visConfig;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/VisConfig.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/environment": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/environment",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _extends=Object.assign||function(e){for(var i=1;i<arguments.length;i++){var a=arguments[i];for(var l in a){if(Object.prototype.hasOwnProperty.call(a,l)){e[l]=a[l]}}}return e};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/environment\ntype: application/javascript\n module-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var path=exports.path={pluginRoot:\"$:/plugins/felixhayashi/tiddlymap\",edgeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes\",nodeTypes:\"$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes\",views:\"$:/plugins/felixhayashi/tiddlymap/graph/views\",options:\"$:/plugins/felixhayashi/tiddlymap/config\",dialogs:\"$:/plugins/felixhayashi/tiddlymap/dialog\",footers:\"$:/plugins/felixhayashi/tiddlymap/dialogFooter\",tempRoot:\"$:/temp/tmap\",tempStates:\"$:/temp/tmap/state\",tempPopups:\"$:/temp/tmap/state/popup\",localHolders:\"$:/temp/tmap/holders\"};var ref=exports.ref={defaultViewHolder:\"$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder\",graphBar:\"$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar\",sysUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\",visUserConf:\"$:/plugins/felixhayashi/tiddlymap/config/vis/user\",welcomeFlag:\"$:/plugins/felixhayashi/tiddlymap/flag/welcome\",focusButton:\"$:/plugins/felixhayashi/tiddlymap/misc/focusButton\",sysMeta:\"$:/plugins/felixhayashi/tiddlymap/misc/meta\",liveTab:\"$:/plugins/felixhayashi/tiddlymap/hook/liveTab\",mainEditor:\"$:/plugins/felixhayashi/tiddlymap/hook/editor\",sidebarBreakpoint:\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"};var misc=exports.misc={unknownEdgeLabel:\"tmap:undefined\",liveViewLabel:\"Live View\",defaultViewLabel:\"Default\",mainEditorId:\"main_editor\",arrows:{in:\"⇦\",out:\"➡\",bi:\"⇄\"}};var config=exports.config={sys:{field:{nodeLabel:\"caption\",nodeIcon:\"icon\",nodeInfo:\"description\",viewMarker:\"isview\"},liveTab:{fallbackView:misc.liveViewLabel},suppressedDialogs:{},edgeClickBehaviour:\"manager\",debug:\"false\",notifications:\"true\",popups:{enabled:\"true\",delay:\"600\",width:\"240px\",height:\"140px\"},jsonIndentation:\"1\",alwaysAddNodeIdToViewFilter:\"true\",editNodeOnCreate:\"false\",singleClickMode:\"false\",nodeFilterNeighbours:\"false\",editorMenuBar:{showNeighScopeButton:\"true\",showRasterMenuButton:\"true\",showScreenshotButton:\"true\"}}};var filter=exports.filter={nodeTypes:\"[prefix[\"+path.nodeTypes+\"]]\",edgeTypes:\"[prefix[\"+path.edgeTypes+\"]]\",views:\"[\"+config.sys.field.viewMarker+\"[true]]\",defaultEdgeTypeFilter:\"-[prefix[_]] -[[tw-body:link]] -[[tw-list:tags]] -[[tw-list:list]]\"};var allSelector=\"[all[tiddlers+shadows]!has[draft.of]]\";var s={allEdgeTypes:allSelector+\" +\"+filter.edgeTypes,allNodeTypes:allSelector+\" +\"+filter.nodeTypes,allViews:allSelector+\" +\"+filter.views,allPotentialNodes:\"[all[tiddlers]!is[system]!has[draft.of]]\"};var selector=exports.selector=_extends({},s,{allEdgeTypesById:s.allEdgeTypes+\" +[removeprefix[\"+path.edgeTypes+\"/]]\",allNodeTypesById:s.allNodeTypes+\" +[removeprefix[\"+path.nodeTypes+\"/]]\",allViewsByLabel:s.allViews+\" +[removeprefix[\"+path.views+\"/]]\"});\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/environment.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/exception": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/exception",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function r(r,t){for(var e=0;e<t.length;e++){var o=t[e];o.enumerable=o.enumerable||false;o.configurable=true;if(\"value\"in o)o.writable=true;Object.defineProperty(r,o.key,o)}}return function(t,e,o){if(e)r(t.prototype,e);if(o)r(t,o);return t}}();function _classCallCheck(r,t){if(!(r instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(r,t){if(!r){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:r}function _inherits(r,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}r.prototype=Object.create(t&&t.prototype,{constructor:{value:r,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(r,t):r.__proto__=t}\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/exception\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var TiddlyMapError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);var o=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r));o.payload=e;return o}_createClass(t,[{key:\"getPayload\",value:function r(){return this.payload}}]);return t}(Error);var EnvironmentError=exports.EnvironmentError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Critical parts of the underlying system changed: \"+r))}return t}(TiddlyMapError);var DependencyError=exports.DependencyError=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"TiddlyMap cannot run without: : \"+r))}return t}(TiddlyMapError);var MissingOverrideError=exports.MissingOverrideError=function(r){_inherits(t,r);function t(r,e){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,r.constructor.name+' does not override method \"'+e+'\"'))}return t}(TiddlyMapError);var ResourceNotFoundException=exports.ResourceNotFoundException=function(r){_inherits(t,r);function t(r){_classCallCheck(this,t);for(var e=arguments.length,o=Array(e>1?e-1:0),n=1;n<e;n++){o[n-1]=arguments[n]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Cannot resolve \"+r,o))}return t}(TiddlyMapError);var InvalidArgumentException=exports.InvalidArgumentException=function(r){_inherits(t,r);function t(){_classCallCheck(this,t);for(var r=arguments.length,e=Array(r),o=0;o<r;o++){e[o]=arguments[o]}return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,\"Invalid or missing argument provided\",e))}return t}(TiddlyMapError);\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/exceptions.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/URL": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/URL",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/URL\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */\n/**\n * <<<\n * Lightweight URL manipulation with JavaScript. This library is\n * independent of any other libraries and has pretty simple interface\n * and lightweight code-base. Some ideas of query string parsing\n * had been taken from Jan Wolter.\"\n *\n * @see http://unixpapa.com/js/querystring.html\n * @license MIT\n * @author Mykhailo Stadnyk <mikhus@gmail.com>\n * <<< https://github.com/Mikhus/jsurl\n *\n * @class\n * @param {string} url\n */function Url(t){this.paths=function(t){var e=\"\",r=0,o;if(t&&t.length&&t+\"\"!==t){if(this.isAbsolute()){e=\"/\"}for(o=t.length;r<o;r++){t[r]=encode(t[r])}this.path=e+t.join(\"/\")}t=(this.path.charAt(0)===\"/\"?this.path.slice(1):this.path).split(\"/\");for(r=0,o=t.length;r<o;r++){t[r]=decode(t[r])}return t};this.encode=encode;this.decode=decode;this.isAbsolute=function(){return this.protocol||this.path.charAt(0)===\"/\"};this.toString=function(){return(this.protocol&&this.protocol+\"://\")+(this.user&&encode(this.user)+(this.pass&&\":\"+encode(this.pass))+\"@\")+(this.host&&this.host)+(this.port&&\":\"+this.port)+(this.path&&this.path)+(this.query.toString()&&\"?\"+this.query)+(this.hash&&\"#\"+encode(this.hash))};parse(this,t)}var map={protocol:\"protocol\",host:\"hostname\",port:\"port\",path:\"pathname\",query:\"search\",hash:\"hash\"},defaultPorts={ftp:21,gopher:70,http:80,https:443,ws:80,wss:443},parse=function t(e,r){var o=document,s=o.createElement(\"a\"),r=r||o.location.href,i=r.match(/\\/\\/(.*?)(?::(.*?))?@/)||[],n;s.href=r;for(n in map){e[n]=s[map[n]]||\"\"}e.protocol=e.protocol.replace(/:$/,\"\");e.query=e.query.replace(/^\\?/,\"\");e.hash=decode(e.hash.replace(/^#/,\"\"));e.user=decode(i[1]||\"\");e.pass=decode(i[2]||\"\");e.port=defaultPorts[e.protocol]==e.port||e.port==0?\"\":e.port;if(!e.protocol&&!/^([a-z]+:)?\\/\\//.test(r)){var h=new Url(o.location.href.match(/(.*\\/)/)[0]),a=h.path.split(\"/\"),p=e.path.split(\"/\"),c=[\"protocol\",\"user\",\"pass\",\"host\",\"port\"],f=c.length;a.pop();for(n=0;n<f;n++){e[c[n]]=h[c[n]]}while(p[0]==\"..\"){a.pop();p.shift()}e.path=(r.charAt(0)!=\"/\"?a.join(\"/\"):\"\")+\"/\"+p.join(\"/\")}else{e.path=e.path.replace(/^\\/?/,\"/\")}e.paths((e.path.charAt(0)==\"/\"?e.path.slice(1):e.path).split(\"/\"));parseQs(e)},encode=function t(e){return encodeURIComponent(e).replace(/'/g,\"%27\")},decode=function t(e){e=e.replace(/\\+/g,\" \");e=e.replace(/%([ef][0-9a-f])%([89ab][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r,o){var s=parseInt(e,16)-224,i=parseInt(r,16)-128;if(s==0&&i<32){return t}var n=parseInt(o,16)-128,h=(s<<12)+(i<<6)+n;if(h>65535){return t}return String.fromCharCode(h)});e=e.replace(/%([cd][0-9a-f])%([89ab][0-9a-f])/gi,function(t,e,r){var o=parseInt(e,16)-192;if(o<2){return t}var s=parseInt(r,16)-128;return String.fromCharCode((o<<6)+s)});e=e.replace(/%([0-7][0-9a-f])/gi,function(t,e){return String.fromCharCode(parseInt(e,16))});return e},parseQs=function t(e){var r=e.query;e.query=new function(t){var e=/([^=&]+)(=([^&]*))?/g,r;while(r=e.exec(t)){var o=decodeURIComponent(r[1].replace(/\\+/g,\" \")),s=r[3]?decode(r[3]):\"\";if(this[o]!=null){if(!(this[o]instanceof Array)){this[o]=[this[o]]}this[o].push(s)}else{this[o]=s}}this.clear=function(){for(var t in this){if(!(this[t]instanceof Function)){delete this[t]}}};this.count=function(){var t=0,e;for(e in this){if(!(this[e]instanceof Function)){t++}}return t};this.isEmpty=function(){return this.count()===0};this.toString=function(){var t=\"\",e=encode,r,o;for(r in this){if(this[r]instanceof Function){continue}if(this[r]instanceof Array){var s=this[r].length;if(s){for(o=0;o<s;o++){t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r][o])}}else{t+=(t?\"&\":\"\")+e(r)+\"=\"}}else{t+=t?\"&\":\"\";t+=e(r)+\"=\"+e(this[r])}}return t}}(r)};exports.default=Url;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/url.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.bindTo=exports.getNearestRasterPosition=exports.mod=exports.removeDOMChildNodes=exports.setDomListeners=exports.merge=exports.getRandomLabel=exports.getFirstElementByClassName=exports.pickRandom=exports.hasKeyWithPrefix=exports.getWithoutPrefix=exports.getPropertiesByPrefix=exports.removeArrayElement=exports.isTrue=exports.replaceAll=exports.isInteger=exports.findAndRemoveClassNames=exports.getAncestorWithClass=exports.makeHashMap=exports.getWithoutNewLines=exports.joinAndWrap=exports.parseJSON=exports.hasSubString=exports.inArray=exports.getRandomInt=exports.isEqual=exports.identity=exports.base64=exports.startsWith=exports.getBasename=exports.escapeRegex=exports.hasElements=exports.ucFirst=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var ucFirst=exports.ucFirst=function e(t){return t&&t[0].toUpperCase()+t.slice(1)};var hasElements=exports.hasElements=function e(t){return Object.keys(t).length>0};var escapeRegex=exports.escapeRegex=function e(t){return t.replace(/[-$^?.+*[\\]\\\\(){}|]/g,\"\\\\$&\")};var getBasename=exports.getBasename=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"/\";return t.substring(t.lastIndexOf(r)+1)};var startsWith=exports.startsWith=function e(t,r){return t.substring(0,r.length)===r};var base64=exports.base64=typeof window===\"undefined\"?function(e){return new Buffer(e).toString(\"base64\")}:window.btoa.bind(window);var identity=exports.identity=function e(t){return(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"&&t!==null?JSON.stringify(Object.keys(t).sort().map(function(e){return[e,t[e]]})):null};var isEqual=exports.isEqual=function e(t,r){return identity(t)===identity(r)};var getRandomInt=exports.getRandomInt=function e(t,r){return Math.floor(Math.random()*(r-t)+t)};var inArray=exports.inArray=function e(t,r){return r.indexOf(t)!==-1};var hasSubString=exports.hasSubString=function e(t,r){return t.indexOf(r)!==-1};var parseJSON=exports.parseJSON=function e(t,r){try{return JSON.parse(t)}catch(e){return r}};var joinAndWrap=exports.joinAndWrap=function e(t,r,n){var o=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\" \";return r+t.join(n+o+r)+n};var getWithoutNewLines=exports.getWithoutNewLines=function e(t){return typeof t===\"string\"?t.replace(/[\\n\\r]/g,\" \"):t};var makeHashMap=exports.makeHashMap=function e(t){var r=Object.create(null);Object.defineProperty(r,\"hasOwnProperty\",{enumerable:false,configurable:false,writable:false,value:Object.prototype.hasOwnProperty.bind(r)});if(t){for(var n in t){if(t.hasOwnProperty(n)){r[n]=t[n]}}}return r};var getAncestorWithClass=exports.getAncestorWithClass=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"||typeof r!==\"string\"){return}while(t.parentNode&&t.parentNode!==document){t=t.parentNode;if(t.classList.contains(r)){return t}}};var findAndRemoveClassNames=exports.findAndRemoveClassNames=function e(t){for(var r=t.length;r--;){var n=document.getElementsByClassName(t[r]);for(var o=n.length;o--;){n[o].classList.remove(t[r])}}};var isInteger=exports.isInteger=Number.isInteger||function(e){return typeof e===\"number\"&&isFinite(e)&&Math.floor(e)===e};var replaceAll=exports.replaceAll=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";var n=arguments[2];for(var o=n.length;o--;){var s=n[o];var i=r;if(Array.isArray(s)){i=s[1];s=s[0]}t=t.replace(s,i)}return t};var isTrue=exports.isTrue=function e(t,r){if(t==null){return!!r}else if(typeof t===\"string\"){var n=parseInt(t);return isNaN(n)?t===\"true\":n!==0}else if(typeof t===\"boolean\"){return t}else if(typeof t===\"number\"){return n!==0}return false};var removeArrayElement=exports.removeArrayElement=function e(t,r){var n=t.indexOf(r);if(n>-1){return t.splice(n,1)[0]}};var getPropertiesByPrefix=exports.getPropertiesByPrefix=function e(t,r,n){var o=makeHashMap();for(var s in t){if(startsWith(s,r)){o[n?s.substr(r.length):s]=t[s]}}return o};var getWithoutPrefix=exports.getWithoutPrefix=function e(t,r){return startsWith(t,r)?t.substr(r.length):t};var hasKeyWithPrefix=exports.hasKeyWithPrefix=function e(t,r){for(var n in t){if(startsWith(n,r)){return true}}return false};var pickRandom=exports.pickRandom=function e(t){return t[getRandomInt(0,t.length-1)]};var getFirstElementByClassName=exports.getFirstElementByClassName=function e(t,r,n){var o=(r||document).getElementsByClassName(t)[0];if(!o&&(typeof n===\"boolean\"?n:true)){var s='Missing element with class \"'+t+'\" inside '+r;throw new _exception.EnvironmentError(s)}return o};var getRandomLabel=exports.getRandomLabel=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var r=pickRandom([\"exciting\",\"notable\",\"epic\",\"new\",\"fancy\",\"great\",\"cool\",\"fresh\",\"funky\",\"clever\"]);var n=(t.object||pickRandom([\"concept\",\"idea\",\"thought\",\"topic\",\"subject\"]))+(t.plural?\"s\":\"\");return\"My \"+r+\" \"+n};var _merge=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){t={}}for(var n in r){if(r.hasOwnProperty(n)){if(r[n]!=null){t[n]=_typeof(r[n])===\"object\"?e(t[n],r[n]):r[n]}}}return t};var merge=exports.merge=function e(t){for(var r=arguments.length,n=Array(r>1?r-1:0),o=1;o<r;o++){n[o-1]=arguments[o]}for(var s=0,i=n.length;s<i;s++){var a=n[s];if(a!=null&&(typeof a===\"undefined\"?\"undefined\":_typeof(a))===\"object\"){t=_merge(t,a)}}return t};var setDomListeners=exports.setDomListeners=function e(t,r,n,o){o=typeof o===\"boolean\"?o:false;t=t+\"EventListener\";for(var s in n){var i=n[s];if(typeof i===\"function\"){r[t](s,i,o)}else{r[t](s,i[0],typeof i[1]===\"boolean\"?i[1]:o)}}};var removeDOMChildNodes=exports.removeDOMChildNodes=function e(t){for(var r=t.childNodes.length;r--;){t.removeChild(t.childNodes[r])}};var mod=exports.mod=function e(t,r){var n=t%r;return Math.floor(n>=0?n:n+r)};var getNearestRasterPosition=exports.getNearestRasterPosition=function e(t,r){var n=t.x,o=t.y;var s=r/2;var i=mod(n,r);var a=mod(o,r);return{x:i<s?n-i:n-i+r,y:a<s?o-a:o-a+r}};var bindTo=exports.bindTo=function e(t,r){for(var n=r.length;n--;){var o=t[r[n]];t[r[n]]=o.bind(t)}};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/basic.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var generateDraftTitle=exports.generateDraftTitle=function e(n){var r=0,t=void 0;do{t=\"Draft \"+(r?r+1+\" \":\"\")+\"of '\"+n+\"'\";r++}while($tw.wiki.tiddlerExists(t));return t};var makeDraftTiddler=exports.makeDraftTiddler=function e(n){var r=$tw.wiki.findDraft(n);if(r){return $tw.wiki.getTiddler(r)}var t=$tw.wiki.getTiddler(n);r=generateDraftTitle(n);var l=new $tw.Tiddler(t,{title:r,\"draft.title\":n,\"draft.of\":n},$tw.wiki.getModificationFields());$tw.wiki.addTiddler(l);return l};var getFullScreenApis=exports.getFullScreenApis=function e(){var n=document,r=n.body,t={_requestFullscreen:r.webkitRequestFullscreen!==undefined?\"webkitRequestFullscreen\":r.mozRequestFullScreen!==undefined?\"mozRequestFullScreen\":r.msRequestFullscreen!==undefined?\"msRequestFullscreen\":r.requestFullscreen!==undefined?\"requestFullscreen\":\"\",_exitFullscreen:n.webkitExitFullscreen!==undefined?\"webkitExitFullscreen\":n.mozCancelFullScreen!==undefined?\"mozCancelFullScreen\":n.msExitFullscreen!==undefined?\"msExitFullscreen\":n.exitFullscreen!==undefined?\"exitFullscreen\":\"\",_fullscreenElement:n.webkitFullscreenElement!==undefined?\"webkitFullscreenElement\":n.mozFullScreenElement!==undefined?\"mozFullScreenElement\":n.msFullscreenElement!==undefined?\"msFullscreenElement\":n.fullscreenElement!==undefined?\"fullscreenElement\":\"\",_fullscreenChange:n.webkitFullscreenElement!==undefined?\"webkitfullscreenchange\":n.mozFullScreenElement!==undefined?\"mozfullscreenchange\":n.msFullscreenElement!==undefined?\"MSFullscreenChange\":n.fullscreenElement!==undefined?\"fullscreenchange\":\"\"};if(!t._requestFullscreen||!t._exitFullscreen||!t._fullscreenElement){return null}else{return t}};var flatten=exports.flatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l=r.prefix||\"\";var i={};function u(e,n){Object.keys(e).forEach(function(f){var s=e[f];var c=r.safe&&Array.isArray(s);var a=Object.prototype.toString.call(s);var d=a===\"[object Object]\"||a===\"[object Array]\";var o=n?n+t+f:l+f;if(!c&&d){return u(s,o)}i[o]=s})}u(n);return i};var unflatten=exports.unflatten=function e(n){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var t=r.delimiter||\".\";var l={};if(Object.prototype.toString.call(n)!==\"[object Object]\"){return n}function i(e){var n=Number(e);return isNaN(n)||e.indexOf(\".\")!==-1?e:n}Object.keys(n).forEach(function(u){var f=u.split(t);var s=i(f.shift());var c=i(f[0]);var a=l;while(c!==undefined){if(a[s]===undefined){a[s]=typeof c===\"number\"&&!r.object?[]:{}}a=a[s];if(f.length>0){s=i(f.shift());c=i(f[0])}}a[s]=e(n[u],r)});return l};var genUUID=exports.genUUID=function(){var e=\"0123456789abcdefghijklmnopqrstuvwxyz\".split(\"\");return function(){var n=e,r=new Array(36);var t=0,l;for(var i=0;i<36;i++){if(i==8||i==13||i==18||i==23){r[i]=\"-\"}else if(i==14){r[i]=\"4\"}else{if(t<=2)t=33554432+Math.random()*16777216|0;l=t&15;t=t>>4;r[i]=n[i==19?l&3|8:l]}}return r.join(\"\")}}();\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/thirdParty.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.getArrayValuesAsHashmapKeys=exports.getLookupTable=exports.keyOfItemWithProperty=exports.keysOfItemsWithProperty=exports.getDublicates=exports.getId=exports.refreshDataSet=exports.drawRaster=exports.getPrettyFilter=exports.groupByProperty=exports.isEdgeTypeMatch=exports.getEdgeTypeMatches=exports.getDataUri=exports.convert=exports.getValues=exports.getIterableCollection=exports.getLabel=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var getLabel=exports.getLabel=function e(t,r){var i=wikiUtils.getTiddler(t);return(i&&i.fields[r]?i.fields[r]:i.fields.title).replace(\"\\\\n\",\"\\n\")};var getIterableCollection=exports.getIterableCollection=function e(t){return t instanceof _vis2.default.DataSet?t.get():t};var getValues=exports.getValues=function e(t){if(Array.isArray(t)){return t}else if(t instanceof _vis2.default.DataSet){return t.get({returnType:\"Array\"})}var r=[];var i=Object.keys(t);for(var a=i.length;a--;){r.push(t[i[a]])}return r};var convert=exports.convert=function e(t,r){if((typeof t===\"undefined\"?\"undefined\":_typeof(t))!==\"object\"){throw new _exception.InvalidArgumentException(t,r)}if(r===\"object\"){r=\"hashmap\"}var i={array:function e(t){return getValues(t)},hashmap:function e(t){return t instanceof _vis2.default.DataSet?t.get({returnType:\"Object\"}):t},dataset:function e(t){return t instanceof _vis2.default.DataSet?t:!Array.isArray(t)?getValues(t):new _vis2.default.DataSet(t)}};return i[r](t)};var getDataUri=exports.getDataUri=function e(t,r,i){var a=wikiUtils.getTiddler(t);r=r||a.fields.type||\"image/svg+xml\";var s=a.fields.text;var o=$tw.config.contentTypeInfo[r].encoding;if(r===\"image/svg+xml\"){s=s.replace(/\\r?\\n|\\r/g,\" \");if(!basicUtils.hasSubString(\"xmlns\",s)){s=s.replace(/<svg/,'<svg xmlns=\"http://www.w3.org/2000/svg\"')}}if(i&&o!==\"base64\"){o=\"base64\";s=basicUtils.base64(s)}return\"data:\"+r+\";\"+o+\",\"+s};var eTyFiltAutoPrefix=\"[all[]] \";var getEdgeTypeMatches=exports.getEdgeTypeMatches=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:\"\";var r=arguments[1];if(!r){r=wikiUtils.getTiddlersByPrefix($tm.path.edgeTypes+\"/\",{iterator:\"eachTiddlerPlusShadows\",removePrefix:true})}if(r!=null&&!Array.isArray(r)){r=Object.keys(r)}return wikiUtils.getMatches(eTyFiltAutoPrefix+t,r)};var isEdgeTypeMatch=exports.isEdgeTypeMatch=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"\";return wikiUtils.isMatch(t,eTyFiltAutoPrefix+r)};var groupByProperty=exports.groupByProperty=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s in a){var o=t[a[s]];var n=o[r];if(n==null){throw\"Cannot group by property \"+r}else{if(!Array.isArray(i[n])){i[n]=[]}i[n].push(o)}}return i};var getPrettyFilter=exports.getPrettyFilter=function e(t){t=t.trim().replace(\"][\",\"] [\");var r=/[+-]?\\[.+?[\\]\\}\\>]\\]/g;var i=t.match(r);t=t.replace(r,\" [] \").trim();var a=t.split(/\\s+/);var s=0;var o=[];for(var n=0,l=a.length;n<l;n++){o[n]=a[n]===\"[]\"?i[s++]:a[n]}return o.join(\"\\n\")};var drawRaster=exports.drawRaster=function e(t,r,i,a){var s=arguments.length>4&&arguments[4]!==undefined?arguments[4]:\"#D9D9D9\";var o=basicUtils.getNearestRasterPosition(i,a),n=o.x,l=o.y;var u=t.canvas.width/r;var p=t.canvas.height/r;var f=a*2;var v=Math.ceil(u/a/2)*a+f;var c=Math.ceil(p/a/2)*a+f;var y=n-v;var d=n+v;var g=l-c;var h=l+c;t.beginPath();for(var b=y;b<d;b+=a){t.moveTo(b,g);t.lineTo(b,h)}for(var x=g;x<=h;x+=a){t.moveTo(y,x);t.lineTo(d,x)}t.strokeStyle=s;t.fillStyle=s;t.stroke()};var refreshDataSet=exports.refreshDataSet=function e(t,r){var i=t.get({returnType:\"Object\"});var a=[];var s=[];var o=[];var n=[];for(var l in r){if(i[l]){if(basicUtils.isEqual(i[l],r[l])){continue}s.push(l);t.remove(l)}else{a.push(l)}if(r[l].x===undefined){o.push(l)}t.add(r[l])}for(var u in i){if(!r[u]){n.push(u);t.remove(u)}}return{withoutPosition:o,inserted:a,updated:s,removed:n}};var getId=exports.getId=function e(t){return wikiUtils.getTiddler(t).fields[\"tmap.id\"]};var getDublicates=exports.getDublicates=function e(t){var r=getId(t);if(!r){return[]}var i=wikiUtils.getTiddlersWithField(\"tmap.id\",r,{limit:2});delete i[wikiUtils.getTiddlerRef(t)];return Object.keys(i)};var keysOfItemsWithProperty=exports.keysOfItemsWithProperty=function e(t,r,i,a){t=getIterableCollection(t);var s=Object.keys(t);var o=[];a=typeof a===\"number\"?a:s.length;for(var n=0,l=s.length;n<l;n++){var u=s[n];if(_typeof(t[u])===\"object\"&&t[u][r]){if(!i||t[u][r]===i){o.push(u);if(o.length===a){break}}}}return o};var keyOfItemWithProperty=exports.keyOfItemWithProperty=function e(t,r,i){return keysOfItemsWithProperty(t,r,i,1)[0]};var getLookupTable=exports.getLookupTable=function e(t,r){t=getIterableCollection(t);var i=basicUtils.makeHashMap();var a=Object.keys(t);for(var s=0,o=a.length;s<o;s++){var n=a[s];var l=r?t[n][r]:t[n];var u=typeof l===\"undefined\"?\"undefined\":_typeof(l);if(u===\"string\"&&l!==\"\"||u===\"number\"){if(!i[l]){i[l]=r?t[n]:true;continue}}if(r){throw new Error('Cannot use \"'+l+'\" as lookup table index')}}return i};var getArrayValuesAsHashmapKeys=exports.getArrayValuesAsHashmapKeys=getLookupTable;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/tmap.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/utils": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/utils",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.utils=undefined;var _extends=Object.assign||function(i){for(var r=1;r<arguments.length;r++){var t=arguments[r];for(var e in t){if(Object.prototype.hasOwnProperty.call(t,e)){i[e]=t[e]}}}return i};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/utils\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);var _thirdParty=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/thirdParty\");var thirdPartyUtils=_interopRequireWildcard(_thirdParty);var _wiki=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\");var wikiUtils=_interopRequireWildcard(_wiki);var _tmap=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/tmap\");var tMapUtils=_interopRequireWildcard(_tmap);function _interopRequireWildcard(i){if(i&&i.__esModule){return i}else{var r={};if(i!=null){for(var t in i){if(Object.prototype.hasOwnProperty.call(i,t))r[t]=i[t]}}r.default=i;return r}}var utils=exports.utils=_extends({},basicUtils,thirdPartyUtils,wikiUtils,tMapUtils);exports.default=utils;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/utils.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.touch=exports.addTiddler=exports.getTiddlersByPrefix=exports.getTiddlerWithField=exports.getTiddlersWithField=exports.deleteByPrefix=exports.cp=exports.mv=exports.addTWlisteners=exports.getChildWidgetByProperty=exports.getMergedTiddlers=exports.isSystemOrDraft=exports.isDraft=exports.setText=exports.getText=exports.isLeftVersionGreater=exports.getEntry=exports.setEntry=exports.clone=exports.writeFieldData=exports.parseFieldData=exports.isPreviewed=exports.notify=exports.registerTransclude=exports.getElementNode=exports.getTiddlerNode=exports.getTranscludeNode=exports.isMatch=exports.getMatches=exports.moveFieldValues=exports.deleteTiddlers=exports.setField=exports.setSidebarTab=exports.tiddlerExists=exports.getField=exports.getTiddler=exports.getTiddlerRef=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _exception=require(\"$:/plugins/felixhayashi/tiddlymap/js/exception\");var _basic=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/utils/basic\");var basicUtils=_interopRequireWildcard(_basic);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/lib/utils/wiki\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var getTiddlerRef=exports.getTiddlerRef=function e(t){if(t instanceof $tw.Tiddler){return t.fields.title}else if(typeof t===\"string\"){return t}else{throw new _exception.InvalidArgumentException(t)}};var getTiddler=exports.getTiddler=function e(t){return $tw.wiki.getTiddler(t instanceof $tw.Tiddler?t.fields.title:t)};var getField=exports.getField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"\";var d=getTiddler(t);return!d?i:d.fields[r]||i};var tiddlerExists=exports.tiddlerExists=function e(t){if(!t){return false}var r=getTiddlerRef(t);return Boolean(r&&($tw.wiki.tiddlerExists(r)||$tw.wiki.isShadowTiddler(r)))};var setSidebarTab=exports.setSidebarTab=function e(t){setText(getTiddlersByPrefix(\"$:/state/tab/sidebar-\")[0],t)};var setField=exports.setField=function e(t,r,i){if(!t||!r){return}var d=getTiddlerRef(t);var s=_defineProperty({title:d},r,i);var n=$tw.wiki.getTiddler(d,true);if(r!==\"text\"&&n&&!n.fields.text){s.text=\"\"}n=new $tw.Tiddler(n,s);$tw.wiki.addTiddler(n);return n};var deleteTiddlers=exports.deleteTiddlers=function e(t){var r=Object.keys(t);var i=$tw.wiki.getTiddlerList(\"$:/StoryList\");for(var d=r.length;d--;){var s=getTiddlerRef(t[r[d]]);if(!$tw.wiki.tiddlerExists(t[r[d]])){continue}var n=i.indexOf(s);if(n!==-1){i.splice(n,1);setField(\"$:/StoryList\",\"list\",i)}$tw.wiki.deleteTiddler(s)}};var moveFieldValues=exports.moveFieldValues=function e(t,r,i,d,s){if(t===r)return;var n=s||$tw.wiki.allTitles();for(var l=n.length;l--;){var a=getTiddler(n[l]);if(a.isDraft()||!a.fields[t]){continue}if(!d&&$tw.wiki.isSystemTiddler(n[l])){continue}var o=_defineProperty({},r,a.fields[t]);if(i){o[t]=undefined}$tw.wiki.addTiddler(new $tw.Tiddler(a,o))}};var getMatches=exports.getMatches=function e(t,r,i){var d=undefined;var s=$tw.wiki;if(typeof t===\"string\"){t=s.compileFilter(t)}if(r!=null&&(typeof r===\"undefined\"?\"undefined\":_typeof(r))===\"object\"){if(!Array.isArray(r)){r=Object.keys(r)}d=function e(t){for(var i=r.length;i--;){var d=s.getTiddler(r[i]);t(d,r[i])}}}return t.call(s,d,i)};var isMatch=exports.isMatch=function e(t,r){return getTiddlerRef(t)===getMatches(r,[getTiddlerRef(t)])[0]};var getTranscludeNode=exports.getTranscludeNode=function e(t,r){return{type:\"transclude\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[],isBlock:!!r}};var getTiddlerNode=exports.getTiddlerNode=function e(t){return{type:\"tiddler\",attributes:{tiddler:{type:\"string\",value:getTiddlerRef(t)}},children:[]}};var getElementNode=exports.getElementNode=function e(t,r,i){return{type:\"element\",tag:t,attributes:{class:{type:\"string\",value:r}},children:i?[{type:\"text\",text:i}]:[]}};var registerTransclude=exports.registerTransclude=function e(t,r,i){basicUtils.removeArrayElement(t.children,t[r]);t[r]=t.makeChildWidget(getTranscludeNode(i,true));t.children.push(t[r]);return t[r]};var notify=exports.notify=function e(t){var r=\"$:/temp/tiddlymap/notify\";$tw.wiki.addTiddler(new $tw.Tiddler({title:r,text:t}));$tw.notifier.display(r)};var isPreviewed=exports.isPreviewed=function e(t){if(!t){return false}if(t.domNode.isTiddlyWikiFakeDom){return true}if(t.getVariable(\"tv-tiddler-preview\")){return true}else{var r=\"tc-tiddler-preview-preview\";return!!basicUtils.getAncestorWithClass(t.parentDomNode,r)}};var parseFieldData=exports.parseFieldData=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"text\";var i=arguments[2];var d=getTiddler(t);if(!d){return i}return basicUtils.parseJSON(d.fields[r],i)};var writeFieldData=exports.writeFieldData=function e(t,r,i,d){if((typeof i===\"undefined\"?\"undefined\":_typeof(i))!==\"object\"){return}d=parseInt(d);d=d>0&&r===\"text\"?d:0;setField(t,r,JSON.stringify(i,null,d))};var clone=exports.clone=function e(t,r){setField(t,\"title\",r)};var setEntry=exports.setEntry=function e(t,r,i){$tw.wiki.setText(getTiddlerRef(t),null,r,i)};var getEntry=exports.getEntry=function e(t,r,i){var d=$tw.wiki.getTiddlerData(getTiddlerRef(t),{});return d[r]==null?i:d[r]};var isLeftVersionGreater=exports.isLeftVersionGreater=function e(t,r){return t!==r&&$tw.utils.checkVersions(t,r)};var getText=exports.getText=function e(t,r){return getField(t,\"text\",r)};var setText=exports.setText=function e(t,r){setField(t,\"text\",r)};var isDraft=exports.isDraft=function e(t){var r=getTiddler(t);return r&&r.isDraft()};var isSystemOrDraft=exports.isSystemOrDraft=function e(t){return $tw.wiki.isSystemTiddler(getTiddlerRef(t))||isDraft(t)};var getMergedTiddlers=exports.getMergedTiddlers=function e(t,r){if(!Array.isArray(t)){return}for(var i=t.length;i--;){t[i]=getTiddler(t[i])}if(!t.length){return}t.push({title:r||t[0].fields.title},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());t.unshift(null);return new(Function.prototype.bind.apply($tw.Tiddler,t))};var getChildWidgetByProperty=exports.getChildWidgetByProperty=function e(t,r,i){var d=t.children;for(var s=d.length;s--;){var n=d[s];if(n[r]===i){return n}else{n=e(n,r,i);if(n){return n}}}};var addTWlisteners=exports.addTWlisteners=function e(t,r,i){for(var d in t){r.addEventListener(d,t[d].bind(i))}};var mv=exports.mv=function e(t,r,i,d){if(t===r||!t||!r){return}i=typeof i===\"boolean\"?i:false;d=typeof d===\"boolean\"?d:true;var s=getTiddlersByPrefix(t);var n=basicUtils.makeHashMap();for(var l=s.length;l--;){var a=s[l];var o=a.replace(t,r);if($tw.wiki.tiddlerExists(o)&&!i){return}n[a]=o}for(var f in n){setField(f,\"title\",n[f]);if(d){$tw.wiki.deleteTiddler(f)}}return n};var cp=exports.cp=function e(t,r,i){return mv(t,r,i,false)};var deleteByPrefix=exports.deleteByPrefix=function e(t,r){if(!t){return}r=r||$tw.wiki.allTitles();var i=[];for(var d=r.length;d--;){if(basicUtils.startsWith(r[d],t)){$tw.wiki.deleteTiddler(r[d]);i.push(i[d])}}return i};var getTiddlersWithField=exports.getTiddlersWithField=function e(t,r){var i=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var d=i.tiddlers||$tw.wiki.allTitles();var s=i.isIncludeDrafts===true;var n=basicUtils.makeHashMap();var l=Object.keys(d);var a=$tw.utils.hop;var o=i.limit||0;for(var f=l.length;f--;){var u=getTiddler(d[l[f]]);var p=u.fields;if(a(p,t)&&(!a(p,\"draft.of\")||s)){if(!r||p[t]===r){n[p.title]=u;if(--o===0){break}}}}return n};var getTiddlerWithField=exports.getTiddlerWithField=function e(t,r){return Object.keys(getTiddlersWithField(t,r,{limit:1}))[0]};var getTiddlersByPrefix=exports.getTiddlersByPrefix=function e(t){var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=r.removePrefix===true;var d=[];var s=$tw.wiki[r.iterator||\"each\"];s(function(e,r){if(basicUtils.startsWith(r,t)){d.push(i?basicUtils.getWithoutPrefix(r,t):r)}});return d};var addTiddler=exports.addTiddler=function e(t,r){var i=getTiddler(t);if(!r&&i){return i}i=new $tw.Tiddler({title:t,text:\"\"},$tw.wiki.getModificationFields(),$tw.wiki.getCreationFields());$tw.wiki.addTiddler(i);return i};var touch=exports.touch=function e(t){if(!t){return}var r=new $tw.Tiddler(getTiddler(t),$tw.wiki.getModificationFields());$tw.wiki.addTiddler(r)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/lib/utils/wiki.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/macro/tmap",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.params=exports.name=exports.run=undefined;var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\ntitle: $:/plugins/felixhayashi/tiddlymap/js/macro/tmap\ntype: application/javascript\nmodule-type: macro\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var name=\"tmap\";var params=getParamSlots(5);function run(){this.substVarRefs=this.substituteVariableReferences;var e=command[arguments[0]];var t=null;if(typeof e===\"function\"){var r=Array.prototype.slice.call(arguments,1);t=e.apply(this,r)}return typeof t===\"string\"?t:\"\"}function getParamSlots(e){var t=[];for(var r=0;r<e;r++){t.push({name:\"arg\"+r})}return t}var command=_utils2.default.makeHashMap();command.basename=function(e){var t=this.getVariable(\"currentTiddler\");return _utils2.default.getBasename(t,e)};command.datauri=function(e,t){return _utils2.default.getDataUri(e,t,true)};command.testJSON=function(e){var t=$tw.wiki.getTiddler(this.getVariable(\"currentTiddler\"));try{JSON.parse(t.fields[e]);return\"valid\"}catch(e){return\"malformed\"}};command.splitAndSelect=function(e,t){var r=this.getVariable(\"currentTiddler\");var a=r.split(e)[t];return a!=null?a:r};command.concat=function(){var e=\"\";for(var t=1,r=arguments.length;t<r;t++){e+=arguments[t]}return e};command.uuid=function(){return _utils2.default.genUUID()};command.regRepl=function(){var e=this.substVarRefs(arguments[0]);var t=arguments[1];var r=this.substVarRefs(arguments[2]);var a=this.substVarRefs(arguments[4]);return e.replace(new RegExp(t,a),r)};command.halfOfString=function(){var e=this.substVarRefs(arguments[0]);if(!e){return\"\"}return e.substr(0,Math.ceil(e.length/2))};command.isETyVisible=function(e,t){e=new _ViewAbstraction2.default(e);var r=command.getETyId.call(this,e,t);return\"\"+e.isEdgeTypeVisible(r)};command.getETyId=function(e,t){e=new _ViewAbstraction2.default(e);var r=_EdgeType2.default.getInstance(t||this.getVariable(\"currentTiddler\"));if(!r.namespace){var a=_EdgeType2.default.getIdParts(r.id),n=a.marker,i=a.name;var u=e.getConfig(\"edge_type_namespace\");r=_EdgeType2.default.getInstance(_EdgeType2.default.getId(n,u,i))}return r.id};command.scale=function(){var e=\"\";for(var t=1,r=parseInt(arguments[0]);t<r;t++){e+=\"[[\"+t+\"]]\"}return e};command.mergeFields=function(){var e=_utils2.default.getTiddler(arguments[0]);var t=arguments[1];var r=arguments[2]||\" \";if(!e)return;var a=_utils2.default.getPropertiesByPrefix(e.fields,t);var n=\"\";for(var i in a){if(typeof a[i]===\"string\"){n+=a[i]+r}}return n};command.option=function(e,t){if(typeof $tm==\"undefined\"){return\"\"}var r=$tm;var a=e.split(\".\");for(var n=0;n<a.length;n++){if((typeof r===\"undefined\"?\"undefined\":_typeof(r))==\"object\"&&r[a[n]]){r=r[a[n]]}}if(t&&typeof r===\"string\"&&_utils2.default.hasSubString(t)&&r.lastIndexOf(t)+t.length===r.length){r=r+t}return r};exports.run=run;exports.name=name;exports.params=params;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/macro/MapMacro.js.map\n",
            "type": "application/javascript",
            "module-type": "macro"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Adapter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Adapter",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Adapter\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _contrastcolour=require(\"$:/core/modules/macros/contrastcolour.js\");function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Adapter=function(){function e(t,i){_classCallCheck(this,e);this.getTiddlerById=t.getTiddlerById.bind(t);this.getId=t.getIdByTiddler.bind(t);this.assignId=t.assignId.bind(t);this.edgeTypeSubscriberRegistry=i;this.indeces=$tm.indeces;this.wiki=$tw.wiki;this.visShapesWithTextInside=_utils2.default.getLookupTable([\"ellipse\",\"circle\",\"database\",\"box\",\"text\"])}_createClass(e,[{key:\"deleteEdge\",value:function e(t){return this._processEdge(t,\"delete\")}},{key:\"insertEdge\",value:function e(t){return this._processEdge(t,\"insert\")}},{key:\"deleteEdges\",value:function e(t){t=_utils2.default.convert(t,\"array\");for(var i=t.length;i--;){this.deleteEdge(t[i])}}},{key:\"_processEdge\",value:function e(t,i){$tm.logger(\"debug\",\"Edge\",i,t);var r=this.getTiddlerById(t.from);if(!r||!_utils2.default.tiddlerExists(r)){return}var a=_utils2.default.getTiddler(r);var s=this.indeces.allETy[t.type]||_EdgeType2.default.getInstance(t.type);var l=this.edgeTypeSubscriberRegistry.getAllForType(s);var n=i+\"Edge\";for(var d=l.length;d--;){l[d][n](a,t,s)}if(i===\"insert\"&&!s.exists()){s.save()}return t}},{key:\"getAdjacencyList\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Creating adjacency list\");if(!i.edges){var r=_utils2.default.getMatches(env.selector.allPotentialNodes);i.edges=this.getEdgesForSet(r,i.toWL,i.typeWL)}var a=_utils2.default.groupByProperty(i.edges,t||\"to\");$tm.stop(\"Creating adjacency list\");return a}},{key:\"getNeighbours\",value:function e(t){var i=this;var r=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};$tm.start(\"Get neighbours\");var a=r.addProperties,s=r.toWL,l=r.typeWL,n=r.steps;var d=this.indeces.allETy;var o=_utils2.default.getArrayValuesAsHashmapKeys(t);var u=_ViewAbstraction2.default.exists(r.view)?new _ViewAbstraction2.default(r.view):null;var f=_utils2.default.makeHashMap();var g=_utils2.default.makeHashMap();var c=parseInt(n)>0?n:1;var v=r.direction||u&&u.getConfig(\"neighbourhood_directions\");var y=!v||v===\"both\";var h=y||v===\"in\";var p=y||v===\"out\";var _=u&&\"[all[]] \"+u.getNodeFilter(\"raw\");var b=this.getAdjacencyList(\"to\",r);var m=function e(t,r,s){f[t.id]=t;var l=i.getTiddlerById(t[r]);if(u&&_utils2.default.isTrue($tm.config.sys.nodeFilterNeighbours)&&!_utils2.default.isMatch(l,_)){return}if(!o[l]){o[l]=true;var n=i.makeNode(l,a);if(n){g[n.id]=n;s.push(l)}}};var w=void 0;for(w=0;w<c&&t.length;w++){var T=[];for(var k=t.length;k--;){if(_utils2.default.isSystemOrDraft(t[k])){continue}var E=this.getEdges(t[k],s,l);for(var N in E){var A=d[E[N].type];if(y||p&&A.toArrow||h&&A.invertedArrow){m(E[N],\"to\",T)}}var I=b[this.getId(t[k])];if(!I){continue}for(var j=I.length;j--;){var x=d[I[j].type];if(y||h&&x.toArrow||p&&x.invertedArrow){m(I[j],\"from\",T)}}}t=T}var S={nodes:g,edges:f};$tm.logger(\"debug\",\"Retrieved neighbourhood\",S,\"steps\",w);$tm.stop(\"Get neighbours\");return S}},{key:\"getGraph\",value:function e(t){var i=t.view,r=t.matches,a=t.includeNeighboursOf;$tm.start(\"Assembling Graph\");i=new _ViewAbstraction2.default(i);r=r||_utils2.default.getMatches(i.getNodeFilter(\"compiled\"));var s=parseInt(i.getConfig(\"neighbourhood_scope\"));var l=i.getEdgeTypeFilter(\"whitelist\");var n=_utils2.default.getArrayValuesAsHashmapKeys(r);var d=this.getEdgesForSet(r,n,l);var o=void 0;if(i.isEnabled(\"filter_nodes_by_edge_types\")){o=new Set;Object.values(d).forEach(function(e){o.add(e.from);o.add(e.to)})}var u={edges:d,nodes:this.selectNodesByReferences(r,{view:i,outputType:\"hashmap\"})};if(s){var f=a?r.filter(a):r;var g=this.getNeighbours(f,{steps:s,view:i,typeWL:l,addProperties:{type:\"tmap:neighbour\"}});Object.assign(u.nodes,g.nodes);Object.assign(u.edges,g.edges);if(i&&i.isEnabled(\"show_inter_neighbour_edges\")){var c=this.getTiddlersByIds(g.nodes);var v=_utils2.default.getArrayValuesAsHashmapKeys(c);Object.assign(u.edges,this.getEdgesForSet(c,v))}}if(o){var y=_utils2.default.makeHashMap();Object.values(u.nodes).forEach(function(e){if(o.has(e.id)){y[e.id]=e}});u.nodes=y}this.attachStylesToNodes(u.nodes,i);$tm.stop(\"Assembling Graph\");$tm.logger(\"debug\",\"Assembled graph:\",u);return u}},{key:\"getEdges\",value:function e(t,i,r){var a=_utils2.default.getTiddler(t);if(!a||_utils2.default.isSystemOrDraft(a)){return}var s=this.indeces.allETy;var l=_utils2.default.makeHashMap();var n=this.edgeTypeSubscriberRegistry.getAll();for(var d=0,o=n.length;d<o;d++){Object.assign(l,n[d].loadEdges(a,i,r))}for(var u in l){var f=l[u];if(!f.from||!f.to){continue}var g=s[f.type]||_EdgeType2.default.getInstance(f.type);addStyleToEdge(l[u],g);l[u]=f}return l}},{key:\"getEdgesForSet\",value:function e(t,i,r){var a=_utils2.default.makeHashMap();for(var s=t.length;s--;){Object.assign(a,this.getEdges(t[s],i,r))}return a}},{key:\"selectEdgesByType\",value:function e(t){var i=_utils2.default.makeHashMap(_defineProperty({},_EdgeType2.default.getInstance(t).id,true));return this.getEdgesForSet(this.getAllPotentialNodes(),null,i)}},{key:\"getAllPotentialNodes\",value:function e(){return _utils2.default.getMatches($tm.selector.allPotentialNodes)}},{key:\"_processEdgesWithType\",value:function e(t,i){var r=i.action,a=i.newName;t=_EdgeType2.default.getInstance(t);$tm.logger(\"debug\",\"Processing edges\",t,r);var s=this.selectEdgesByType(t);if(r===\"rename\"){new _EdgeType2.default(a,t).save()}for(var l in s){this._processEdge(s[l],\"delete\");if(r===\"rename\"){s[l].type=a;this._processEdge(s[l],\"insert\")}}this.wiki.deleteTiddler(t.fullPath)}},{key:\"selectNodesByReferences\",value:function e(t){var i=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{},r=i.addProperties,a=i.outputType;var s=_utils2.default.makeHashMap();var l=Object.keys(t);for(var n=l.length;n--;){var d=this.makeNode(t[l[n]],r);if(d){s[d.id]=d}}return _utils2.default.convert(s,a)}},{key:\"selectNodesByIds\",value:function e(t,i){var r=this.getTiddlersByIds(t);return this.selectNodesByReferences(r,i)}},{key:\"selectNodeById\",value:function e(t,i){i=Object.assign({},i,{outputType:\"hashmap\"});var r=this.selectNodesByIds([t],i);return r[t]}},{key:\"removeNodeType\",value:function e(t){t=_NodeType2.default.getInstance(t);this.wiki.deleteTiddler(t.fullPath)}},{key:\"makeNode\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r||_utils2.default.isSystemOrDraft(r))return;var a=_utils2.default.merge({},i);a.id=this.assignId(r);a.tRef=r.fields.title;var s=r.fields[$tm.field.nodeLabel];a.label=(s&&$tm.field.nodeLabel!==\"title\"?this.wiki.renderText(\"text/plain\",\"text/vnd-tiddlywiki\",s):r.fields.title).replace(\"\\\\n\",\"\\n\");return a}},{key:\"getInheritedNodeStyles\",value:function e(t){var i=this.getTiddlersByIds(t);var r={};var a=this.indeces.glNTy;for(var s=a.length;s--;){var l=a[s];var n=[];if(l.id===\"tmap:neighbour\"){for(var d in t){if(t[d].type===\"tmap:neighbour\"){n.push(this.getTiddlerById(d))}}}else{n=l.getInheritors(i)}for(var o=n.length;o--;){var u=n[o];var f=r[u]=r[u]||{};f.style=_utils2.default.merge(f.style||{},l.style);if(l[\"fa-icon\"]){f[\"fa-icon\"]=l[\"fa-icon\"]}else if(l[\"tw-icon\"]){f[\"tw-icon\"]=l[\"tw-icon\"]}}}return r}},{key:\"attachStylesToNodes\",value:function e(t,i){i=_ViewAbstraction2.default.exists(i)?new _ViewAbstraction2.default(i):null;var r=this.getInheritedNodeStyles(t);var a=i?i.getNodeData():_utils2.default.makeHashMap();var s=i&&!i.isEnabled(\"physics_mode\");for(var l in t){var n=this.getTiddlerById(l);var d=this.wiki.getTiddler(n);var o=d.fields;var u=t[l];var f=void 0;var g=r[n];if(g){_utils2.default.merge(u,g.style);f=getIcon(g[\"fa-icon\"],g[\"tw-icon\"])}if(o.color){u.color=o.color}if(o[\"tmap.style\"]){_utils2.default.merge(u,_utils2.default.parseJSON(o[\"tmap.style\"]))}f=getIcon(o[\"tmap.fa-icon\"],o[\"icon\"])||f;var c=a[l];if(c){_utils2.default.merge(u,c);if(s){u.fixed={x:u.x!=null,y:u.y!=null}}f=getIcon(c[\"fa-icon\"],c[\"tw-icon\"])||f}var v=u.color!==null&&_typeof(u.color)===\"object\";var y=v?u.color.background:u.color;u.color={background:y,border:v?u.color.border:undefined};addNodeIcon(u,f);u.font=u.font||{};if(u.shape&&!this.visShapesWithTextInside[u.shape]){u.font.color=\"black\"}else if(!u.font.color&&y){u.font.color=(0,_contrastcolour.run)(y,y,\"black\",\"white\")}if(u.shape===\"icon\"){u.label=\"\\n\"+u.label;if(_typeof(u.icon)===\"object\"){u.icon.color=y}}}if(i){var h=t[i.getConfig(\"central-topic\")];if(h){_utils2.default.merge(h,this.indeces.glNTyById[\"tmap:central-topic\"].style)}}}},{key:\"deleteNode\",value:function e(t){if(!t){return}var i=(typeof t===\"undefined\"?\"undefined\":_typeof(t))===\"object\"?t.id:t;var r=this.getTiddlerById(i);if(r){_utils2.default.deleteTiddlers([r])}var a=_utils2.default.getMatches(env.selector.allViews);for(var s=a.length;s--;){var l=new _ViewAbstraction2.default(a[s]);l.removeNode(i)}var n=this.getNeighbours([r]);this.deleteEdges(n.edges)}},{key:\"deleteNodes\",value:function e(t){for(var i=t.length;i--;){this.deleteNode(t[i])}}},{key:\"insertNode\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var i=arguments[1];var r=arguments[2];t.label=this.wiki.generateNewTitle(t.label||_utils2.default.getRandomLabel());var a=new $tw.Tiddler({text:\"\"},r,{title:t.label,\"tmap.id\":null},this.wiki.getModificationFields(),this.wiki.getCreationFields());this.wiki.addTiddler(a);t=this.makeNode(a,t);if(_ViewAbstraction2.default.exists(i)){new _ViewAbstraction2.default(i).addNode(t)}return t}},{key:\"getTiddlersByIds\",value:function e(t){if(Array.isArray(t)){t=_utils2.default.getArrayValuesAsHashmapKeys(t)}else if(t instanceof _vis2.default.DataSet){t=_utils2.default.getLookupTable(t,\"id\")}var i=[];for(var r in t){var a=this.getTiddlerById(r);if(a){i.push(a)}}return i}}]);return e}();var getFAdigits=function e(t){return t.length===4?t:t.substr(3,4)};var addNodeIcon=function e(t,i){if(!i){return}if(i.fa){t.shape=\"icon\";t.icon={shape:\"icon\",face:\"FontAwesome\",color:t.color,code:String.fromCharCode(\"0x\"+getFAdigits(i.fa))};if(t.size){t.icon.size=t.size}return}if(i.tw){var r=_utils2.default.getTiddler(i.tw);if(!r){return}if(r.fields[\"_canonical_uri\"]){t.image=r.fields[\"_canonical_uri\"];t.shape=\"image\"}else if(r.fields.text){t.image=_utils2.default.getDataUri(r);t.shape=\"image\"}}};var removeObsoleteViewData=function e(t,i){if(!_ViewAbstraction2.default.exists(i)||!t){return}i=new _ViewAbstraction2.default(i);var r=i.getNodeData();var a=0;for(var s in r){if(t[s]===undefined&&r[s]!=null){r[s]=undefined;a++}}if(a){$tm.logger(\"debug\",\"[Cleanup]\",\"Removed obsolete node data:\",i.getLabel(),a);i.saveNodeData(r)}};var addStyleToEdge=function e(t,i){t=Object.assign(t,i.style);if(_utils2.default.isTrue(i[\"show-label\"],true)){t.label=i.getLabel()}};var getIcon=function e(t,i){return t&&{fa:t}||i&&{tw:i}};exports.default=Adapter;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Adapter.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/CallbackManager",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/CallbackManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var CallbackManager=function(){function e(){_classCallCheck(this,e);this.callbacks=_utils2.default.makeHashMap();this.logger=$tm.logger;this.wiki=$tw.wiki}_createClass(e,[{key:\"add\",value:function e(t,a){var l=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;this.logger(\"debug\",'A callback was registered for changes of \"'+t+'\"');this.callbacks[t]={execute:a,isDeleteOnCall:l}}},{key:\"remove\",value:function e(t){if(!t){return}if(typeof t===\"string\"){t=[t]}for(var a=t.length;a--;){var l=t[a];if(this.callbacks[l]){this.logger(\"debug\",'Deleting callback for \"'+l+'\"');delete this.callbacks[l]}}}},{key:\"refresh\",value:function e(t){if(this.callbacks.length==0){return}for(var a in t){if(!this.callbacks[a]){continue}if(this.wiki.getTiddler(a)){this.logger(\"debug\",\"Executing a callback for: \"+a);this.callbacks[a].execute(a);if(!this.callbacks.isDeleteOnCall){continue}}this.remove(a)}}}]);return e}();exports.default=CallbackManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/CallbackManager.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/startup/caretaker",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _rebuilders;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var i in r){if(Object.prototype.hasOwnProperty.call(r,i)){e[i]=r[i]}}}return e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/caretaker\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _Fixer=require(\"$:/plugins/felixhayashi/tiddlymap/js/Fixer\");var _Fixer2=_interopRequireDefault(_Fixer);var _Adapter=require(\"$:/plugins/felixhayashi/tiddlymap/js/Adapter\");var _Adapter2=_interopRequireDefault(_Adapter);var _tracker=require(\"$:/plugins/felixhayashi/tiddlymap/js/services/tracker\");var _tracker2=_interopRequireDefault(_tracker);var _EdgeTypeSubscriberRegistry=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeTypeSubscriberRegistry\");var _EdgeTypeSubscriberRegistry2=_interopRequireDefault(_EdgeTypeSubscriberRegistry);var _DialogManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/DialogManager\");var _DialogManager2=_interopRequireDefault(_DialogManager);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _vis3=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis4=_interopRequireDefault(_vis3);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);var _URL=require(\"$:/plugins/felixhayashi/tiddlymap/js/URL\");var _URL2=_interopRequireDefault(_URL);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var r in e){if(Object.prototype.hasOwnProperty.call(e,r))t[r]=e[r]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,r){if(t in e){Object.defineProperty(e,t,{value:r,enumerable:true,configurable:true,writable:true})}else{e[t]=r}return e}var init=function e(){window.$tm=_extends({},env,{utils:_utils2.default,url:new _URL2.default(window.location.href)});cleanup();registerPublicClasses($tm);updateGlobals($tm);createMetaFile($tm.logger);var t=attachIndeces($tm);var r=getInitializedServices(t);Object.assign($tm,r);loadDefaultView($tm.config.sys.defaultView);r.fixer.fix();$tm.registry=[];setInterval(routineCheck,5e3);registerChangeListener($tm.callbackManager);registerMousemoveListener();registerClickListener();if($tm.url.query[\"tmap-enlarged\"]){prepareFullscreenStart($tm.url)}$tm.logger(\"warn\",\"TiddlyMap's caretaker successfully started\")};var getInitializedServices=function e(t){var r=new _tracker2.default(d);var i=$tw.modules.applyMethods(\"tmap.edgetypehandler\");var a=new _EdgeTypeSubscriberRegistry2.default(i,t.allETy,r);var s=new _Adapter2.default(r,a);var l=new _CallbackManager2.default;var n=new _DialogManager2.default(l);var d=new _Fixer2.default(s,$tm.logger,t.glNTy);return{edgeTypeSubscriberRegistry:a,tracker:r,adapter:s,callbackManager:l,dialogManager:n,fixer:d}};var registerPublicClasses=function e(t){t.keycharm=_vis4.default.keycharm;t.NodeType=_NodeType2.default;t.EdgeType=_EdgeType2.default;t.ViewAbstraction=_ViewAbstraction2.default};var attachOptions=function e(t){var r=t;if(!r.config)r.config=_utils2.default.makeHashMap();r.config.sys=_utils2.default.merge(r.config.sys,_utils2.default.unflatten($tw.wiki.getTiddlerData(env.ref.sysUserConf)));r.config.vis=_utils2.default.merge({},_vis2.default,_utils2.default.parseFieldData(env.ref.visUserConf));if(!r.field)r.field=_utils2.default.makeHashMap();$tw.utils.extend(r.field,r.config.sys.field)};var attachIndeces=function e(t){$tm.start(\"Attaching Indeces\");t.indeces=t.indeces||{};updateNodeTypesIndeces(t.indeces);updateEdgeTypesIndeces(t.indeces);$tm.stop(\"Attaching Indeces\");return t.indeces};var updateNodeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.nodeTypes;var i=t.glNTy=[];var a=t.glNTyById=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var s=_NodeType2.default.getInstance(t);a[s.id]=s;i.push(s)}});i.sort(function(e,t){return e.priority-t.priority})};var updateEdgeTypesIndeces=function e(t){t=t||$tm.indeces;var r=$tm.path.edgeTypes;var i=t.allETy=_utils2.default.makeHashMap();$tw.wiki.eachTiddlerPlusShadows(function(e,t){if(_utils2.default.startsWith(t,r)){var a=_EdgeType2.default.getInstance(t);i[a.id]=a}});if($tm.edgeTypeSubscriberRegistry){$tm.edgeTypeSubscriberRegistry.updateIndex(i)}};var attachFunctions=function e(t){var r=t;var i=function e(){};if(_utils2.default.isTrue($tm.config.sys.debug,false)&&console){r.logger=function(){if(arguments.length<2)return;var e=Array.prototype.slice.call(arguments);var t=e.shift(e);var r=console.hasOwnProperty(t)?t:\"debug\";console[r].apply(console,e)};r.start=function(e){console.time(\"[timer] \"+e)};r.stop=function(e){console.timeEnd(\"[timer] \"+e)}}else{r.logger=r.start=r.stop=i}r.notify=_utils2.default.isTrue($tm.config.sys.notifications)?_utils2.default.notify:i};var routineCheck=function e(){for(var t=$tm.registry.length;t--;){var r=$tm.registry[t];if(!r.destruct||!r.isZombieWidget)return;if(r.isZombieWidget()){$tm.logger(\"warn\",\"a widget will be removed\");$tm.registry.splice(t,1);r.destruct()}}};var dispatchUpdates=function e(t){var r=$tm.registry;for(var i=r.length;i--;){var a=r[i];if(a.update&&a.isZombieWidget&&!a.isZombieWidget()){a.update(t)}}};var checkForClone=function e(t){var r=_utils2.default.getDublicates(t);if(!r.length){return}_utils2.default.setField(t,\"tmap.edges\",undefined);$tm.tracker.assignId(t,true);$tm.dialogManager.open(\"dublicateIdInfo\",{param:{changedTiddler:t.fields.title,filter:_utils2.default.joinAndWrap(r,\"[[\",\"]]\"),id:_utils2.default.getId(t)}})};var updateGlobals=function e(t){attachOptions($tm);attachFunctions($tm);$tm.logger(\"warn\",\"Rebuilt globals\")};var lastCurrentTiddler=null;var updateLiveViewTrigger=function e(t){if(t[\"$:/HistoryList\"]){var r=_utils2.default.getField(\"$:/HistoryList\",\"current-tiddler\")}else if(t[\"$:/temp/focussedTiddler\"]){var r=_utils2.default.getField(\"$:/temp/focussedTiddler\",\"text\")}if(r!=null&&lastCurrentTiddler!==r){lastCurrentTiddler=r;_utils2.default.setField(\"$:/temp/tmap/currentTiddler\",\"text\",r)}};var printChanges=function e(t,r){if(!_utils2.default.isTrue($tm.config.sys.debug,false))return;$tm.logger(\"warn\",\"=== Refresh \"+r+\" ===\");for(var i in t){var a=t[i].deleted?\"[Deleted]\":\"[Modified]\";$tm.logger(\"warn\",a,i,$tw.wiki.getTiddler(i))}};var registerMousemoveListener=function e(){$tm.mouse={};var t=function e(t){$tm.mouse=t};window.addEventListener(\"mousemove\",t,false)};var registerClickListener=function e(){var t=$tm.path.tempPopups;window.addEventListener(\"click\",function(e){var r=_utils2.default.getTiddlersByPrefix(t);for(var i=r.length;i--;){if(_utils2.default.getText(r[i]))break}if(i===-1)return;if(!$tw.utils.hasClass(e.target,\"tc-drop-down\")&&!_utils2.default.getAncestorWithClass(e.target,\"tc-drop-down\")){for(var i=r.length;i--;){_utils2.default.setText(r[i],\"\")}}},false)};var registerChangeListener=function e(t){var r=0;$tw.wiki.addEventListener(\"change\",function(e){$tm.start(\"Caretaker handling changes\");printChanges(e,r++);t.refresh(e);var i={changedTiddlers:{}};for(var a in e){var s=_utils2.default.getTiddler(a);if(s&&s.isDraft()){continue}var l=handleTiddlerChange(a,s,i);if(l){i.changedTiddlers[a]=e[a]}}dispatchUpdates(i);updateLiveViewTrigger(e);$tm.stop(\"Caretaker handling changes\")})};var rebuilders=(_rebuilders={},_defineProperty(_rebuilders,env.path.options,updateGlobals),_defineProperty(_rebuilders,env.path.nodeTypes,updateNodeTypesIndeces),_defineProperty(_rebuilders,env.path.edgeTypes,updateEdgeTypesIndeces),_rebuilders);var handleTiddlerChange=function e(t,r,i){if($tw.wiki.isSystemTiddler(t)){for(var a in rebuilders){if(_utils2.default.startsWith(t,a)&&!i[a]){$tm.logger(\"warn\",\"[System change]\",a);rebuilders[a]();i[a]=true}}}else if(r){if(r.fields.text===undefined){$tw.wiki.dispatchEvent(\"lazyLoad\",t);return false}checkForClone(r);$tm.tracker.assignId(r)}else{var s=$tm.tracker.getIdByTiddler(t);if(!s){return false}var l=_utils2.default.getTiddlerWithField(\"tmap.id\",s);if(l){$tm.logger(\"warn\",\"[Renamed]\",t,\"into\",l)}else{$tm.adapter.deleteNode(s)}}return true};var cleanup=function e(){_utils2.default.deleteByPrefix(\"$:/temp/felixhayashi\");_utils2.default.deleteByPrefix(\"$:/temp/tiddlymap\");_utils2.default.deleteByPrefix(\"$:/temp/tmap\")};var loadDefaultView=function e(t){if(!t){return}var r=_utils2.default.getTiddler(env.ref.defaultViewHolder);if(r.fields.text===$tm.config.sys.defaultView){return}_utils2.default.setText(env.ref.defaultViewHolder,$tm.config.sys.defaultView)};var prepareFullscreenStart=function e(t){var r=env.ref,i=r.mainEditor,a=r.defaultViewHolder;_utils2.default.setSidebarTab(i);if(_ViewAbstraction2.default.exists(t)){t=new _ViewAbstraction2.default(t);_utils2.default.setField(a,\"text\",t.getLabel())}};var createMetaFile=function e(t){if(_utils2.default.tiddlerExists(env.ref.sysMeta)){return}t(\"warn\",\"Creating meta file\");var r=$tw.wiki.getTiddler(env.path.pluginRoot);$tw.wiki.setTiddlerData(env.ref.sysMeta,{originalVersion:r.fields.version,dataStructureState:\"0.6.9\",showWelcomeMessage:true})};var name=exports.name=\"tmap.caretaker\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"startup\"];var before=exports.before=[\"rootwidget\"];var synchronous=exports.synchronous=true;var startup=exports.startup=init;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Caretaker.js.map\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/DialogManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/DialogManager",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var l=t[a];l.enumerable=l.enumerable||false;l.configurable=true;if(\"value\"in l)l.writable=true;Object.defineProperty(e,l.key,l)}}return function(t,a,l){if(a)e(t.prototype,a);if(l)e(t,l);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/DialogManager\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var DialogManager=function(){function e(t,a){_classCallCheck(this,e);this.callbackManager=t;this.context=a}_createClass(e,[{key:\"open\",value:function t(a){var l=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=arguments[2];if(_utils2.default.isTrue($tm.config.sys.suppressedDialogs[a],false)){$tm.logger(\"warning\",\"Suppressed dialog\",a);return}$tm.logger(\"debug\",\"Dialog param object\",l);if(typeof i===\"function\"&&this.context){i=i.bind(this.context)}var r=$tm.path.tempRoot+\"/dialog-\"+_utils2.default.genUUID();var n=_utils2.default.getTiddler($tm.path.dialogs+\"/\"+a);var u={title:r,buttons:n.fields[\"buttons\"]||\"ok_cancel\",classes:\"tmap-modal-content \"+n.fields[\"classes\"],output:r+\"/output\",result:r+\"/result\",temp:r+\"/temp\",template:n.fields.title,templateId:a,currentTiddler:r+\"/output\",text:_utils2.default.getText($tm.path.dialogs)};_utils2.default.touch(u.output);if(l.dialog){if(l.dialog.preselects){$tw.wiki.addTiddler(new $tw.Tiddler({title:u.output},_utils2.default.flatten(l.dialog.preselects)));delete l.dialog.preselects}_utils2.default.merge(u,l.dialog)}u.footer=_utils2.default.getText($tm.path.footers);u=_utils2.default.flatten(u);l=_utils2.default.flatten(l);var s=function t(a){e.getElement(\"hidden-close-button\").click();var l=$tw.wiki.getTiddler(a);var n=l.fields.text;var s=null;if(n){s=$tw.wiki.getTiddler(u.output)}else{$tm.notify(\"operation cancelled\")}if(typeof i===\"function\"){i(n,s)}_utils2.default.deleteByPrefix(r)};this.callbackManager.add(u.result,s,true);var o=new $tw.Tiddler(n,l,u);$tw.wiki.addTiddler(o);$tm.logger(\"debug\",\"Opening dialog\",o);$tw.rootWidget.dispatchEvent({type:\"tm-modal\",param:o.fields.title,paramObject:o.fields});e.addKeyBindings();return o}}],[{key:\"getElement\",value:function e(t){return _utils2.default.getFirstElementByClassName(\"tmap-\"+t)}},{key:\"addKeyBindings\",value:function t(){var a=$tm.keycharm({container:_utils2.default.getFirstElementByClassName(\"tc-modal\")});var l=/tmap-triggers-(.+?)-on-(.+?)(?:\\s|$)/;var i=document.getElementsByClassName(\"tmap-trigger-field\");var r=function t(r){var n=i[r].className.split(\" \");var u=function t(i){var r=n[i].match(l);if(!r){return\"continue\"}var u=r[1];var s=r[2];var o=e.getElement(u);if(!o){return\"continue\"}a.bind(s,function(){if(document.getElementsByClassName(n[i]).length){o.click()}})};for(var s=n.length;s--;){var o=u(s);if(o===\"continue\")continue}};for(var n=i.length;n--;){r(n)}}}]);return e}();exports.default=DialogManager;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/DialogManager.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/Fixer": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/Fixer",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/Fixer\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Fixer=function(){function e(t,i,r){_classCallCheck(this,e);this.adapter=t;this.logger=i;this.wiki=$tw.wiki;this.glNTy=r}_createClass(e,[{key:\"moveEdges\",value:function e(t,i){var r=_utils2.default.getTiddlersByPrefix(t);for(var a=0;a<r.length;a++){var u=_utils2.default.getBasename(r[a]);if(u===\"__noname__\"){u=\"tmap:unknown\"}u=_EdgeType2.default.getInstance(u);if(!u.exists()){u.save()}var n=this.wiki.getTiddlerData(r[a]);for(var s=0;s<n.length;s++){n[s].type=(i?i+\":\":\"\")+u.id;this.adapter.insertEdge(n[s])}this.wiki.deleteTiddler(r[a])}}},{key:\"executeUpgrade\",value:function e(t,i,r){if(!_utils2.default.isLeftVersionGreater(t,i)){return}this.logger(\"debug\",\"Upgrading data structure to \"+t);var a=r();_utils2.default.setEntry(env.ref.sysMeta,\"dataStructureState\",t);return a}},{key:\"fixId\",value:function e(){var t=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.executeUpgrade(\"0.9.2\",t.dataStructureState,function(){if(_utils2.default.isLeftVersionGreater(\"0.9.2\",t.originalVersion)){var e=\"$:/plugins/felixhayashi/tiddlymap/config/sys/user\";var i=_utils2.default.getEntry(e,\"field.nodeId\",\"tmap.id\");_utils2.default.moveFieldValues(i,\"tmap.id\",true,false)}})}},{key:\"fix\",value:function e(){var t=this;var i=this.wiki.getTiddlerData(env.ref.sysMeta,{});this.logger(\"debug\",\"Fixer is started\");this.logger(\"debug\",\"Data-structure currently in use: \",i.dataStructureState);this.executeUpgrade(\"0.7.0\",i.dataStructureState,function(){t.moveEdges(\"$:/plugins/felixhayashi/tiddlymap/graph/edges\",null);var e=env.selector.allViews;var i=_utils2.default.getMatches(e);for(var r=0;r<i.length;r++){var a=new _ViewAbstraction2.default(i[r]);t.moveEdges(a.getRoot()+\"/graph/edges\",a)}});this.executeUpgrade(\"0.7.32\",i.dataStructureState,function(){if(!_ViewAbstraction2.default.exists(\"Live View\")){return}var e=new _ViewAbstraction2.default(\"Live View\");e.setNodeFilter(\"[field:title{$:/temp/tmap/currentTiddler}]\",true);e.setConfig({\"refresh-trigger\":null,\"refresh-triggers\":$tw.utils.stringifyList([\"$:/temp/tmap/currentTiddler\"])})});this.executeUpgrade(\"0.9.0\",i.dataStructureState,function(){var e=env.ref.visUserConf;var i=_utils2.default.unflatten(t.wiki.getTiddlerData(e,{}));if(_typeof(i.groups)===\"object\"){var r=_NodeType2.default.getInstance(\"tmap:neighbour\");r.setStyle(i.groups[\"neighbours\"]);r.save();delete i.groups;t.wiki.setTiddlerData(e,i)}});this.fixId();this.executeUpgrade(\"0.9.16\",i.dataStructureState,function(){for(var e=t.glNTy.length;e--;){t.glNTy[e].save(null,true)}});this.executeUpgrade(\"0.10.3\",i.dataStructureState,function(){var e=env.ref.liveTab;if(_utils2.default.getTiddler(e).hasTag(\"$:/tags/SideBar\")){this.wiki.deleteTiddler(e);_utils2.default.setField(e,\"tags\",\"$:/tags/SideBar\")}});this.executeUpgrade(\"0.11.0\",i.dataStructureState,function(){var e=_utils2.default.getMatches(env.selector.allViews);for(var t=e.length;t--;){var i=new _ViewAbstraction2.default(e[t]);var r=i.getEdgeTypeFilter(\"raw\");var a=\"edge_type_namespace\";i.setConfig(a,i.getConfig(a));var u=env.filter.defaultEdgeTypeFilter;if(r){var n=env.path.edgeTypes;r=_utils2.default.replaceAll(r,\"\",[n,n+\"/\",\"[prefix[\"+n+\"]]\",\"[prefix[\"+n+\"/]]\",[\"[suffix[tw-body:link]]\",\"[[tw-body:link]]\"],[\"[suffix[tw-list:tags]]\",\"[[tw-list:tags]]\"],[\"[suffix[tw-list:list]]\",\"[[tw-body:list]]\"],[\"[suffix[tmap:unknown]]\",\"[[tmap:unknown]]\"],[\"[suffix[unknown]]\",\"[[tmap:unknown]]\"]]);u=\"-[prefix[_]] \"+r}i.setEdgeTypeFilter(u)}})}}]);return e}();exports.default=Fixer;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Fixer.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/startup/listener": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/startup/listener",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.startup=exports.synchronous=exports.before=exports.after=exports.platforms=exports.name=undefined;var _NodeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/NodeType\");var _NodeType2=_interopRequireDefault(_NodeType);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Edge=require(\"$:/plugins/felixhayashi/tiddlymap/js/Edge\");var _Edge2=_interopRequireDefault(_Edge);var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/tiddlymap/js/config/vis\");var _vis2=_interopRequireDefault(_vis);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}var handleCancelDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"\")};\n/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/startup/listener\ntype: application/javascript\nmodule-type: startup\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var handleClearTiddler=function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},a=t.paramObject;var r=a.title,d=a.keep;if(!r)return;var i=_utils2.default.getTiddler(r);var l=i?i.fields:{};var s=d?d.split():[];var n={title:r,text:\"\"};for(var p=s.length;p--;){var o=s[p];n[o]=l[o]}$tw.wiki.deleteTiddler(r);$tw.wiki.addTiddler(new $tw.Tiddler(n))};var handleMixTiddlers=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d=r.tiddlers,i=r.output;if(!d||!i)return;var l=$tw.utils.parseStringArray(d);var s=_utils2.default.getMergedTiddlers(l,i);$tw.wiki.addTiddler(s)};var handleConfirmDialog=function e(t){var a=t.param;_utils2.default.setField(a,\"text\",\"1\")};var handleSuppressDialog=function e(t){var a=t.paramObject;var r=a.dialog,d=a.suppress;if(_utils2.default.isTrue(d,false)){_utils2.default.setEntry($tm.ref.sysUserConf,\"suppressedDialogs.\"+r,true)}};var handleDownloadGraph=function e(t){var a=t.paramObject;var r=a.view;var d=$tm.adapter.getGraph({view:r});d.nodes=_utils2.default.convert(d.nodes,\"array\");d.edges=_utils2.default.convert(d.edges,\"array\");var i=\"$:/temp/tmap/export\";_utils2.default.setField(i,\"text\",JSON.stringify(d,null,2));$tw.rootWidget.dispatchEvent({type:\"tm-download-file\",param:i,paramObject:{filename:r+\".json\"}})};var handleConfigureSystem=function e(){var t=_utils2.default.getMatches($tm.selector.allPotentialNodes);var a=$tm.adapter.getEdgesForSet(t);var r=$tw.wiki.getTiddler($tm.path.pluginRoot).fields;var d=$tw.wiki.getTiddlerData($tm.ref.sysMeta);var i=_utils2.default.getTiddler($tm.ref.liveTab).hasTag(\"$:/tags/SideBar\");var l={numberOfNodes:\"\"+t.length,numberOfEdges:\"\"+Object.keys(a).length,pluginVersion:\"v\"+r.version,dataStructureVersion:\"v\"+d.dataStructureState,dialog:{preselects:{liveTab:\"\"+i,\"inherited-style\":JSON.stringify(_vis2.default),\"config.vis\":_utils2.default.getText($tm.ref.visUserConf),\"config.sys\":$tm.config.sys}}};$tm.dialogManager.open(\"globalConfig\",l,function(e,t){if(!e)return;var a=_utils2.default.getPropertiesByPrefix(t.fields,\"config.sys.\",true);$tw.wiki.setTiddlerData($tm.ref.sysUserConf,a);if(_utils2.default.isTrue(t.fields.liveTab,false)){_utils2.default.setField($tm.ref.liveTab,\"tags\",\"$:/tags/SideBar\")}else{$tw.wiki.deleteTiddler($tm.ref.liveTab)}_utils2.default.setField($tm.ref.visUserConf,\"text\",t.fields[\"config.vis\"])})};var handleGenerateWidget=function e(t){var a=t.paramObject,r=a===undefined?{}:a;var d={dialog:{preselects:{\"var.view\":r.view||$tm.misc.defaultViewLabel}}};$tm.dialogManager.open(\"widgetCodeGenerator\",d)};var handleRemoveEdge=function e(t){var a=t.paramObject;$tm.adapter.deleteEdge(a)};var handleCreateEdge=function e(t){var a=t.paramObject;var r=a.from,d=a.to,i=a.force;if(!r||!d)return;if(_utils2.default.tiddlerExists(r)&&_utils2.default.tiddlerExists(d)||i){_utils2.default.addTiddler(d);_utils2.default.addTiddler(r);var l=new _Edge2.default($tm.adapter.makeNode(r).id,$tm.adapter.makeNode(d).id,a.label,a.id);$tm.adapter.insertEdge(l);$tm.notify(\"Edge inserted\")}};var handleOpenTypeManager=function e(t){var a=t.type,r=t.paramObject,d=r===undefined?{}:r;var i=a.match(/tmap:tm-(.*)/)[1];if(i===\"manage-edge-types\"){var l=\"Edge-Type Manager\";var s=$tm.selector.allEdgeTypes;var n=$tm.path.edgeTypes}else{var l=\"Node-Type Manager\";var s=$tm.selector.allNodeTypes;var n=$tm.path.nodeTypes}var p={mode:i,topic:l,searchSelector:s,typeRootPath:n};var o=$tm.dialogManager.open(\"MapElementTypeManager\",p);if(d.type){handleLoadTypeForm({paramObject:{mode:i,id:d.type,output:o.fields[\"output\"]}})}};var handleLoadTypeForm=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=a.output;var l=i;var s=r===\"manage-edge-types\"?_EdgeType2.default.getInstance(d):_NodeType2.default.getInstance(d);s.save(l,true);if(r===\"manage-edge-types\"){var n=$tm.adapter.selectEdgesByType(s);var p=Object.keys(n).length;_utils2.default.setField(l,\"temp.usageCount\",p)}$tw.wiki.addTiddler(new $tw.Tiddler(_utils2.default.getTiddler(l),{typeTRef:s.fullPath,\"temp.idImmutable\":s.isShipped?\"true\":\"\",\"temp.newId\":s.id,\"inherited-style\":JSON.stringify((r===\"manage-edge-types\"?$tm.config.vis.edges:$tm.config.vis.nodes)||{})}));_utils2.default.deleteByPrefix(\"$:/state/tabs/MapElementTypeManager\")};var handleSaveTypeForm=function e(t){var a=t.paramObject;var r=_utils2.default.getTiddler(a.output);if(!r)return;var d=r.fields.id;var i=a.mode;if(_utils2.default.isTrue(r.fields[\"temp.deleteType\"],false)){deleteType(i,d,r)}else{saveType(i,d,r)}};var deleteType=function e(t,a,r){var d=t===\"manage-edge-types\"?_EdgeType2.default.getInstance(a):_NodeType2.default.getInstance(a);$tm.logger(\"debug\",\"Deleting type\",d);if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(d,{action:\"delete\"})}else{$tm.adapter.removeNodeType(d)}$tw.wiki.addTiddler(new $tw.Tiddler({title:_utils2.default.getTiddlerRef(r)}));$tm.notify(\"Deleted type\")};var saveType=function e(t,a,r){var d=_utils2.default.getTiddler(r);var i=t===\"manage-edge-types\"?_EdgeType2.default:_NodeType2.default;var l=new i(a,d);l.save();var s=d.fields[\"temp.newId\"];if(s&&s!==d.fields[\"id\"]){if(t===\"manage-edge-types\"){$tm.adapter._processEdgesWithType(l,{action:\"rename\",newName:s})}else{new _NodeType2.default(s,l).save();$tw.wiki.deleteTiddler(l.fullPath)}_utils2.default.setField(d,\"id\",s)}$tm.notify(\"Saved type data\")};var handleCreateType=function e(t){var a=t.paramObject,r=a.mode,d=a.id,i=d===undefined?\"New type\":d,l=a.output;var s=r===\"manage-edge-types\"?new _EdgeType2.default(i):new _NodeType2.default(i);s.save();handleLoadTypeForm({paramObject:{id:s.id,mode:r,output:l}})};var name=exports.name=\"tmap.listener\";var platforms=exports.platforms=[\"browser\"];var after=exports.after=[\"rootwidget\",\"tmap.caretaker\"];var before=exports.before=[\"story\"];var synchronous=exports.synchronous=true;var startup=exports.startup=function e(){_utils2.default.addTWlisteners({\"tmap:tm-remove-edge\":handleRemoveEdge,\"tmap:tm-load-type-form\":handleLoadTypeForm,\"tmap:tm-save-type-form\":handleSaveTypeForm,\"tmap:tm-create-type\":handleCreateType,\"tmap:tm-create-edge\":handleCreateEdge,\"tmap:tm-suppress-dialog\":handleSuppressDialog,\"tmap:tm-generate-widget\":handleGenerateWidget,\"tmap:tm-download-graph\":handleDownloadGraph,\"tmap:tm-configure-system\":handleConfigureSystem,\"tmap:tm-manage-edge-types\":handleOpenTypeManager,\"tmap:tm-manage-node-types\":handleOpenTypeManager,\"tmap:tm-cancel-dialog\":handleCancelDialog,\"tmap:tm-clear-tiddler\":handleClearTiddler,\"tmap:tm-merge-tiddlers\":handleMixTiddlers,\"tmap:tm-confirm-dialog\":handleConfirmDialog},$tw.rootWidget,undefined)};\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Listener.js.map\n",
            "type": "application/javascript",
            "module-type": "startup"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/services/tracker": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/services/tracker",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var r=t[i];r.enumerable=r.enumerable||false;r.configurable=true;if(\"value\"in r)r.writable=true;Object.defineProperty(e,r.key,r)}}return function(t,i,r){if(i)e(t.prototype,i);if(r)e(t,r);return t}}();/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/services/tracker\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}var Tracker=function(){function e(t){_classCallCheck(this,e);this.wiki=$tw.wiki;this.logger=$tm.logger;this._createIndex()}_createClass(e,[{key:\"_createIndex\",value:function e(){var t=this.tById={};var i=this.idByT={};this.wiki.each(function(e,r){if(_utils2.default.isSystemOrDraft(e)){return}var l=e.fields[\"tmap.id\"];if(!l){l=_utils2.default.genUUID();_utils2.default.setField(e,\"tmap.id\",l)}t[l]=r;i[r]=l})}},{key:\"assignId\",value:function e(t,i){var r=_utils2.default.getTiddler(t);if(!r){throw new ResourceNotFoundException(t)}var l=r.fields[\"tmap.id\"];if(!l||i){l=_utils2.default.genUUID();_utils2.default.setField(r,\"tmap.id\",l);this.logger(\"info\",\"Assigning new id to\",r.fields.title)}this.tById[l]=r.fields.title;this.idByT[r.fields.title]=l;return l}},{key:\"getIdByTiddler\",value:function e(t){return this.idByT[_utils2.default.getTiddlerRef(t)]}},{key:\"getIdsByTiddlers\",value:function e(){return this.idByT}},{key:\"getTiddlersByIds\",value:function e(){return this.tById}},{key:\"getTiddlerById\",value:function e(t){return this.tById[t]}}]);return e}();exports.default=Tracker;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/services/Tracker.js.map\n",
            "type": "application/javascript",
            "module-type": "library"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget",
            "text": "\"use strict\";var _typeof=typeof Symbol===\"function\"&&typeof Symbol.iterator===\"symbol\"?function(e){return typeof e}:function(e){return e&&typeof Symbol===\"function\"&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e};/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapConfigWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function MapConfigWidget(e,t){_widget.widget.call(this);this.initialise(e,t);this.computeAttributes()}MapConfigWidget.prototype=Object.create(_widget.widget.prototype);MapConfigWidget.prototype.render=function(e,t){this.parentDomNode=e;if(!this.domNode){this.domNode=this.document.createElement(\"div\");$tw.utils.addClass(this.domNode,\"tmap-config-widget\");e.insertBefore(this.domNode,t)}if(this.network){this.network.destroy()}this.networkContainer=document.createElement(\"div\");this.domNode.appendChild(this.networkContainer);this.refreshTrigger=this.getAttribute(\"refresh-trigger\");this.pipeTRef=this.getVariable(\"currentTiddler\");this.inheritedFields=$tw.utils.parseStringArray(this.getAttribute(\"inherited\"));this.extensionTField=this.getAttribute(\"extension\");this.mode=this.getAttribute(\"mode\");for(var i=0;i<this.inheritedFields.length;i++){var s=this.inheritedFields[i];var n=_utils2.default.parseFieldData(this.pipeTRef,s,{});if(this.mode===\"manage-edge-types\"){n={edges:n}}else if(this.mode===\"manage-node-types\"){n={nodes:n}}this.inherited=_utils2.default.merge(this.inherited,n)}this.extension=_utils2.default.parseFieldData(this.pipeTRef,this.extensionTField,{});if(this.mode===\"manage-edge-types\"){if(!this.extension.edges){this.extension={edges:this.extension}}}else if(this.mode===\"manage-node-types\"){if(!this.extension.nodes){this.extension={nodes:this.extension}}}var r=_utils2.default.isTrue(this.getAttribute(\"save-only-changes\"));this.changes=r?{}:this.extension;var o={nodes:[],edges:[]};var a=_utils2.default.merge({},this.inherited,this.extension);$tw.utils.extend(a,{configure:{enabled:true,showButton:false,filter:this.getOptionFilter(this.mode)}});this.network=new _vis2.default.Network(this.networkContainer,o,a);this.network.on(\"configChange\",this.handleConfigChange.bind(this));var l=this.parentDomNode.getBoundingClientRect().height;this.parentDomNode.style[\"height\"]=l+\"px\";var h=this.handleResetEvent.bind(this);this.networkContainer.addEventListener(\"reset\",h,false);$tm.registry.push(this);this.enhanceConfigurator()};MapConfigWidget.prototype.handleResetEvent=function(e){var t={};t[e.detail.trigger.path]=null;this.handleConfigChange(t)};MapConfigWidget.prototype.handleConfigChange=function(e){var t=_utils2.default.flatten(this.changes);var i=_utils2.default.flatten(e);var s=Object.keys(_utils2.default.flatten(e))[0];var n=i[s]===null;if(n){t[s]=undefined;this.changes=_utils2.default.unflatten(t)}else{this.changes=_utils2.default.merge(this.changes,e)}var r=_utils2.default.merge({},this.changes);if(this.mode===\"manage-node-types\"){r=r[\"nodes\"]}if(this.mode===\"manage-edge-types\"){r=r[\"edges\"]}_utils2.default.writeFieldData(this.pipeTRef,this.extensionTField,r,$tm.config.sys.jsonIndentation);var o=\"vis-configuration-wrapper\";var a=this.networkContainer.getElementsByClassName(o)[0];a.style.height=a.getBoundingClientRect().height+\"px\";if(n){window.setTimeout(this.refresh.bind(this),0)}else{window.setTimeout(this.enhanceConfigurator.bind(this),50)}};MapConfigWidget.prototype.enhanceConfigurator=function(){var e=\"vis-configuration-wrapper\";var t=this.networkContainer.getElementsByClassName(e)[0].children;var i=[];var s=_utils2.default.flatten(this.changes);for(var n=0;n<t.length;n++){if(!t[n].classList.contains(\"vis-config-item\"))continue;var r=new VisConfElement(t[n],i,n);i.push(r);if(r.level===0)continue;r.setActive(!!s[r.path])}};function VisConfElement(e,t,i){var s=\"getElementsByClassName\";this.el=e;this.labelEl=e[s](\"vis-config-label\")[0]||e[s](\"vis-config-header\")[0]||e;var n=this.labelEl.innerText||this.labelEl.textContent;this.label=n&&n.match(/([a-zA-Z0-9]+)/)[1];this.level=parseInt(e.className.match(/.*vis-config-s(.).*/)[1])||0;this.path=this.label;if(this.level>0){for(var r=i;r--;){var o=t[r];if(o.level<this.level){this.path=o.path+\".\"+this.path;break}}}}VisConfElement.prototype.setActive=function(e){if(!e)return;var t=\"tmap-vis-config-item-\"+(e?\"active\":\"inactive\");$tw.utils.addClass(this.el,t);if(e){var i=document.createElement(\"button\");i.innerHTML=\"reset\";i.className=\"tmap-config-item-reset\";var s=this;i.addEventListener(\"click\",function(e){e.currentTarget.dispatchEvent(new CustomEvent(\"reset\",{detail:{trigger:s},bubbles:true,cancelable:true}))},false);this.el.appendChild(i)}};MapConfigWidget.prototype.getOptionFilter=function(e){var t={nodes:{borderWidth:true,borderWidthSelected:true,widthConstraint:true,heightConstraint:true,color:{background:true,border:true},font:{color:true,size:true},icon:true,labelHighlightBold:false,shadow:true,shape:true,shapeProperties:{borderDashes:true},size:true},edges:{arrows:true,color:true,dashes:true,font:true,labelHighlightBold:false,length:true,selfReferenceSize:false,shadow:true,smooth:true,width:true},interaction:{hideEdgesOnDrag:true,hideNodesOnDrag:true,tooltipDelay:true},layout:{hierarchical:true},manipulation:{initiallyActive:true},physics:{forceAtlas2Based:{gravitationalConstant:true,springLength:true,springConstant:true,damping:true,centralGravity:true}}};if(e===\"manage-edge-types\"){t={edges:t.edges}}else if(e===\"manage-node-types\"){t={nodes:t.nodes}}else{t.edges.arrows=false}return function(e,i){i=i.concat([e]);var s=t;for(var n=0,r=i.length;n<r;n++){if(s[i[n]]===true){return true}else if(s[i[n]]==null){return false}s=s[i[n]]}return false}};MapConfigWidget.prototype.isZombieWidget=function(){return!document.body.contains(this.parentDomNode)};MapConfigWidget.prototype.destruct=function(){if(this.network){this.network.destroy()}};MapConfigWidget.prototype.refresh=function(e){if(this.isZombieWidget()||!this.network)return;if(!e||e[this.refreshTrigger]){this.refreshSelf();return true}};MapConfigWidget.prototype.setNull=function(e){for(var t in e){if(_typeof(e[t])==\"object\"){this.setNull(e[t])}else{e[t]=undefined}}};exports[\"tmap-config\"]=MapConfigWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/ConfigurationWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem",
            "text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidgetItem\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListItemWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);var i=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r));i.arrows=$tm.misc.arrows;return i}_createClass(t,[{key:\"execute\",value:function e(){var t=this.parseTreeNode;var r=$tm.tracker.getTiddlerById(t.neighbour.id);var i=_utils2.default.flatten(t.edge);for(var o in i){if(typeof i[o]===\"string\"){this.setVariable(\"edge.\"+o,i[o])}}this.setVariable(\"currentTiddler\",r);this.setVariable(\"neighbour\",r);var n=$tm.indeces.allETy[i.type];var s=i.to===t.neighbour.id?\"to\":\"from\";var a=s;if(n.biArrow){a=\"bi\"}else{if(s===\"to\"&&n.invertedArrow){a=\"from\"}else if(s===\"from\"&&n.invertedArrow){a=\"to\"}}this.setVariable(\"direction\",a);this.setVariable(\"directionSymbol\",a===\"bi\"?this.arrows.bi:a===\"from\"?this.arrows.in:this.arrows.out);this.makeChildWidgets()}},{key:\"refresh\",value:function e(t){return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-edgelistitem\"]=EdgeListItemWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListItemWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget",
            "text": "\"use strict\";var _createClass=function(){function e(e,t){for(var r=0;r<t.length;r++){var i=t[r];i.enumerable=i.enumerable||false;i.configurable=true;if(\"value\"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,r,i){if(r)e(t.prototype,r);if(i)e(t,i);return t}}();var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/EdgeListWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var EdgeListWidget=function(e){_inherits(t,e);function t(e,r){_classCallCheck(this,t);return _possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,r))}_createClass(t,[{key:\"render\",value:function e(t,r){this.parentDomNode=t;this.computeAttributes();this.execute();this.renderChildren(t,r)}},{key:\"execute\",value:function e(){var t=[this.getVariable(\"currentTiddler\")];var r=this.getAttribute(\"filter\",\"\");var i=this.getAttribute(\"direction\",\"both\");var s=$tm.indeces.allETy;var n=_utils2.default.getEdgeTypeMatches(r,s);var u={typeWL:_utils2.default.getLookupTable(n),direction:i};var o=$tm.adapter.getNeighbours(t,u),a=o.nodes,l=o.edges;var f=[];for(var c in l){var h=l[c];var p=a[h.to]||a[h.from];if(!p){continue}f.push({type:\"tmap-edgelistitem\",edge:h,typeWL:u.typeWL,neighbour:p,children:this.parseTreeNode.children})}if(!f.length){this.wasEmpty=true;f=this.getEmptyMessage()}else if(this.wasEmpty){this.removeChildDomNodes()}this.makeChildWidgets(f)}},{key:\"getEmptyMessage\",value:function e(){var t=this.wiki.parseText(\"text/vnd.tiddlywiki\",this.getAttribute(\"emptyMessage\",\"\"),{parseAsInline:true});return t?t.tree:[]}},{key:\"refresh\",value:function e(t){var r=this.computeAttributes();if(_utils2.default.hasElements(r)){this.refreshSelf();return true}for(var i in t){if(!_utils2.default.isSystemOrDraft(i)){this.refreshSelf();return true}}return this.refreshChildren(t)}}]);return t}(_widget.widget);exports[\"tmap-connections\"]=EdgeListWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/EdgeListWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget": {
            "title": "$:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget",
            "text": "\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.tiddlymap=exports.tmap=undefined;var _extends=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var i=arguments[t];for(var a in i){if(Object.prototype.hasOwnProperty.call(i,a)){e[a]=i[a]}}}return e};var _createClass=function(){function e(e,t){for(var i=0;i<t.length;i++){var a=t[i];a.enumerable=a.enumerable||false;a.configurable=true;if(\"value\"in a)a.writable=true;Object.defineProperty(e,a.key,a)}}return function(t,i,a){if(i)e(t.prototype,i);if(a)e(t,a);return t}}();var _CallbackManager=require(\"$:/plugins/felixhayashi/tiddlymap/js/CallbackManager\");var _CallbackManager2=_interopRequireDefault(_CallbackManager);var _ViewAbstraction=require(\"$:/plugins/felixhayashi/tiddlymap/js/ViewAbstraction\");var _ViewAbstraction2=_interopRequireDefault(_ViewAbstraction);var _EdgeType=require(\"$:/plugins/felixhayashi/tiddlymap/js/EdgeType\");var _EdgeType2=_interopRequireDefault(_EdgeType);var _Popup=require(\"$:/plugins/felixhayashi/tiddlymap/js/Popup\");var _Popup2=_interopRequireDefault(_Popup);var _vis=require(\"$:/plugins/felixhayashi/vis/vis.js\");var _vis2=_interopRequireDefault(_vis);var _widget=require(\"$:/core/modules/widgets/widget.js\");var _utils=require(\"$:/plugins/felixhayashi/tiddlymap/js/utils\");var _utils2=_interopRequireDefault(_utils);var _SelectionRectangle=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/SelectionRectangle\");var _SelectionRectangle2=_interopRequireDefault(_SelectionRectangle);var _environment=require(\"$:/plugins/felixhayashi/tiddlymap/js/lib/environment\");var env=_interopRequireWildcard(_environment);function _interopRequireWildcard(e){if(e&&e.__esModule){return e}else{var t={};if(e!=null){for(var i in e){if(Object.prototype.hasOwnProperty.call(e,i))t[i]=e[i]}}t.default=e;return t}}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function _defineProperty(e,t,i){if(t in e){Object.defineProperty(e,t,{value:i,enumerable:true,configurable:true,writable:true})}else{e[t]=i}return e}function _toConsumableArray(e){if(Array.isArray(e)){for(var t=0,i=Array(e.length);t<e.length;t++){i[t]=e[t]}return i}else{return Array.from(e)}}function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError(\"Cannot call a class as a function\")}}function _possibleConstructorReturn(e,t){if(!e){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return t&&(typeof t===\"object\"||typeof t===\"function\")?t:e}function _inherits(e,t){if(typeof t!==\"function\"&&t!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+typeof t)}e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:false,writable:true,configurable:true}});if(t)Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t}/* @preserve TW-Guard */\n/*\\\n\ntitle: $:/plugins/felixhayashi/tiddlymap/js/widget/MapWidget\ntype: application/javascript\nmodule-type: widget\n\n@preserve\n\n\\*/\n/* @preserve TW-Guard */var MapWidget=function(e){_inherits(t,e);function t(e,i){_classCallCheck(this,t);var a=_possibleConstructorReturn(this,(t.__proto__||Object.getPrototypeOf(t)).call(this,e,i));a.getAttr=a.getAttribute;a.isDebug=_utils2.default.isTrue($tm.config.sys.debug,false);_utils2.default.bindTo(a,[\"constructTooltip\",\"handleResizeEvent\",\"handleClickEvent\",\"handleCanvasKeyup\",\"handleCanvasKeydown\",\"handleCanvasScroll\",\"handleCanvasMouseMove\",\"handleWidgetKeyup\",\"handleWidgetKeydown\",\"handleTriggeredRefresh\",\"handleContextMenu\"]);a.callbackManager=new _CallbackManager2.default;a.computeAttributes();a.editorMode=a.getAttr(\"editor\");a.clickToUse=_utils2.default.isTrue(a.getAttr(\"click-to-use\"),false);a.id=a.getAttr(\"object-id\")||a.getStateQualifier();a.widgetPopupsPath=$tm.path.tempPopups+\"/\"+a.id;if(a.editorMode){_utils2.default.addTWlisteners({\"tmap:tm-create-view\":a.handleCreateView,\"tmap:tm-rename-view\":a.handleRenameView,\"tmap:tm-delete-view\":a.handleDeleteView,\"tmap:tm-delete-element\":a.handleDeleteElement,\"tmap:tm-edit-view\":a.handleEditView,\"tmap:tm-generate-widget\":a.handleGenerateWidget,\"tmap:tm-toggle-central-topic\":a.handleSetCentralTopic,\"tmap:tm-save-canvas\":a.handleSaveCanvas},a,a)}_utils2.default.addTWlisteners({\"tmap:tm-focus-node\":a.handleFocusNode,\"tmap:tm-reset-focus\":a.repaintGraph,\"tmap:tm-neighbourhood-reset-trace\":function e(){a.initAndRenderGraph(a.graphDomNode)}},a,a);a.visListeners={click:a.handleVisSingleClickEvent,doubleClick:a.handleVisDoubleClickEvent,stabilized:a.handleVisStabilizedEvent,selectNode:a.handleVisSelectNode,deselectNode:a.handleVisDeselectNode,dragStart:a.handleVisDragStart,dragEnd:a.handleVisDragEnd,hoverNode:a.handleVisHoverElement,hoverEdge:a.handleVisHoverElement,blurNode:a.handleVisBlurElement,blurEdge:a.handleVisBlurElement,beforeDrawing:a.handleVisBeforeDrawing,afterDrawing:a.handleVisAfterDrawing,stabilizationProgress:a.handleVisLoading,stabilizationIterationsDone:a.handleVisLoadingDone};a.windowDomListeners={resize:[a.handleResizeEvent,false],click:[a.handleClickEvent,false],mousemove:[a.handleCanvasMouseMove,true]};a.canvasDomListeners={keyup:[a.handleCanvasKeyup,true],keydown:[a.handleCanvasKeydown,true],mousewheel:[a.handleCanvasScroll,true],DOMMouseScroll:[a.handleCanvasScroll,true],contextmenu:[a.handleContextMenu,true],MozMousePixelScroll:[a.handleExtraCanvasScroll,true]};a.widgetDomListeners={keyup:[a.handleWidgetKeyup,true],keydown:[a.handleWidgetKeydown,true]};a.conVector={from:null,to:null};return a}_createClass(t,[{key:\"handleConnectionEvent\",value:function e(t,i){var a=this;var s=this.view.getEdgeTypeFilter();var r={fromLabel:$tm.adapter.selectNodeById(t.from).label,toLabel:$tm.adapter.selectNodeById(t.to).label,view:this.view.getLabel(),eTyFilter:s.raw};$tm.dialogManager.open(\"getEdgeType\",r,function(e,r){if(e){var n=_utils2.default.getText(r);var o=_EdgeType2.default.getInstance(n);if(!o.namespace){var l=_EdgeType2.default.getIdParts(o.id),d=l.marker,h=l.name;var u=a.view.getConfig(\"edge_type_namespace\");o=_EdgeType2.default.getInstance(_EdgeType2.default.getId(d,u,h))}if(!o.exists()){o.save()}t.type=o.id;$tm.adapter.insertEdge(t);a.isPreventZoomOnNextUpdate=true;if(!a.view.isEdgeTypeVisible(o)){$tm.dialogManager.open(\"edgeNotVisible\",{type:o.id,view:a.view.getLabel(),eTyFilter:s.pretty})}}if(typeof i===\"function\"){i(e)}})}},{key:\"checkForFreshInstall\",value:function e(){if(!_utils2.default.getEntry($tm.ref.sysMeta,\"showWelcomeMessage\",true)){return}_utils2.default.setEntry($tm.ref.sysMeta,\"showWelcomeMessage\",false);var t={dialog:{preselects:{\"config.storyview\":\"true\",\"config.navigation\":\"true\",\"config.sidebar\":\"true\",\"config.demo\":\"true\"}}};$tm.dialogManager.open(\"welcome\",t,function(e,t){var i=_utils2.default.getPropertiesByPrefix(t.fields,\"config.\",true);if(i[\"storyview\"]&&_utils2.default.tiddlerExists(\"$:/plugins/felixhayashi/topstoryview\")){_utils2.default.setText(\"$:/view\",\"top\")}if(i[\"navigation\"]){_utils2.default.setText(\"$:/config/Navigation/openLinkFromInsideRiver\",\"above\");_utils2.default.setText(\"$:/config/Navigation/openLinkFromOutsideRiver\",\"top\")}if(i[\"sidebar\"]){_utils2.default.setText(\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\",\"fixed-fluid\")}if(i[\"demo\"]){var a=$tm.misc.defaultViewLabel;var s=$tm.adapter.insertNode({label:\"Have fun with\",x:0,y:0},a);var r=$tm.adapter.insertNode({label:\"TiddlyMap!!\",x:100,y:100},a);$tm.adapter.insertEdge({from:s.id,to:r.id})}if(Object.keys(i).length){_utils2.default.touch(\"$:/plugins/felixhayashi/tiddlymap\")}})}},{key:\"openStandardConfirmDialog\",value:function e(t,i){var a={message:i};$tm.dialogManager.open(\"getConfirmation\",a,t)}},{key:\"logger\",value:function e(t,i){if(this.isDebug){var a=Array.prototype.slice.call(arguments,1);a.unshift(\"@\"+this.id);a.unshift(t);$tm.logger.apply(this,a)}}},{key:\"render\",value:function e(t,i){this.parentDomNode=t;this.domNode=this.document.createElement(\"div\");t.insertBefore(this.domNode,i);this.registerClassNames(this.domNode);this.viewHolderRef=this.getViewHolderRef();this.view=this.getView();this.graphBarDomNode=this.document.createElement(\"div\");$tw.utils.addClass(this.graphBarDomNode,\"tmap-topbar\");this.domNode.appendChild(this.graphBarDomNode);this.graphDomNode=this.document.createElement(\"div\");this.domNode.appendChild(this.graphDomNode);$tw.utils.addClass(this.graphDomNode,\"tmap-vis-graph\");if(_utils2.default.isPreviewed(this)){$tw.utils.addClass(this.domNode,\"tmap-static-mode\");this.renderPreview(this.graphBarDomNode,this.graphDomNode)}else{this.renderFullWidget(this.domNode,this.graphBarDomNode,this.graphDomNode);var a=this.document.createElement(\"canvas\");$tw.utils.addClass(a,\"tmap-download-canvas\");this.domNode.appendChild(a)}}},{key:\"renderPreview\",value:function e(t,i){var a=this.view.snapshotTRef;var s=_utils2.default.getTiddler(a);var r=this.document.createElement(\"span\");r.innerHTML=this.view.getLabel();r.className=\"tmap-view-label\";t.appendChild(r);if(s){var n=_utils2.default.getTiddlerNode(this.view.getRoot());n.children.push(_utils2.default.getTranscludeNode(a));this.makeChildWidgets([n]);this.renderChildren(i,i.firstChild)}else{$tw.utils.addClass(i,\"tmap-graph-placeholder\")}}},{key:\"renderFullWidget\",value:function e(t,i,a){_utils2.default.setDomListeners(\"add\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"add\",t,this.widgetDomListeners);this.addLoadingBar(this.domNode);this.tooltip=new _Popup2.default(this.domNode,{className:\"tmap-tooltip\",showDelay:$tm.config.sys.popups.delay});this.contextMenu=new _Popup2.default(this.domNode,{className:\"tmap-context-menu\",showDelay:0,hideOnClick:true,leavingDelay:999999});this.sidebar=_utils2.default.getFirstElementByClassName(\"tc-sidebar-scrollable\");this.isInSidebar=this.sidebar&&!this.domNode.isTiddlyWikiFakeDom&&this.sidebar.contains(this.domNode);this.rebuildEditorBar(i);this.reloadRefreshTriggers();this.initAndRenderGraph(a);$tm.registry.push(this);this.checkForFreshInstall();if(this.id===$tm.misc.mainEditorId){var s=$tm.url;if(s&&s.query[\"tmap-enlarged\"]){this.toggleEnlargedMode(s.query[\"tmap-enlarged\"]);this.setView(s.query[\"tmap-view\"])}}}},{key:\"registerClassNames\",value:function e(t){var i=$tw.utils.addClass;i(t,\"tmap-widget\");if(this.clickToUse){i(t,\"tmap-click-to-use\")}if(this.getAttr(\"editor\")===\"advanced\"){i(t,\"tmap-advanced-editor\")}if(this.getAttr(\"design\")===\"plain\"){i(t,\"tmap-plain-design\")}if(!_utils2.default.isTrue(this.getAttr(\"show-buttons\"),true)){i(t,\"tmap-no-buttons\")}if(this.getAttr(\"class\")){i(t,this.getAttr(\"class\"))}}},{key:\"addLoadingBar\",value:function e(t){this.graphLoadingBarDomNode=this.document.createElement(\"progress\");$tw.utils.addClass(this.graphLoadingBarDomNode,\"tmap-loading-bar\");t.appendChild(this.graphLoadingBarDomNode)}},{key:\"rebuildEditorBar\",value:function e(){this.removeChildDomNodes();var t=this.view;var i=\"tmap-unicode-button\";var a=i+\" tmap-active-button\";var s={widgetQualifier:this.getStateQualifier(),widgetTempPath:this.widgetTempPath,widgetPopupsPath:this.widgetPopupsPath,isViewBound:String(this.isViewBound()),viewRoot:t.getRoot(),viewLabel:t.getLabel(),viewHolder:this.getViewHolderRef(),edgeTypeFilter:t.edgeTypeFilterTRef,allEdgesFilter:$tm.selector.allEdgeTypes,isShowNeighbourhood:String(t.isEnabled(\"neighbourhood_scope\")),tracingBtnClass:t.isEnabled(\"neighbourhood_trace_clicks\")?a:i,neighScopeBtnClass:t.isEnabled(\"neighbourhood_scope\")?a:i,rasterMenuBtnClass:t.isEnabled(\"raster\")?a:i};for(var r in s){this.setVariable(r,s[r])}var n=_utils2.default.getTiddlerNode(t.getRoot());if(this.editorMode===\"advanced\"){n.children.push(_utils2.default.getTranscludeNode($tm.ref.graphBar))}else{var o=_utils2.default.getElementNode(\"span\",\"tmap-view-label\",t.getLabel());n.children.push(o)}n.children.push(_utils2.default.getTranscludeNode($tm.ref.focusButton));this.makeChildWidgets([n]);this.renderChildren(this.graphBarDomNode,this.graphBarDomNode.firstChild)}},{key:\"refresh\",value:function e(t){return false}},{key:\"update\",value:function e(t){if(!this.network||this.isZombieWidget()||_utils2.default.isPreviewed(this)){return}var i=t.changedTiddlers;this.callbackManager.refresh(i);if(this.isViewSwitched(i)||this.hasChangedAttributes()||t[env.path.options]||i[this.view.getRoot()]){this.logger(\"warn\",\"View switched or config changed\");this.isPreventZoomOnNextUpdate=false;this.view=this.getView(true);this.reloadRefreshTriggers();this.trace=_utils2.default.makeHashMap();this.rebuildEditorBar();this.reloadBackgroundImage();this.initAndRenderGraph(this.graphDomNode)}else{var a=this.view.update(t);if(a){this.logger(\"warn\",\"View components modified\");this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}else{if(t[env.path.nodeTypes]||this.hasChangedElements(i)){this.rebuildGraph()}this.refreshChildren(i)}}}},{key:\"hidePopups\",value:function e(t,i){this.tooltip.hide(t,i);this.contextMenu.hide(0,true)}},{key:\"reloadRefreshTriggers\",value:function e(){this.callbackManager.remove(this.refreshTriggers);var t=this.getAttr(\"refresh-triggers\")||this.view.getConfig(\"refresh-triggers\");this.refreshTriggers=$tw.utils.parseStringArray(t)||[];this.logger(\"debug\",\"Registering refresh trigger\",this.refreshTriggers);for(var i=this.refreshTriggers.length;i--;){this.callbackManager.add(this.refreshTriggers[i],this.handleTriggeredRefresh,false)}}},{key:\"rebuildGraph\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.resetFocus;if(_utils2.default.isPreviewed(this)){return}this.logger(\"debug\",\"Rebuilding graph\");this.hidePopups(0,true);this.hasNetworkStabilized=false;var a=this.rebuildGraphData();if(a.changedNodes.withoutPosition.length){i=i||{delay:1e3,duration:1e3};if(!this.view.isEnabled(\"physics_mode\")){var s=this.visOptions.physics;s[s.solver].centralGravity=.25;this.network.setOptions(this.visOptions)}}if(!_utils2.default.hasElements(this.graphData.nodesById)){return}if(i){var r=this.isPreventZoomOnNextUpdate==null?false:typeof this.isPreventZoomOnNextUpdate===\"number\"?this.isPreventZoomOnNextUpdate>Date.now():this.isPreventZoomOnNextUpdate;if(!r){this.network.stabilize();this.resetFocus=i}if(typeof this.isPreventZoomOnNextUpdate!==\"number\"){this.isPreventZoomOnNextUpdate=false}}}},{key:\"getContainer\",value:function e(){return this.domNode}},{key:\"rebuildGraphData\",value:function e(){var t=this;$tm.start(\"Reloading Network\");var i={view:this.view,matches:_utils2.default.getMatches(this.view.getNodeFilter(\"compiled\"))};if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){var a=i.matches;var s=Object.keys(this.trace);var r=[].concat(_toConsumableArray(a.filter(function(e){return!t.trace[e]})),_toConsumableArray(s));i.matches=r;i.includeNeighboursOf=this.view.isEnabled(\"neighbourhood_include_traced_node_neighbours\")?function(e){return r.includes(e)}:function(e){return a.includes(e)}}var n=$tm.adapter.getGraph(i);var o=_utils2.default.refreshDataSet(this.graphData.nodes,n.nodes);var l=_utils2.default.refreshDataSet(this.graphData.edges,n.edges);this.graphData.nodesById=n.nodes;this.graphData.edgesById=n.edges;_utils2.default.setField(\"$:/temp/tmap/nodes/\"+this.view.getLabel(),\"list\",$tm.adapter.getTiddlersByIds(n.nodes));$tm.stop(\"Reloading Network\");return{changedEdges:l,changedNodes:o}}},{key:\"isViewBound\",value:function e(){return _utils2.default.startsWith(this.getViewHolderRef(),$tm.path.localHolders)}},{key:\"isViewSwitched\",value:function e(t){return!_ViewAbstraction2.default.exists(this.view)||t[this.getViewHolderRef()]}},{key:\"hasChangedAttributes\",value:function e(){return Object.keys(this.computeAttributes()).length}},{key:\"hasChangedElements\",value:function e(t){var i=[];var a=this.graphData.nodesById;var s=this.view.isEnabled(\"neighbourhood_scope\");for(var r in t){if(_utils2.default.isSystemOrDraft(r)){continue}if(a[$tm.adapter.getId(r)]||s){return true}if(t[r].modified){i.push(r)}}if(i.length){var n=this.view.getNodeFilter(\"compiled\");var o=_utils2.default.getMatches(n,i);return!!o.length}}},{key:\"initAndRenderGraph\",value:function e(t){var i=this;if(this.network){this._destructVis()}this.logger(\"info\",\"Initializing and rendering the graph\");if(!this.isInSidebar){this.callbackManager.add(\"$:/state/sidebar\",this.handleResizeEvent)}this.visOptions=this.getVisOptions();this.graphData={nodes:new _vis2.default.DataSet,edges:new _vis2.default.DataSet,nodesById:_utils2.default.makeHashMap(),edgesById:_utils2.default.makeHashMap()};this.tooltip.setEnabled(_utils2.default.isTrue($tm.config.sys.popups.enabled,true));this.trace=_utils2.default.makeHashMap();this.network=new _vis2.default.Network(t,this.graphData,this.visOptions);this.canvas=t.getElementsByTagName(\"canvas\")[0];this.networkDomNode=_utils2.default.getFirstElementByClassName(\"vis-network\",t,true);this.canvas.tabIndex=0;for(var a in this.visListeners){this.network.on(a,this.visListeners[a].bind(this))}this.addGraphButtons({\"fullscreen-button\":function e(){i.toggleEnlargedMode(\"fullscreen\")},\"halfscreen-button\":function e(){i.toggleEnlargedMode(\"halfscreen\")}});_utils2.default.setDomListeners(\"add\",this.canvas,this.canvasDomListeners);this.reloadBackgroundImage();this.rebuildGraph({resetFocus:{delay:0,duration:0}});this.handleResizeEvent();this.canvas.focus();if(this.isLiveView()&&this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[_utils2.default.getText(this.refreshTriggers[0])]=true}}},{key:\"handleCanvasKeyup\",value:function e(t){var i=this;var a=this.network.getSelectedNodes();if(t.ctrlKey){t.preventDefault();if(t.keyCode===88){if(this.editorMode){this.handleAddNodesToClipboard(\"move\")}else{$tm.notify(\"Map is read only!\")}}else if(t.keyCode===67){this.handleAddNodesToClipboard(\"copy\")}else if(t.keyCode===86){this.handlePasteNodesFromClipboard()}else if(t.keyCode===65){var s=Object.keys(this.graphData.nodesById);this.network.selectNodes(s)}else if(t.keyCode===49||t.keyCode===50){if(a.length!==1)return;var r=t.keyCode===49?\"from\":\"to\";$tm.notify(_utils2.default.ucFirst(r)+\"-part selected\");this.conVector[r]=a[0];if(this.conVector.from&&this.conVector.to){this.handleConnectionEvent(this.conVector,function(){i.conVector={from:null,to:null}})}}}else{if(t.keyCode===13){if(a.length!==1)return;this.openTiddlerWithId(a[0])}}}},{key:\"handleCanvasKeydown\",value:function e(t){if(t.altKey||t.metaKey){t.preventDefault();if(t.keyCode>=48&&t.keyCode<=57){var i=String.fromCharCode(t.keyCode);this.view.setConfig(\"neighbourhood_scope\",i)}}else{if(t.keyCode===46){t.preventDefault();this.handleRemoveElements(this.network.getSelection())}}}},{key:\"handleDeleteElement\",value:function e(t){var i=t.paramObject.id;var a=i?[i]:this.network.getSelectedNodes();this.handleRemoveElements({nodes:a})}},{key:\"handleCanvasMouseMove\",value:function e(t){var i=this.network;if(!(t.ctrlKey&&t.buttons)){if(this.selectRect){this.selectRect=null;var a=i.getSelectedNodes();$tm.notify(a.length+\" nodes selected\");i.redraw()}return}t.preventDefault();t.stopPropagation();if(!this.domNode.contains(t.target)){return}var s=i.DOMtoCanvas({x:t.offsetX,y:t.offsetY});if(!this.selectRect){this.selectRect=new _SelectionRectangle2.default(s.x,s.y)}this.selectRect.span(s.x,s.y);var r=i.getPositions();var n=i.getSelectedNodes();for(var o in r){if(this.selectRect.isPointWithin(r[o])&&!_utils2.default.inArray(o,n)){n.push(o)}}i.selectNodes(n);this.assignActiveStyle(n);i.redraw()}},{key:\"handleCanvasScroll\",value:function e(t){var i=!!(this.isInSidebar||t.ctrlKey||this.enlargedMode||this.clickToUse&&this.networkDomNode.classList.contains(\"vis-active\"));var a=this.visOptions.interaction;var s=i===a.zoomView;if(i||!s){t.preventDefault()}if(!s){t.stopPropagation();a.zoomView=i;this.network.setOptions({interaction:{zoomView:i}});return false}}},{key:\"handleExtraCanvasScroll\",value:function e(t){t.preventDefault()}},{key:\"handleContextMenu\",value:function e(t){var i=this;t.preventDefault();var a=this.network;this.hidePopups(0,true);var s=a.getNodeAt({x:t.offsetX,y:t.offsetY});if(!s)return;var r=a.getSelectedNodes();if(!_utils2.default.inArray(s,r)){r=[s];a.selectNodes(r)}this.contextMenu.show(r,function(e,t){var a=e.length>1?\"multi\":\"single\";var s=\"$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node\";_utils2.default.registerTransclude(i,\"contextMenuWidget\",s);i.contextMenuWidget.setVariable(\"mode\",a);i.contextMenuWidget.render(t)})}},{key:\"handleWidgetKeyup\",value:function e(t){}},{key:\"handleWidgetKeydown\",value:function e(t){if(t.ctrlKey){t.preventDefault();if(t.keyCode===70){t.preventDefault();var i=this.widgetPopupsPath+\"/focus\";_utils2.default.setText(i,_utils2.default.getText(i)?\"\":\"1\")}else{return}}else if(t.keyCode===120){t.preventDefault();this.toggleEnlargedMode(\"halfscreen\")}else if(t.keyCode===121){t.preventDefault();this.toggleEnlargedMode(\"fullscreen\")}else if(t.keyCode===27){t.preventDefault();_utils2.default.deleteByPrefix(this.widgetPopupsPath)}else{return}this.canvas.focus()}},{key:\"handlePasteNodesFromClipboard\",value:function e(){if(!this.editorMode){$tm.notify(\"Map is read only!\");return}if(!$tm.clipBoard||$tm.clipBoard.type!==\"nodes\"){$tm.notify(\"TiddlyMap clipboad is empty!\")}var t=$tm.clipBoard.nodes;var i=Object.keys(t);for(var a=i.length;a--;){var s=i[a];if(this.graphData.nodesById[s]){continue}this.view.addNode(t[s]);this.graphData.nodes.update({id:s})}this.network.selectNodes(i);this.rebuildGraph({resetFocus:{delay:0,duration:0}});$tm.notify(\"pasted \"+i.length+\" nodes into map.\")}},{key:\"handleAddNodesToClipboard\",value:function e(t){var i=this.network.getSelectedNodes();if(!i.length){return}$tm.clipBoard={type:\"nodes\",nodes:this.graphData.nodes.get(i,{returnType:\"Object\"})};$tm.notify(\"Copied \"+i.length+\" nodes to clipboard\");if(t===\"move\"){for(var a=i.length;a--;){this.view.removeNode(i[a])}}this.isPreventZoomOnNextUpdate=true}},{key:\"getVisOptions\",value:function e(){var t=this;var i=$tm.config.vis;var a=_utils2.default.parseJSON(this.view.getConfig(\"vis\"))||{};var s=a.layout||{},r=s.hierarchical;var n={layout:{hierarchical:{enabled:r===undefined||r===null?false:typeof r===\"boolean\"?r:r.enabled!==false}}};var o=_utils2.default.merge({},i,_utils2.default.merge(a,n));o.clickToUse=this.clickToUse;o.manipulation.enabled=!!this.editorMode;o.manipulation.deleteNode=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.deleteEdge=function(e,i){t.handleRemoveElements(e);t.resetVisManipulationBar(i)};o.manipulation.addEdge=function(e,i){t.handleConnectionEvent(e);t.resetVisManipulationBar(i)};o.manipulation.addNode=function(e,i){t.handleInsertNode(e);t.resetVisManipulationBar(i)};o.manipulation.editNode=function(e,i){t.handleEditNode(e);t.resetVisManipulationBar(i)};o.interaction.zoomView=!!(this.isInSidebar||this.enlargedMode);o.manipulation.editEdge=false;var l=o.physics;l[l.solver]=l[l.solver]||{};l.stabilization.iterations=1e3;this.logger(\"debug\",\"Loaded graph options\",o);return o}},{key:\"resetVisManipulationBar\",value:function e(t){if(t){t(null)}this.network.disableEditMode();this.network.enableEditMode()}},{key:\"isVisInEditMode\",value:function e(){return this.graphDomNode.getElementsByClassName(\"vis-button vis-back\").length>0}},{key:\"isLiveView\",value:function e(){return this.id===\"live_tab\"}},{key:\"handleCreateView\",value:function e(){var t=this;var i={view:this.view.getLabel()};$tm.dialogManager.open(\"createView\",i,function(e,i){if(!e)return;var a=_utils2.default.getField(i,\"name\");var s=_utils2.default.getField(i,\"clone\",false);if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\");return}if(s&&t.isLiveView()){$tm.notify(\"Forbidden to clone the live view!\");return}var r=new _ViewAbstraction2.default(a,{isCreate:true,protoView:s?t.view:null});t.setView(r)})}},{key:\"handleRenameView\",value:function e(){var t=this;if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var i=this.view.getOccurrences();var a={count:i.length.toString(),refFilter:_utils2.default.joinAndWrap(i,\"[[\",\"]]\")};$tm.dialogManager.open(\"renameView\",a,function(e,i){if(!e){return}var a=_utils2.default.getText(i);if(!a){$tm.notify(\"Invalid name!\")}else if(_ViewAbstraction2.default.exists(a)){$tm.notify(\"Forbidden! View already exists!\")}else{t.view.rename(a);t.setView(t.view)}})}},{key:\"handleEditView\",value:function e(){var t=this;var i=JSON.stringify($tm.config.vis);var a=this.graphData;var s=this.view.getConfig();var r={\"filter.prettyNodeFltr\":this.view.getNodeFilter(\"pretty\"),\"filter.prettyEdgeFltr\":this.view.getEdgeTypeFilter(\"pretty\"),\"inherited-style\":i};var n={view:this.view.getLabel(),createdOn:this.view.getCreationDate(true),numberOfNodes:Object.keys(a.nodesById).length.toString(),numberOfEdges:Object.keys(a.edgesById).length.toString(),dialog:{preselects:$tw.utils.extend({},s,r)}};$tm.dialogManager.open(\"configureView\",n,function(e,i){if(!e){return}var a=_utils2.default.getPropertiesByPrefix(i.fields,\"config.\",true);var s=t.view.getConfig(\"background_image\");t.view.setConfig(a);if(a[\"physics_mode\"]&&!t.view.isEnabled(\"physics_mode\")){t.view.saveNodePositions(t.network.getPositions())}var r=t.view.getConfig(\"background_image\");if(r&&r!==s){$tm.notify(\"Background changed! You may need to zoom out a bit.\")}var n=_utils2.default.getField(i,\"filter.prettyNodeFltr\",\"\");var o=_utils2.default.getField(i,\"filter.prettyEdgeFltr\",\"\");t.view.setNodeFilter(n);t.view.setEdgeTypeFilter(o)})}},{key:\"handleSaveCanvas\",value:function e(){var t=this;var i=\"$:/temp/tmap/snapshot\";this.createAndSaveSnapshot(100,100,i);var a=this.view.getLabel()+\".png\";var s={dialog:{snapshot:i,view:this.view.getLabel(),preselects:{width:this.canvas.width.toString(),height:this.canvas.height.toString(),name:a,action:\"download\"}}};$tm.dialogManager.open(\"saveCanvas\",s,function(e,a){if(!e)return;var r=a.fields.width||s.dialog.preselects.width;var n=a.fields.height||s.dialog.preselects.height;t.createAndSaveSnapshot(r,n,i);var o=a.fields.name||s.dialog.preselects.imageName;var l=a.fields.action;if(l===\"download\"){t.handleDownloadSnapshot(r,n,o)}else if(l===\"wiki\"){_utils2.default.cp(i,o,true);t.dispatchEvent({type:\"tm-navigate\",navigateTo:o})}else if(l===\"placeholder\"){t.view.addPlaceholder(i)}$tw.wiki.deleteTiddler(\"$:/temp/tmap/snapshot\")})}},{key:\"handleDownloadSnapshot\",value:function e(t,i,a){var s=this.document.createElement(\"a\");var r=this.view.getLabel();s.download=a;s.href=this.getCanvasAsBase64({size:{width:t,height:i}});var n=new MouseEvent(\"click\");s.dispatchEvent(n)}},{key:\"createAndSaveSnapshot\",value:function e(t,i,a,s){$tw.wiki.addTiddler(new $tw.Tiddler({title:s||a,type:\"image/png\",text:this.getCanvasAsBase64({size:{width:t,height:i},withoutPreamble:true})},$tw.wiki.getCreationFields(),$tw.wiki.getModificationFields()));return a}},{key:\"getCanvasAsBase64\",value:function e(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{},i=t.withoutPreamble,a=t.size;var s=this.graphDomNode.style.width;var r=this.graphDomNode.style.height;if(a){this.graphDomNode.style.width=a.width+\"px\";this.graphDomNode.style.height=a.height+\"px\";this.network.redraw()}var n=this.canvas.toDataURL(\"image/png\");if(a){this.graphDomNode.style.width=s;this.graphDomNode.style.height=r;this.network.redraw()}return i?_utils2.default.getWithoutPrefix(n,\"data:image/png;base64,\"):n}},{key:\"handleDeleteView\",value:function e(){var t=this;var i=this.view.getLabel();if(this.view.isLocked()){$tm.notify(\"Forbidden!\");return}var a=this.view.getOccurrences();if(a.length){var s={count:a.length.toString(),refFilter:_utils2.default.joinAndWrap(a,\"[[\",\"]]\")};$tm.dialogManager.open(\"cannotDeleteViewDialog\",s);return}var r=\"\\n        You are about to delete the view ''\"+i+\"''\\n        (no tiddler currently references this view).\\n     \";this.openStandardConfirmDialog(function(e){if(!e){return}t.view.destroy();t.setView($tm.misc.defaultViewLabel);var a='view \"'+i+\"' deleted\";t.logger(\"debug\",a);$tm.notify(a)},r)}},{key:\"handleTriggeredRefresh\",value:function e(t){this.logger(\"log\",t,\"Triggered a refresh\");var i=_utils2.default.getTiddler(_utils2.default.getText(t));if(this.isLiveView()){if(i){if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[i.fields.title]=true}var a=i.fields[\"tmap.open-view\"]||$tm.config.sys.liveTab.fallbackView;if(a&&a!==this.view.getLabel()){this.setView(a);return}}}this.rebuildGraph({resetFocus:{delay:1e3,duration:1e3}})}},{key:\"handleRemoveElements\",value:function e(t){var i=t.nodes,a=t.edges;if(i.length){this.handleRemoveNodes(i)}else if(a.length){this.handleRemoveEdges(a)}this.resetVisManipulationBar()}},{key:\"handleRemoveEdges\",value:function e(t){$tm.adapter.deleteEdges(this.graphData.edges.get(t));$tm.notify(\"edge\"+(t.length>1?\"s\":\"\")+\" removed\")}},{key:\"handleRemoveNodes\",value:function e(t){var i=this;var a=$tm.adapter.getTiddlersByIds(t);var s={count:t.length.toString(),tiddlers:$tw.utils.stringifyList(a),dialog:{preselects:{\"delete-from\":\"filter\"}}};$tm.dialogManager.open(\"deleteNodeDialog\",s,function(e,a){if(!e)return;var s=0;for(var r=t.length;r--;){var n=i.view.removeNode(t[r]);if(n){s++}}if(a.fields[\"delete-from\"]===\"system\"){$tm.adapter.deleteNodes(t);s=t.length}i.isPreventZoomOnNextUpdate=true;$tm.notify(\"\\n        Removed \"+s+\"\\n        of \"+t.length+\"\\n        from \"+a.fields[\"delete-from\"]+\"\\n      \")})}},{key:\"toggleEnlargedMode\",value:function e(t){if(!this.isInSidebar&&t===\"halfscreen\"){return}this.logger(\"log\",\"Toggled graph enlargement\");var i=this.enlargedMode;if(i){this.network.setOptions({clickToUse:this.clickToUse});_utils2.default.findAndRemoveClassNames([\"tmap-has-\"+i+\"-widget\",\"tmap-\"+i]);this.enlargedMode=null;document.body.scrollTop=this.scrollTop}if(!i||i!==t&&(t===\"fullscreen\"||t===\"halfscreen\"&&!this.isInSidebar)){this.scrollTop=document.body.scrollTop;this.enlargedMode=t;var a=this.isInSidebar?this.sidebar:_utils2.default.getFirstElementByClassName(\"tc-story-river\");$tw.utils.addClass(this.document.body,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(a,\"tmap-has-\"+t+\"-widget\");$tw.utils.addClass(this.domNode,\"tmap-\"+t);this.network.setOptions({clickToUse:false});$tm.notify(\"Toggled \"+t+\" mode\")}this.handleResizeEvent()}},{key:\"handleGenerateWidget\",value:function e(t){$tw.rootWidget.dispatchEvent({type:\"tmap:tm-generate-widget\",paramObject:{view:this.view.getLabel()}})}},{key:\"handleSetCentralTopic\",value:function e(t){var i=t.paramObject;var a=i.id||this.network.getSelectedNodes()[0];if(a===this.view.getConfig(\"central-topic\")){a=\"\"}this.view.setCentralTopic(a)}},{key:\"handleVisStabilizedEvent\",value:function e(t){if(this.hasNetworkStabilized){return}this.hasNetworkStabilized=true;this.logger(\"log\",\"Network stabilized after\",t.iterations,\"iterations\");if(!this.view.isEnabled(\"physics_mode\")){var i=this.graphData.nodesById;var a=[];for(var s in i){if(i[s].x===undefined){a.push(s)}}if(a.length){this.setNodesMoveable(a,false);$tm.notify(a.length+\" nodes were added to the graph\")}var r=this.visOptions.physics;r[r.solver].centralGravity=0;this.network.setOptions(this.visOptions)}if(this.resetFocus){this.fitGraph(this.resetFocus.delay,this.resetFocus.duration);this.resetFocus=null}}},{key:\"handleFocusNode\",value:function e(t){var i=t.param;this.network.focus($tm.adapter.getId(i),{scale:1.5,animation:true})}},{key:\"isZombieWidget\",value:function e(){return this.domNode.isTiddlyWikiFakeDom===true||!this.document.body.contains(this.getContainer())}},{key:\"fitGraph\",value:function e(){var t=this;var i=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;clearTimeout(this.activeFitTimeout);var s=function e(){if(t.isZombieWidget()){return}t.network.redraw();t.network.fit({animation:{duration:a,easingFunction:\"easeOutQuart\"}})};this.activeFitTimeout=setTimeout(s,i)}},{key:\"handleInsertNode\",value:function e(t){var i=this;$tm.dialogManager.open(\"addNodeToMap\",{},function(e,a){if(!e){return}var s=_utils2.default.getField(a,\"draft.title\").trim();if(_utils2.default.tiddlerExists(s)){if(_utils2.default.isMatch(s,i.view.getNodeFilter(\"compiled\"))){$tm.notify(\"Node already exists\");return}else{t=$tm.adapter.makeNode(s,t);i.view.addNode(t)}}else{var r=new $tw.Tiddler(a,{\"draft.title\":null});t.label=s;$tm.adapter.insertNode(t,i.view,r)}i.isPreventZoomOnNextUpdate=true})}},{key:\"handleEditNode\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t.id);var s=_utils2.default.getTiddler(a);var r=$tm.config.vis.nodes;var n=_utils2.default.parseJSON(this.view.getConfig(\"vis\"),{}).nodes;var o={};o[t.id]=t;var l=$tm.adapter.getInheritedNodeStyles(o);var d=l[a];var h=_utils2.default.merge({},{color:s.fields[\"color\"]},_utils2.default.parseJSON(s.fields[\"tmap.style\"]));var u=this.view.getLabel();var g=_extends({},this.view.getNodeData(t.id));delete g.x;delete g.y;var f={view:u,tiddler:s.fields.title,tidColor:s.fields[\"color\"],tidIcon:s.fields[$tm.field.nodeIcon]||s.fields[\"tmap.fa-icon\"],tidLabelField:\"global.\"+$tm.field.nodeLabel,tidIconField:\"global.\"+$tm.field.nodeIcon,dialog:{preselects:{\"inherited-global-default-style\":JSON.stringify(r),\"inherited-local-default-style\":JSON.stringify(n),\"inherited-group-styles\":JSON.stringify(d),\"global.tmap.style\":JSON.stringify(h),\"local-individual-node-style\":JSON.stringify(g)}}};var v=function e(t,i,a){for(var s=a.length;s--;){f.dialog.preselects[t+\".\"+a[s]]=i[a[s]]||\"\"}};v(\"local\",g,[\"label\",\"tw-icon\",\"fa-icon\",\"open-view\"]);v(\"global\",s.fields,[$tm.field.nodeLabel,$tm.field.nodeIcon,\"tmap.fa-icon\",\"tmap.open-view\"]);$tm.dialogManager.open(\"editNode\",f,function(e,s){if(!e)return;var r=s.fields;var n=_utils2.default.getPropertiesByPrefix(r,\"global.\",true);for(var o in n){_utils2.default.setField(a,o,n[o]||undefined)}var l=_utils2.default.getPropertiesByPrefix(r,\"local.\",true);var d=_utils2.default.parseJSON(r[\"local-individual-node-style\"],{});for(var h in l){d[h]=l[h]||undefined}i.view.saveNodeStyle(t.id,d);i.isPreventZoomOnNextUpdate=true})}},{key:\"handleVisSingleClickEvent\",value:function e(t){var i=_utils2.default.isTrue($tm.config.sys.singleClickMode);if(i&&!this.editorMode){this.handleOpenMapElementEvent(t)}}},{key:\"handleVisDoubleClickEvent\",value:function e(t){if(t.nodes.length||t.edges.length){if(this.editorMode||!_utils2.default.isTrue($tm.config.sys.singleClickMode)){this.handleOpenMapElementEvent(t)}}else{if(this.editorMode){this.handleInsertNode(t.pointer.canvas)}}}},{key:\"handleOpenMapElementEvent\",value:function e(t){var i=this;var a=t.nodes,s=t.edges;if(a.length){var r=this.graphData.nodesById[a[0]];if(this.view.isEnabled(\"neighbourhood_trace_clicks\")){this.trace[$tm.adapter.getTiddlerById(r.id)]=true;this.isPreventZoomOnNextUpdate=Date.now()+500;this.rebuildGraph();if(this.view.isEnabled(\"neighbourhood_focus_newly_traced_node\")){setTimeout(function(){i.network.focus(r.id,{scale:1,animation:true})},1500)}}if(r[\"open-view\"]){$tm.notify(\"Switching view\");this.setView(r[\"open-view\"])}this.openTiddlerWithId(a[0])}else if(s.length){this.logger(\"debug\",\"Clicked on an Edge\");var n=this.graphData.edgesById[s[0]].type;this.handleEditEdgeType(n)}else{return}this.hidePopups(0,true)}},{key:\"handleEditEdgeType\",value:function e(t){if(!this.editorMode)return;var i=$tm.config.sys.edgeClickBehaviour;if(i!==\"manager\")return;$tw.rootWidget.dispatchEvent({type:\"tmap:tm-manage-edge-types\",paramObject:{type:t}})}},{key:\"handleResizeEvent\",value:function e(t){if(this.isZombieWidget())return;var i=this.getAttr(\"height\");var a=this.getAttr(\"width\");if(this.isInSidebar){var s=this.domNode.getBoundingClientRect();var r=15;a=document.body.clientWidth-s.left-r+\"px\";var n=parseInt(this.getAttr(\"bottom-spacing\"))||15;var o=window.innerHeight-s.top;i=o-n+\"px\"}this.domNode.style.height=i||\"300px\";this.domNode.style.width=a;this.repaintGraph()}},{key:\"handleClickEvent\",value:function e(t){if(this.isZombieWidget()||!this.network)return;if(!this.graphDomNode.contains(t.target)){var i=this.network.getSelection();if(i.nodes.length||i.edges.length){this.logger(\"debug\",\"Clicked outside; deselecting nodes/edges\");this.network.selectNodes([]);this.resetVisManipulationBar()}}else{this.canvas.focus()}if(t.button!==2){this.contextMenu.hide(0,true)}}},{key:\"handleVisSelectNode\",value:function e(t){var i=t.nodes;if(!this.isDraggingAllowed(i)){return}this.assignActiveStyle(i)}},{key:\"isDraggingAllowed\",value:function e(t){var i=t.nodes;return this.editorMode||this.view.isEnabled(\"physics_mode\")}},{key:\"assignActiveStyle\",value:function e(t){if(!Array.isArray(t))t=[t];var i=this.visOptions.nodes.color;for(var a=t.length;a--;){var s=t[a];var r=this.graphData.nodesById[s];var n=_utils2.default.merge({},i,r.color);this.graphData.nodes.update({id:s,color:{highlight:n,hover:n}})}}},{key:\"handleVisDeselectNode\",value:function e(t){}},{key:\"handleVisDragEnd\",value:function e(t){var i=t.nodes;if(!i.length){return}if(i.length===1&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[i[0]];this.graphData.nodes.update(_extends({id:i[0]},_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")))))}this.draggedNode=null;this.setNodesMoveable(i,false)}},{key:\"handleVisBeforeDrawing\",value:function e(t){var i=this.view,a=this.network,s=this.backgroundImage;if(s){t.drawImage(s,0,0)}if(i.isEnabled(\"raster\")){_utils2.default.drawRaster(t,a.getScale(),a.getViewPosition(),parseInt(i.getConfig(\"raster\")))}}},{key:\"handleVisAfterDrawing\",value:function e(t){if(this.selectRect){var i=this.selectRect.getRect();t.beginPath();t.globalAlpha=.5;t.fillStyle=\"#EAFFEF\";t.fillRect.apply(t,_toConsumableArray(i));t.beginPath();t.globalAlpha=1;t.strokeStyle=\"#B4D9BD\";t.strokeRect.apply(t,_toConsumableArray(i))}if(this.draggedNode&&this.view.isEnabled(\"raster\")){var a=this.network.getPositions()[this.draggedNode];var s=_utils2.default.getNearestRasterPosition(a,parseInt(this.view.getConfig(\"raster\")));t.strokeStyle=\"green\";t.fillStyle=\"green\";t.beginPath();t.moveTo(a.x,a.y);t.lineTo(s.x,s.y);t.stroke();t.beginPath();t.arc(s.x,s.y,5,0,Math.PI*2);t.fill()}}},{key:\"constructTooltip\",value:function e(t,i){var a=_utils2.default.parseJSON(t);var s=a.node||a.edge;var r=null;var n=\"text/html\";var o=\"text/vnd-tiddlywiki\";if(a.node){var l=$tm.tracker.getTiddlerById(s);var d=_utils2.default.getTiddler(l);var h=d.fields[$tm.field.nodeInfo];if(h){i.innerHTML=$tw.wiki.renderText(n,o,h)}else if(d.fields.text){_utils2.default.registerTransclude(this,\"tooltipWidget\",l);this.tooltipWidget.setVariable(\"tv-tiddler-preview\",\"yes\");this.tooltipWidget.render(i)}else{i.innerHTML=l}}else{var u=this.graphData.edgesById[s];var g=$tm.indeces.allETy[u.type];if(g.description){r=$tw.wiki.renderText(n,o,g.description)}i.innerHTML=r||g.label||g.id}}},{key:\"handleVisHoverElement\",value:function e(t){if($tm.mouse.buttons)return;var i=t.node||t.edge;var a=JSON.stringify(t);if(t.node){this.assignActiveStyle(i)}if(!this.isVisInEditMode()&&!this.contextMenu.isShown()){var s=this.constructTooltip;this.tooltip.show(a,s)}}},{key:\"handleVisBlurElement\",value:function e(t){this.tooltip.hide()}},{key:\"handleVisLoading\",value:function e(t){var i=t.total,a=t.iterations;this.graphLoadingBarDomNode.style.display=\"block\";this.graphLoadingBarDomNode.setAttribute(\"max\",i);this.graphLoadingBarDomNode.setAttribute(\"value\",a)}},{key:\"handleVisLoadingDone\",value:function e(t){this.graphLoadingBarDomNode.style.display=\"none\"}},{key:\"handleVisDragStart\",value:function e(t){var i=t.nodes;if(!i.length||!this.isDraggingAllowed(i)){return}this.hidePopups(0,true);this.assignActiveStyle(i);this.setNodesMoveable(i,true);if(i.length===1){this.draggedNode=i[0]}}},{key:\"destruct\",value:function e(){_utils2.default.setDomListeners(\"remove\",window,this.windowDomListeners);_utils2.default.setDomListeners(\"remove\",this.domNode,this.widgetDomListeners);this._destructVis()}},{key:\"_destructVis\",value:function e(){if(!this.network)return;_utils2.default.setDomListeners(\"remove\",this.canvas,this.canvasDomListeners);this.network.destroy();this.network=null}},{key:\"openTiddlerWithId\",value:function e(t){var i=this;var a=$tm.tracker.getTiddlerById(t);this.logger(\"debug\",\"Opening tiddler\",a,\"with id\",t);if(this.enlargedMode===\"fullscreen\"){var s=$tw.wiki.findDraft(a);var r=!!s;if(!r){var n=\"tm-edit-tiddler\";this.dispatchEvent({type:n,tiddlerTitle:a});s=$tw.wiki.findDraft(a)}var o={draftTRef:s,originalTRef:a};$tm.dialogManager.open(\"fullscreenTiddlerEditor\",o,function(e,t){if(e){var n=\"tm-save-tiddler\";i.dispatchEvent({type:n,tiddlerTitle:s})}else if(!r){_utils2.default.deleteTiddlers([s])}var o=\"tm-close-tiddler\";i.dispatchEvent({type:o,tiddlerTitle:a})})}else{var l=this.domNode.getBoundingClientRect();this.dispatchEvent({type:\"tm-navigate\",navigateTo:a,navigateFromTitle:this.getVariable(\"storyTiddler\"),navigateFromNode:this,navigateFromClientRect:{top:l.top,left:l.left,width:l.width,right:l.right,bottom:l.bottom,height:l.height}})}}},{key:\"getViewHolderRef\",value:function e(){if(this.viewHolderRef){return this.viewHolderRef}this.logger(\"info\",\"Retrieving or generating the view holder reference\");var t=this.getAttr(\"view\");var i=null;if(t){this.logger(\"log\",'User wants to bind view \"'+t+\"' to graph\");var a=$tm.path.views+\"/\"+t;if($tw.wiki.getTiddler(a)){i=$tm.path.localHolders+\"/\"+_utils2.default.genUUID();this.logger(\"log\",'Created an independent temporary view holder \"'+i+'\"');_utils2.default.setText(i,a);this.logger(\"log\",'View \"'+a+\"' inserted into independend holder\")}else{this.logger(\"log\",'View \"'+t+'\" does not exist')}}if(!i){this.logger(\"log\",\"Using default (global) view holder\");i=$tm.ref.defaultViewHolder}return i}},{key:\"setView\",value:function e(t,i){if(!_ViewAbstraction2.default.exists(t)){return}t=new _ViewAbstraction2.default(t);var a=t.getLabel();i=i||this.viewHolderRef;this.logger(\"info\",'Inserting view \"'+a+'\" into holder \"'+i+'\"');$tw.wiki.addTiddler(new $tw.Tiddler({title:i,text:a}));this.update({changedTiddlers:_defineProperty({},i,true)})}},{key:\"getView\",value:function e(t){if(!t&&this.view){return this.view}var i=this.getViewHolderRef();var a=_utils2.default.getText(i);this.logger(\"debug\",\"Retrieved view from holder\");var s=void 0;if(_ViewAbstraction2.default.exists(a)){s=new _ViewAbstraction2.default(a)}else{this.logger(\"debug\",'Warning: View \"'+a+\"\\\" doesn't exist. Default is used instead.\");s=new _ViewAbstraction2.default(\"Default\")}return s}},{key:\"reloadBackgroundImage\",value:function e(t){var i=this;this.backgroundImage=null;var a=this.view.getConfig(\"background_image\");var s=_utils2.default.getTiddler(a);if(!s&&!a)return;var r=new Image;r.onload=function(){i.backgroundImage=r;i.repaintGraph()};if(s){var n=s.fields[\"_canonical_uri\"];if(n){r.src=n}else if(s.fields.text){r.src=$tw.utils.makeDataUri(s.fields.text,s.fields.type)}}else if(a){r.src=a}}},{key:\"repaintGraph\",value:function e(){var t=$tw.utils.hasClass(this.document.body,\"tmap-has-fullscreen-widget\");if(this.network&&(!t||t&&this.enlargedMode)){this.logger(\"info\",\"Repainting the whole graph\");this.network.redraw();this.fitGraph(0,1e3)}}},{key:\"setGraphButtonEnabled\",value:function e(t,i){var a=\"vis-button tmap-\"+t;var s=_utils2.default.getFirstElementByClassName(a,this.domNode);$tw.utils.toggleClass(s,\"tmap-button-enabled\",i)}},{key:\"setNodesMoveable\",value:function e(t,i){if(!t||!t.length||this.view.isEnabled(\"physics_mode\")){return}var a=[];var s=!i;for(var r=t.length;r--;){a.push({id:t[r],fixed:{x:s,y:s}})}this.graphData.nodes.update(a);if(s){this.logger(\"debug\",\"Fixing\",a.length,\"nodes\");this.view.saveNodePositions(this.network.getPositions());this.isPreventZoomOnNextUpdate=true}}},{key:\"addGraphButtons\",value:function e(t){var i=_utils2.default.getFirstElementByClassName(\"vis-navigation\",this.domNode);for(var a in t){var s=this.document.createElement(\"div\");s.className=\"vis-button tmap-\"+a;s.addEventListener(\"click\",t[a].bind(this),false);i.appendChild(s);this.setGraphButtonEnabled(a,true)}}}]);return t}(_widget.widget);exports.tmap=MapWidget;exports.tiddlymap=MapWidget;\n//# sourceMappingURL=./maps/felixhayashi/tiddlymap/js/widget/MapWidget.js.map\n",
            "type": "application/javascript",
            "module-type": "widget"
        },
        "$:/plugins/felixhayashi/tiddlymap/license": {
            "title": "$:/plugins/felixhayashi/tiddlymap/license",
            "subtitle": "License",
            "caption": "License",
            "text": "\\rules except wikilink\n\n!! TiddlyMap\n\nCopyright (c) 2014, Felix Küppers\nAll rights reserved.\n\nTiddlyMap is licensed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]]. For the exact license terms, please visit [[https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]]. \n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n# BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n# Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! Vis.js\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n# Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n# MIT License (MIT)\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/readme": {
            "title": "$:/plugins/felixhayashi/tiddlymap/readme",
            "text": "* Please refer to the project-readme hosted at [[https://github.com/felixhayashi/TW5-TiddlyMap]].\n* A demo with several examples and explanations can be found at [[http://tiddlymap.org]]."
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tmap:unknown",
            "description": "Automatically assigned to an edge that does not have a type assigned",
            "style": "{\"color\":\"gray\"}",
            "show-label": "false"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-body:link",
            "description": "A link that is contained in the tiddler's body pointing to another resource.",
            "style": "{\"color\":\"orange\", \"dashes\":true}",
            "label": "links to",
            "text": ""
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:list",
            "description": "Contained in a list of this tiddler",
            "style": "{ \"color\": \"red\", \"dashes\":true}",
            "label": "listed in",
            "text": ""
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes/tw-list:tags",
            "description": "A tag that refers to a tiddler of the same name.",
            "style": "{ \"color\": \"darkslategray\", \"dashes\":true}",
            "label": "tagged with"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/default",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Please visit the [[online docs|http://tiddlymap.org/Documentation]]\n  for more information about the available global options.\n</div>\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Plugin version</th>\n    <td><<pluginVersion>></td>\n  </tr>\n<!--\n  <tr>\n    <th align=\"left\">Datastructure version</th>\n    <td><<dataStructureVersion>></td>\n  </tr>\n-->\n  <tr>\n    <th align=\"left\">Nodes in system</th>\n    <td><<numberOfNodes>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Edges in system</th>\n    <td><<numberOfEdges>></td>\n  </tr>\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/editor",
            "caption": "Editor",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Neighbour&shy;hood menu\"\n      field:\"config.sys.editorMenuBar.showNeighScopeButton\"\n      descr:\"Show or hide the neighbourhood menu button.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Screen&shy;shot menu\"\n      field:\"config.sys.editorMenuBar.showScreenshotButton\"\n      descr:\"Show or hide the screenshot menu button.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Raster&shy; menu\"\n      field:\"config.sys.editorMenuBar.showRasterMenuButton\"\n      descr:\"Show or hide the raster menu button.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/fields",
            "caption": "Field settings",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-text\"\n      title:\"Node-icon field\"\n      field:\"config.sys.field.nodeIcon\" \n      descr:\"Local image used as node image in the graphs.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Node-label field\"\n      field:\"config.sys.field.nodeLabel\" \n      descr:\"Alternative node label to use instead of the title.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Node-info field\"\n      field:\"config.sys.field.nodeInfo\" \n      descr:\"Field used as tooltip when hovering over a node in a graph.\"\n      note:\"It is prohibited to use the text field here.\">>\n</table>   \n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/interaction",
            "caption": "Interaction & behaviour",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <$macrocall type=\"input-select\"\n        $name=\"tmap-row\"\n        title=\"Default startup view\"\n        field=\"config.sys.defaultView\"\n        nochoice=\"Last view used at startup\"\n        selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n        descr=\"The view to display at startup\" />\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show popups\"\n      field:\"config.sys.popups.enabled\"\n      descr:\"Set this to true if you want to see automatic\n             popups in the map.\">>\n  <$list filter=\"[config.sys.popups.enabled[true]]\">\n  <<tmap-row type:\"input-text\"\n      title:\"Popup delay\"\n      field:\"config.sys.popups.delay\"\n      descr:\"The time in miliseconds that needs to pass after\n             a tooltip is triggered.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Popup width\"\n      field:\"config.sys.popups.width\"\n      descr:\"The default max-width of the popup.\"\n      note:\"Make sure you added the desired unit (e.g. `px`).\n            Requires a wiki refresh.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Popup height\"\n      field:\"config.sys.popups.height\"\n      descr:\"The default max-height of the popup.\"\n      note:\"Make sure you added desired the unit (e.g.  `px`).\n            Requires a wiki refresh.\">>\n  </$list>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Allow single click mode\"\n      field:\"config.sys.singleClickMode\"\n      descr:\"A single click on a node is sufficient to open the\n             corresponding tiddler.\"\n      note:\"Drag and drop will still work and does not cause a\n            tiddler to be opened. Single click is never active in\n            the map editor.\">>\n  <<tmap-row type:\"input-select\"\n      title:\"Edge click behaviour\"\n      field:\"config.sys.edgeClickBehaviour\"\n      selectFilter:\"[[nothing|Nothing]]\n                    [[manager|Open edge-type manager]]\"\n      descr:\"What should happen when you click on an edge?\">>\n  <<tmap-row type:\"input-select\" title:\"Raster size\" field:\"config.sys.raster\"\n      selectFilter:\"[[|disabled]] [[5|5px]] [[10|10px]] [[15|15px]] [[20|20px]] [[30|30px]] [[40|40px]]\"\n      descr:\"Snap nodes to an invisible raster of the given size after drag'n'drop.\"\n      note:\"Only works when the view is not in floating mode\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Apply node-filter to neighbours\"\n      field:\"config.sys.nodeFilterNeighbours\"\n      descr:\"If checked, neighbours displayed in the map will be filtered\n      by the view's node-filter. Otherwise the node-filter will only be used\n      to filter the original set of nodes in the map\">>\n</table>\n\n!! Suppressed dialogs\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Dialogs that you decided to suppress in the past are listed here.\n  Remove the checkmark to enable dialogs again.\n</div>\n\n<table class=\"tmap-config-table\">\n  <$list\n      filter=\"[<output>fields[]prefix[config.sys.suppressedDialogs]]\"\n      emptyMessage=\"–\">\n      <$set name=\"dialogName\" value=<<tmap basename \".\">>>\n      <$macrocall $name=\"tmap-row\"\n            type=\"input-checkbox\"\n            title=\"Suppress '$(dialogName)$' dialog\"\n            field=<<currentTiddler>> />\n      </$set>\n    <br />\n  </$list>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/liveTab",
            "caption": "Live tab",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show Live tab\"\n      field:\"liveTab\" \n      descr:\"Show or hide the live tab in the sidebar.\">>\n  <$macrocall type=\"input-select\"\n      $name=\"tmap-row\"\n      title=\"Fallback view\"\n      field=\"config.sys.liveTab.fallbackView\" \n      selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n      descr=\"The view to display in the sidebar's live tab in\n             case the current tiddler did not specify a view\n             to open.\" />\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig",
            "subtitle": "{{$:/core/images/options-button}} Global configuration of TiddlyMap",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<$macrocall $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/verbosity",
            "caption": "Verbosity",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-plain\">\n  Here you can restrict the system's talkativeness.\n</div>\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Debug output\"\n      field:\"config.sys.debug\" \n      descr:\"Set this to true if you want debug information to be\n             displayed in the browser console.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show notifications\"\n      field:\"config.sys.notifications\" \n      descr:\"Set this to true if you want to receive fade-out\n             notifications for important events.\">>\n</table> "
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/globalConfig/vis",
            "classes": "tmap-remove-top-space",
            "caption": "Graph",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  The global vis configurations will affect all views and their\n  elements (nodes and edges) unless they are overridden on a lower\n  level. All options below are documented at\n  [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n  Only config items that you actually changed have an effect on\n  the graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n    mode=\"manage-config\"\n    inherited=\"inherited-style\"\n    extension=\"config.vis\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/default",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n   All configurations __only__ affect this view.\n</div>\n\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Created on</th>\n    <td><<createdOn>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Nodes contained in graph</th>\n    <td><<numberOfNodes>></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Edges contained in graph</th>\n    <td><<numberOfEdges>></td>\n  </tr>\n</table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/editFilters",
            "caption": "Edit filters",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  Completely new to filters? Please read\n  [[Introduction to filter notation|http://tiddlywiki.com/#Introduction%20to%20filter%20notation]]\n  first.\n</div>\n\n<fieldset>\n  <legend>Filters <sup>[1]</sup></legend>\n  <table class=\"tmap-config-table tmap-large-input\">\n    <<tmap-row type:\"input-textarea\"\n        title:\"Node filter\"\n        field:\"filter.prettyNodeFltr\"\n        descr:\"In the map, only those tiddlers that match this filter\n               are shown. Drafts and system tiddlers are automatically\n               excluded.\">>\n    <<tmap-row type:\"input-textarea\"\n        title:\"Edge-type filter\"\n        field:\"filter.prettyEdgeFltr\" \n        descr:\"Only edges with a type that matches the filter are shown.\">>\n  </table>   \n</fieldset>\n\n---\n\n<sup>[1]</sup> In the editors above, a new line is equivalent to a space symbol.<br />\n<sup>[2]</sup> It is suggested to read\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nand [[Edge-type namespaces|http://tiddlymap.org#Node%20and%20edge-type%20filters]]\nbefore using Tiddlymap's filter editor."
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/layout",
            "caption": "Layout",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Floating nodes\"\n      field:\"config.physics_mode\"\n      descr:\"Set this to true if you want your nodes to freely\n             swirl around.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Filter nodes by edge types\"\n      field:\"config.filter_nodes_by_edge_types\"\n      descr:\"Only display nodes having edges matching the edge-type filter.\">>\n  <<tmap-row type:\"input-text\"\n      title:\"Background image\"\n      field:\"config.background_image\"\n      descr:\"The title of an image tiddler to be used as background\n             in the view.\"\n      note:\"You can also use an image url directly, however, the\n            image needs be stored under the same domain as your wiki.\n            Otherwise, it won't be displayed!\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/namespace",
            "caption": "Namespace",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table tmap-small-input\">\n  <<tmap-row type:\"input-text\"\n      title:\"Edge-type namespace\"\n      field:\"config.edge_type_namespace\" \n      descr:\"A namespace (like `foaf` in `foaf:knows`) that will be\n             automatically added to all edge types you create in\n             this view. The namespace is only added if the types\n             do not exist yet and do not have a namespace assigned yet.\n             Namespaces are always hidden in the graph.\"\n      note:\"Most likely, you don't want the edges created with this\n            namespace to leak into other views, moreover, you don't\n            want edges that do not possess the namespace ever to be\n            shown here. In this case, use a private marker (`_`)\n            in front of your namespace, e.g. `_mynamespace` and use\n            an appropriate edge type filter, i.e. `+[prefix[_mynamespace]]`\n            For further information see:\n            \n            * [[Edge-type namespaces|http://tiddlymap.org/#Edge-type%20namespaces]]\n            * [[Private edge types|http://tiddlymap.org/#Private%20edge%20types]]\n            \">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView",
            "subtitle": "{{$:/core/images/options-button}} View configuration -- <<view>>",
            "text": "\\rules except wikilink\n\n\\define privateEdgeTypes() [[private edge-types|http://tiddlymap.org/#Private%20edge%20types]]\n\n<$macrocall $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/configureView/vis",
            "caption": "Graph",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n   The local vis configurations will affect all\n   elements (nodes and edges) of this view, unless they are\n   overridden on a lower level. All options below are documented at\n   [[vis.js.org|http://visjs.org/docs/network]].\n</div>\n<div class=\"tmap-flash-message tmap-info\">\n  Only config items that you actually changed have an effect on the\n  graph. Other options are visible, yet, inactive.\n</div>\n<$tmap-config\n    mode=\"manage-config\"\n    inherited=\"inherited-style\"\n    extension=\"config.vis\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/getEdgeType",
            "subtitle": "{{$:/plugins/felixhayashi/tiddlymap/icon}} Edge type specification",
            "text": "\\rules except wikilink\n\\rules except underscore\n\n\\define filter() $(allEdgeTypes)$ +[search:title[$(term)$]]\n\n\\define badge(color, label, tooltip)\n<span style=\"background: $color$\" title=\"$tooltip$\">$label$</span>\n\\end\n\n\\define badges()\n<$tiddler tiddler={{!!text}}>\n<$set name=\"id\" value=<<tmap \"getETyId\" \"$(view)$\">>>\n<$set name=\"isVisible\" value=<<tmap \"isETyVisible\" \"$(view)$\">>>\n<div class=\"tmap-badges\">\n  <span\n      style=\"background: darkslategray\"\n      title=\"Your input translates into this id.\">\n  <<id>>\n  </span>\n  <$list filter=\"[<isVisible>regexp[true]]\">\n    <<badge \"green\" \"visible\" \"Matches your view's filter\">>\n  </$list>\n  <$list filter=\"[<isVisible>regexp[false]]\">\n    <<badge \"red\" \"not visible\" \"Doesn't match your view's filter\">>\n  </$list>\n  <$list filter=\"[<id>!regexp[^tmap:unknown$]]\" variable=\"item\">\n    <$list filter=\"[<id>regexp[^_]]\">\n      <<badge \"purple\" \"private\" \"Not shown in other views per default\">>\n    </$list>\n    <$list filter=\"[<id>regexp[.+:.+]]\">\n      <<badge \"orange\" \"namespace\" \"This type is prefixed with a proper namespace\">>\n    </$list>\n  </$list>\n</div>\n</$set>\n</$set>\n</$tiddler>\n\\end\n\n\\define search()\n<p>\n  You are about to connect \"<$text text=\"$(fromLabel)$\" />\"\n  with \"<$text text=\"$(toLabel)$\" />\". Please specify a type.\n</p>\n<table id=\"tmap-search-table\">\n  <tr>\n    <td><b>Type:</b></td>\n    <td>\n      <$edit-text\n          focus=\"true\"\n          field=\"text\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\"\n          class=\"tmap-trigger-field\n                 tmap-triggers-ok-button-on-enter\n                 tmap-triggers-cancel-button-on-esc\" />\n      <<badges>>\n    </td>\n  </tr>\n  <tr>\n    <td></td>\n    <td>\n      <$set name=\"term\" value={{!!text}}>\n      <$set name=\"allEdgeTypes\" value=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n      <ul class=\"tmap-small-list\">\n        <$list filter=<<filter>>>\n        <li>\n          <$button class=\"tc-btn-invisible tmap-link\">\n            <$view field=\"title\" />\n            <$action-setfield $tiddler=<<output>> text={{!!title}} />\n          </$button>\n        </li>\n        </$list>\n      </ul>\n      </$set>\n      </$set>\n    </td>\n  </tr>\n</table>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/addNodeToMap",
            "subtitle": "{{$:/core/images/tag-button}} Add node",
            "classes": "tmap-modal-add-node",
            "text": "\\rules except wikilink\n\n\\define backButtonText() back to list\n\\define outputAndTemplate() [[$(output)$]] [[$(template)$]]\n\n\\define editor()\n  <$button class=\"tmap-go-back tc-btn-invisible\">\n    {{$:/core/images/chevron-left}} <<backButtonText>>\n    <$action-deletefield $tiddler=<<temp>> more template />\n    <$action-sendmessage\n        $message=\"tmap:tm-clear-tiddler\"\n        keep=\"draft.title\"\n        title=<<output>> />\n  </$button>\n\n  <$list filter=\"[<output>get[draft.title]is[tiddler]]\">\n  <div class=\"tmap-flash-message tmap-warning\">\n   Tiddler already exists! Use another title or click\n   \"<<backButtonText>>\" to cancel your edit.\n  </div>\n  </$list>\n\n  <div class=\"tmap-modal-editor\">\n    <table class=\"tmap-config-table\">\n      <tr class=\"tmap-template-select\">\n        <td>Template</td>\n        <td>\n          <$select\n              tiddler=<<temp>>\n              field=\"template\">\n            <option value=\"\"></option>\n            <$list filter=<<tmap \"option\" \"selector.allPotentialNodes\">>>\n            <option><$view field=\"title\" /></option>\n            </$list>\n          </$select>\n          <$button>Load\n            <$action-sendmessage\n                $message=\"tmap:tm-clear-tiddler\"\n                keep=\"draft.title\"\n                title=<<output>> />\n            <$list filter=\"[<temp>get[template]]\" variable=\"template\">\n            <$action-sendmessage\n                $message=\"tmap:tm-merge-tiddlers\"\n                tiddlers=<<outputAndTemplate>>\n                output=<<output>> />\n            <$action-deletefield $tiddler=<<output>> tmap.id tmap.edges />\n            </$list>\n          </$button>\n       </td>\n       <td>Press the \"load\" button to activate the template.</td>\n      </tr>\n    </table>\n    <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n      <$set name=\"currentTiddler\" value=<<output>>>\n        <$transclude tiddler=\"$:/core/ui/EditTemplate\" mode=\"block\" />\n      </$set>\n    </$importvariables>\n  </div>\n\\end\n\n\\define search()\n<p>Add an existing tiddler to the map or create a new one.</p>\n<table id=\"tmap-search-table\">\n  <tr>\n    <td><b>Title:</b></td>\n    <td>\n      <$edit-text\n          tiddler=<<output>>\n          field=\"draft.title\"\n          focus=\"true\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\"\n          class=\"tmap-trigger-field\n                 tmap-triggers-ok-button-on-enter\n                 tmap-triggers-cancel-button-on-esc\" />\n      <$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n      <$button\n          tooltip=\"The tiddler does not exist yet and you may edit it\n                   before it is added to the map\">\n        {{$:/core/images/edit-button}}\n        <$action-setfield $tiddler=<<temp>> more=\"true\" />\n      </$button> <sup>[1]</sup>\n      </$list>\n    </td>\n  </tr>\n  <tr>\n    <td></td>\n    <td>\n      <$set name=\"term\" value={{!!draft.title}}>\n      <ul class=\"tmap-small-list\">\n        <$list filter=\"[search:title<term>!is[system]!has[draft.of]]\">\n        <li>\n          <$button class=\"tc-btn-invisible tmap-link\">\n            <$view field=\"title\" />\n            <$action-setfield $tiddler=<<output>> draft.title={{!!title}} />\n          </$button>\n        </li>\n        </$list>\n      </ul>\n      </$set>\n    </td>\n  </tr>\n</table>\n\n<$list filter=\"[<output>get[draft.title]!is[tiddler]]\">\n<hr />\n<sup>[1]</sup>\n<small>\n  The tiddler does not exist yet and you may edit it\n  before it is added to the map\n</small>\n</$list>\n\\end\n\n<$list filter=\"[<temp>!has[more]]\" variable=\"item\"><<search>></$list>\n<$list filter=\"[<temp>has[more]]\" variable=\"item\"><<editor>></$list>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/cannotDeleteViewDialog",
            "subtitle": "{{$:/core/images/locked-padlock}} You cannot delete this view!",
            "buttons": "ok",
            "text": "\\rules except wikilink\n\nIt is not possible to delete the current view as ''<<count>>'' tiddlers\nare referencing it. To delete the view you must first remove the tiddlymap\nwidgets in the tiddlers listed below or change their view attributes.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n  <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nAfter the references are removed, you may delete the view.\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/getConfirmation",
            "subtitle": "{{$:/core/images/import-button}} You must confirm in order to proceed!",
            "text": "\\rules except wikilink\n\n<<message>>\n\n''Are you really sure you want to do this?''"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/createView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/createView",
            "subtitle": "{{$:/core/images/new-button}} Creating a new view",
            "text": "\\rules except wikilink\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-text\"\n      title:\"View name\"\n      field:\"name\"\n      focus:\"true\"\n      class:\"tmap-trigger-field\n             tmap-triggers-ok-button-on-enter\n             tmap-triggers-cancel-button-on-esc\"\n      descr:\"The name for the new view. If no name is entered,\n             the program will invent one for you.\"\n      note:\"You cannot override an existing view. In this case,\n            you need to delete the old view first! You must no use\n            slashes (`/`) in the name.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Clone view\"\n      field:\"clone\"\n      descr:\"Use the view that is currently displayed in the\n             editor as blueprint. The view will be an __exact__\n             clone of the current one, only with a different\n             name.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/deleteNodeDialog",
            "subtitle": "{{$:/core/images/delete-button}} You are about to delete <<count>> nodes",
            "text": "\\rules except wikilink\n\n''Please choose an option or abort:''\n\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"system\">\n  Delete nodes from system <sup>[1]</sup>\n</$radio><br />\n<$radio tiddler=<<output>> field=\"delete-from\" value=\"filter\">\n  Delete nodes from graph's filter <sup>[2]</sup>\n</$radio>\n\nThe following nodes will be deleted:\n\n<ul>\n<$list filter=<<tiddlers>>>\n  <li><$view tiddler={{!!title}} field=\"title\" /></li>\n</$list>\n</ul>\n\n---\n\n<sup>[1]</sup>\n<small>This will delete all nodes, their corresponding tiddlers and all connected edges.</small><br/>\n<sup>[2]</sup>\n<small>''Important:'' Removing a node from the graph's filter only works, if the node has been added in the map editor per double click or via \"Add Node\". If the node hasn't been added as mentioned above, you need to change the underlying tiddler in a way that it doesn't match your filter anymore, if you don't want it to be displayed in the graph.</small>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/dublicateIdInfo",
            "subtitle": "{{$:/core/images/info-button}} Dublicate id detected",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nTiddlyMap requires the value of the id field (\"tmap.id\") to be\nunique in order to correctly identify nodes and tiddlers.\n\nThe id of the \"<<param.changedTiddler>>\" already exists for these tiddlers:\n\n<ul>\n<$list filter=<<param.filter>> variable=\"item\">\n  <li><$link><<item>></$link></li>\n</$list>\n</ul>\n\nTherefore TiddlyMap\n\n* assigned a new id to tiddler \"<<param.changedTiddler>>\"\n* removed all edges from \"<<param.changedTiddler>>\"\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/edgeNotVisible",
            "subtitle": "{{$:/core/images/info-button}} Edge will not be visible in view \"<<view>>\"",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nYou just created an edge of type\n<code><$text text=<<type>> /></code> that will not be\nvisible in this view because it doesn't match your\nedge-type filter settings.\n\nThe current edge-type filter of view \"<<view>>\" looks like this:\n\n<pre><code><$text text=<<eTyFilter>> /></code></pre>\n\nTo have the newly added type displayed in your view, adjust your\nedge-type filter accordingly. \n\nSome suggestions:\n\n<ul>\n  <li>\n    Explicitly add the type to the filter:\n    <code><$text text=\"[[\" /><$text text=<<type>> /><$text text=\"]]\" /></code>\n  </li>\n  <li>\n  <$set\n      filter=\"[<type>regexp[:]splitbefore[:]]\"\n      name=\"prefix\"\n      emptyValue=<<tmap halfOfString \"$(type)$\">>>\n  Add a filter rule (e.g. a prefix filter) that will match\n  your type: <code>[prefix[<<prefix>>]]</code>\n  </$set>\n  </li>\n  <li>Make your current view-filter less restrictive.</li>\n</ul>\n\nFor further information, please see:\n[[Node and edge-type filters|http://tiddlymap.org#Node%20and%20edge-type%20filters]]."
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/default",
            "caption": "Global node style",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  A node's ''global configuration''\n  (also referred to as //global individual config//) defines its\n  individual appearance and behaviour in all views.\n</div>\n<<maybeShowTidColorWarning>>\n\n<$macrocall $name=\"sharedSettings\"\n    twIconField=<<tidIconField>>\n    faIconField=\"global.tmap.fa-icon\"\n    labelField=<<tidLabelField>> />\n\n<$macrocall $name=\"visConfiguration\"\n    mode=\"manage-node-types\"\n    extensionField=\"global.tmap.style\"\n    styleName=\"node's global style\"\n    inheritedList=\"[[inherited-global-default-style]]\n                   [[inherited-local-default-style]]\n                   [[inherited-group-styles]]\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode/local",
            "caption": "Local node style",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  The ''local node configuration''\n  (also referred to as //view-specific node configuration//)\n  overrides the //global individual configuration// and only affects\n  the node's appearance and behaviour in the current view.\n</div>\n<<maybeShowTidColorWarning>>\n\n<fieldset>\n  <legend>Behaviour</legend>\n  <table class=\"tmap-config-table\">\n    <$macrocall type=\"input-select\"\n        $name=\"tmap-row\"\n        title=\"Open view\"\n        field=\"local.open-view\"\n        nochoice=\"Disabled\"\n        selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n        descr=\"Clicking on this node will open the specified\n               view instead of the tiddler represented by this node.\" />\n  </table>\n</fieldset>\n\n<$macrocall $name=\"sharedSettings\"\n    twIconField=\"local.tw-icon\"\n    faIconField=\"local.fa-icon\"\n    labelField=\"local.label\" />\n\n<$macrocall $name=\"visConfiguration\"\n    mode=\"manage-node-types\"\n    extensionField=\"local-individual-node-style\"\n    styleName=\"node's local style\"\n    inheritedList=\"[[inherited-global-default-style]]\n                   [[inherited-local-default-style]]\n                   [[inherited-group-styles]]\n                   [[global.tmap.style]]\" />\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/editNode": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/editNode",
            "subtitle": "{{$:/core/images/edit-button}} Editing style of node \"<<tiddler>>\"",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define maybeShowTidColorWarning()\n  <$list filter=\"[<tidColor>regexp[.+]]\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    You have set the tiddler's color\n    field to \"<<tidColor>>\". This value will be completely ignored\n    when you change node's color properties in the vis editor below.\n  </div>\n  </$list>\n\\end\n\n\\define iconSettings(twIconField, faIconField)\n  <fieldset>\n    <legend>Icon Settings</legend>\n    <table class=\"tmap-config-table\">\n      <<tmap-row type:\"input-text\"\n          title:\"TW-icon\"\n          field:\"$twIconField$\"\n          descr:\"A tiddlywiki image reference.\n                 For example '$:/core/icon' for Movotun Jack.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"FA-icon\"\n          field:\"$faIconField$\"\n          descr:\"A Font Awesome icon code.\n                 For example 'f206' for the bicycle symbol.\">>\n    </table>\n  </fieldset>\n\\end\n\n\\define sharedSettings(twIconField, faIconField, labelField)\n  <fieldset>\n    <legend>General Settings</legend>\n    <table class=\"tmap-config-table\">\n      <<tmap-row type:\"input-text\"\n          title:\"Label\"\n          field:\"$labelField$\"\n          descr:\"Use this value as node label.\">>\n    </table>\n  </fieldset>\n  <!-- display icon fieldset -->\n  <<iconSettings \"$twIconField$\" \"$faIconField$\">>  \n\\end\n\n<$macrocall\n  $name=\"tabs\"\n  default=<<concat \"$(template)$/default\">>\n  tabsList=\"[all[shadows]prefix<template>] -[<template>]\"\n/>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/draft",
            "caption": "Draft",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n  <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n    <$set name=\"currentTiddler\" value=<<draftTRef>> >\n      <$transclude tiddler=\"$:/core/ui/EditTemplate\" field=\"text\" mode=\"block\" />\n    </$set>\n  </$importvariables>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original",
            "caption": "Current Version",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-modal-editor\">\n  <$importvariables filter=\"[all[tiddlers+shadows]prefix[$:/core/macros/]]\">\n    <$set name=\"currentTiddler\" value=<<originalTRef>> >\n      <$transclude tiddler=\"$:/core/ui/ViewTemplate\" field=\"text\" mode=\"block\" />\n    </$set>\n  </$importvariables>\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor",
            "subtitle": "{{$:/core/images/edit-button}} <<originalTRef>>",
            "classes": "tmap-modal-fullscreen-editor tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define defaultTab() $:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/original\n\n<$macrocall $name=\"tabs\"\n    default=<<defaultTab>>\n    tabsList=\"[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenTiddlerEditor/]]\" />"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fieldChanged",
            "subtitle": "{{$:/core/images/info-button}} The field \"<<name>>\" changed",
            "text": "\\rules except wikilink\n\nYou changed the field \"<<name>>\" from \"<<oldValue>>\" to \"<<newValue>>\".\n\nIt is recommended to let TiddlyMap copy all values from the former field \"<<oldValue>>\" to the new field \"<<newValue>>\" so the data stored in \"<<oldValue>>\" is not lost. This operation has to be done now or never.\n\nDo you want to move each tiddler's existing \"<<oldValue>>\" value to \"<<newValue>>\"? Please note that any value currently stored in \"<<newValue>>\" would consequently be overridden and the old field \"<<oldValue>>\" would be eventually removed!"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/fullscreenNotSupported",
            "subtitle": "{{$:/core/images/info-button}} Your machine does not support fullscreen",
            "buttons": "ok_suppress",
            "text": "\\rules except wikilink\n\nPlease have a look [[here|http://caniuse.com/#feat=fullscreen]] to see a list of supported devices/browsers.\n\nSorry for this :("
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/renameView": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/renameView",
            "subtitle": "{{$:/core/images/tag-button}} Please specify a view name",
            "text": "\\rules except wikilink\n\n''Name:''\n<$edit-text focus=\"true\" tiddler=<<output>> field=\"text\" type=\"text\" tag=\"input\" default=\"\"\n            class=\"tmap-trigger-field tmap-triggers-ok-button-on-enter\" />\n\nNote that ''<<count>>'' tiddlers are referencing this view.\n\n<$reveal type=\"nomatch\" text=\"0\" default=<<count>>>\n\nRenaming the view will cause the reference to be invalid.\nIt is recommended to first remove the tiddlymap widgets in\nthe tiddlers listed below or change their view attributes\naccordingly.\n\n''References''\n\n<ul>\n<$list filter=<<refFilter>> variable=\"item\">\n  <li><$text text=<<item>> /></li>\n</$list>\n</ul>\n\n</$reveal>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/saveCanvas",
            "subtitle": "{{$:/core/images/options-button}} Save a snapshot image of view \"<<view>>\"",
            "text": "\\rules except wikilink\n\n\\define preview()\n<div class=\"tmap-save-canvas-preview\">\n  <$transclude tiddler=<<snapshot>> /><br />\n</div>\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall $name=\"tmap-row\"\n    type=\"input-text\"\n    title=\"Name\"\n    field=\"name\"\n    descr=<<preview>> />\n  <<tmap-row type:\"input-text\"\n      title:\"Width\"\n      field:\"width\"\n      descr:\"Scales the image to match this new width (unit: px)\">>\n  <<tmap-row type:\"input-text\"\n      title:\"height\"\n      field:\"height\"\n      descr:\"Scales the image to match this new height (unit: px)\">>\n  <<tmap-row type:\"input-radio\"\n      title:\"Action\"\n      field:\"action\"\n      selectFilter:\"[[download|Download]]\n                    [[wiki|Save in wiki]]\n                    [[placeholder|Use as placeholder for this view]]\"\n      descr:\"Save the image by downloading it to your computer or\n              save it as a tiddler in your wiki.<br /><br />\n              A third option is to make TiddlyMap use this image as\n              placeholder for the current view. Placeholders are useful\n              when the wiki is exported as static html\n              or when editing a tiddler while having the preview\n              shown. In this case the title input is ignored.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog",
            "text": "\\rules except wikilink\n\n<div class=<<classes>>>\n<$importvariables\n    filter=\"[[$:/plugins/felixhayashi/tiddlymap/misc/macros]]\n            [[$:/core/macros/tabs]]\">\n<$transclude tiddler=<<template>> mode=\"block\" />\n</$importvariables>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/welcome": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/welcome",
            "subtitle": "{{$:/core/images/info-button }} Welcome",
            "buttons": "ok",
            "text": "\\rules except wikilink\n\nIt seems that you freshly installed TiddlyMap.\n\n* In case you need any help, please consult the [[online docs|http://tiddlymap.org#Documentation]] first.\n* You are welcome to create an [[issue|https://github.com/felixhayashi/TW5-TiddlyMap/issues]] at GitHub for any bug you discover.\n* Make sure to revisit the [[demo site|http://tiddlymap.org]] to see whether your version is up-to-date.\n* If you like TiddlyMap, please give it a star at [[GitHub|https://github.com/felixhayashi/TW5-TiddlyMap]] or tell your friends about it :)\n* ''Please note:'' TiddlyMap is distributed under the [[BSD 2-Clause License|http://opensource.org/licenses/BSD-2-Clause]], which belongs to the same license family, as the license used by TiddlyWiki. By using this plugin you agree to the product's [[License Terms|https://github.com/felixhayashi/TW5-TiddlyMap/blob/master/LICENSE]].\n\nEnjoy!\n\n---\n\nTiddlyMap will configure your wiki for optimal use. Everything can be changed back later by you, via the TiddlyWiki configurations panel, so no worries. If you checked some of the options below, please save &amp; restart after closing this dialog.\n\n<table class=\"tmap-config-table\">\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize storyview\"\n      field:\"config.storyview\"\n      descr:\"Sets the storyview to 'top' for optimal scrolling.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize sidebar\"\n      field:\"config.sidebar\"\n      descr:\"Sets sidebar layout to 'fixed-fluid' for larger editor.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Optimize navigation\"\n      field:\"config.navigation\"\n      descr:\"Sets navigation style to open tiddlers at top for better map navigation.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Create demo welcome map\"\n      field:\"config.demo\"\n      descr:\"Creates a little hello world welcome map for you.\">>\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/widgetCodeGenerator",
            "subtitle": "{{$:/core/images/permalink-button}} Widget Code Generator",
            "buttons": "close",
            "text": "\\rules except wikilink\n\n<div class=\"tmap-flash-message tmap-info\">\n  Use the code below to embed a view in a tiddler.\n</div>\n\n<pre style=\"white-space: normal;\">\n&lt;$tmap\n\n<$list filter=\"[<output>has[var.view]]\">\n  view=\"<$view field='var.view' />\"</$list>\n<$list filter=\"[<output>field:var.click-to-use[true]]\">\n  click-to-use=\"true\"</$list>\n<$list filter=\"[<output>has[var.editor]]\">\n  editor=\"<$view field='var.editor' />\"</$list>\n<$list filter=\"[<output>has[var.width]]\">\n  width=\"<$view field='var.width' />\"</$list>\n<$list filter=\"[<output>has[var.height]]\">\n  height=\"<$view field='var.height' />\"</$list>\n<$list filter=\"[<output>has[var.class]]\">\n  class=\"<$view field='var.class' />\"</$list>\n<$list filter=\"[<output>field:var.show-buttons[false]]\">\n  show-buttons=\"false\"</$list>\n<$list filter=\"[<output>has[var.design]]\">\n  design=\"<$view field='var.design' />\"</$list>&gt;&lt;/$tmap&gt;\n</pre>\n\n<fieldset>\n  <legend>Parameters</legend> \n  <table class=\"tmap-config-table\">\n      <$macrocall type=\"input-select\"\n          $name=\"tmap-row\"\n          title=\"View\"\n          field=\"var.view\"\n          nochoice=\" \"\n          selectFilter=<<tmap \"option\" \"selector.allViewsByLabel\">>\n          descr=\"The view to bind the wiedget to\" />\n      <<tmap-row type:\"input-select\"\n          title:\"Editor bar\"\n          field:\"var.editor\"\n          selectFilter:\"[[|Hidden]]\n                        [[vis|Simple]]\n                        [[advanced|Advanced]]\"\n          descr:\"Whether the widget should act as an editor or not.\">>\n      <<tmap-row type:\"input-select\"\n          title:\"Design\"\n          field:\"var.design\"\n          selectFilter:\"[[|Normal]]\n                        [[plain|Plain]]\"\n          descr:\"Usually a header is displayed and borders. Plain\n                 design will only show the mere graph.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Height\"\n          field:\"var.height\"\n          descr:\"Graph's height in css units. Defaults to '300px'.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Width\"\n          field:\"var.width\"\n          descr:\"Graph's width in css units. Defaults to '100%'.\">>\n      <<tmap-row type:\"input-text\"\n          title:\"Class\"\n          field:\"var.class\"\n          descr:\"A custom class to apply your own css.\">>\n      <<tmap-row type:\"input-checkbox\"\n          title:\"Click to use\"\n          field:\"var.click-to-use\"\n          default:\"false\"\n          descr:\"A click is needed to enable the graph.\">>\n      <<tmap-row type:\"input-checkbox\"\n          title:\"Show buttons\"\n          field:\"var.show-buttons\"\n          default:\"true\"\n          descr:\"Show or hide the graph's navigation buttons.\">>\n  </table>\n</fieldset>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/close",
            "text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-close-button\" tooltip=\"Close this dialog\">Close\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n                       \n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok",
            "text": "\\rules except wikilink\n\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm dialog\">OK\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n                       \n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_cancel",
            "text": "\\rules except wikilink\n\n<$transclude tiddler=\"$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok\" mode=\"inline\" />\n<$button class=\"tmap-dialog-button tmap-cancel-button\" tooltip=\"Close dialog without saving\">Cancel\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"\" />\n</$button>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/ok_suppress",
            "text": "\\rules except wikilink\n\n<$set name=\"currentTiddler\" value=<<title>> >\n\n<$checkbox field=\"suppress\" checked=\"1\" unchecked=\"0\" default=\"0\"> Do not show this dialog again</$checkbox>\n<$button class=\"tmap-dialog-button tmap-ok-button\" tooltip=\"Confirm this dialog\">OK\n\n  <!-- trigger dialog callback -->\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n  \n  <!-- suppress dialog in the future -->\n  <$action-sendmessage $message=\"tmap:tm-suppress-dialog\"\n                       dialog=<<templateId>>\n                       suppress={{!!suppress}} />\n                       \n</$button>\n\n</$set>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter",
            "text": "\\rules except wikilink\n\n\\define footer() $:/plugins/felixhayashi/tiddlymap/dialogFooter/$(buttons)$\n\n<$transclude tiddler=<<footer>> />\n\n<!-- we need this button to be able to close a tiddler from outside programmatically -->\n<$button class=\"tmap-hidden-close-button\" message=\"tm-close-tiddler\" />"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialogFooter/element_type_manager",
            "text": "\\rules except wikilink\n\n<$button\n    class=\"tmap-dialog-button tmap-save-button\"\n    tooltip=\"Save the current changes\">Save\n  <$action-sendmessage\n      $message=\"tmap:tm-save-type-form\"\n      mode=<<mode>>\n      output=<<output>> />\n</$button>\n<$button\n    class=\"tmap-dialog-button tmap-cancel-button\"\n    tooltip=\"Cancel the most resent changes and exit\">Quit\n  <$action-setfield $tiddler=<<result>> text=\"1\" />\n</$button>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/deleteType",
            "caption": "Removal",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <$macrocall $name=\"tmap-row\"\n      type=\"input-checkbox\"\n      title=\"Delete type\"\n      field=\"temp.deleteType\"\n      default={{!id}}\n      readonly={{!!temp.idImmutable}}\n      descr=\"If you want to delete this type, set this to true\n             and click the save button afterwards. Predefined system\n             types cannot be deleted.\" note=\"Consequently, all edges\n             of this type will be deleted.\" />\n\\end\n\n\\define manage-node-types()\n  <$macrocall $name=\"tmap-row\"\n      type=\"input-checkbox\"\n      title=\"Delete type\"\n      field=\"temp.deleteType\"\n      default={{!id}}\n      readonly={{!!temp.idImmutable}}\n      descr=\"If you want to delete this type, set this to true and\n             click the save button afterwards. Predefined system\n             types cannot be deleted.\" />\n\\end\n\n<table class=\"tmap-config-table\"><$macrocall $name=<<mode>> /></table>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/description",
            "caption": "Description",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <<tmap-row type:\"input-textarea\"\n      title:\"Description\"\n      field:\"description\"\n      descr:\"An optional description for this type. The\n             description will be displayed as tooltip when\n             moving the mouse over an edge of this type.\">>\n\\end\n\n\\define manage-node-types()\n  <<tmap-row type:\"input-textarea\"\n      title:\"Description\"\n      field:\"description\" \n      descr:\"An optional description for this type.\">>\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall $name=<<mode>> />\n</table>\n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings",
            "caption": "General",
            "text": "\\rules except wikilink\n\n\\define manage-edge-types()\n  <<tmap-row type:\"input-text\"\n      title:\"Label\"\n      field:\"label\"\n      descr:\"An optional alias used as edge-label.\">>\n  <<tmap-row type:\"input-checkbox\"\n      title:\"Show label\"\n      field:\"show-label\"\n      default:\"true\"\n      descr:\"If unchecked, no edge label will be displayed.\">>\n\\end\n\\define manage-node-types()\n  <$list filter=\"[<currentTiddler>!regexp:id[tmap:]]\">\n  <<tmap-row type:\"input-textarea\"\n      title:\"Scope\"\n      field:\"scope\"\n      descr:\"A filter expression that defines, which nodes inherit\n             this node-type and its style.\">>\n  </$list>\n  <$macrocall type=\"input-select\"\n      $name=\"tmap-row\"\n      title=\"Priority\"\n      field=\"priority\"\n      selectFilter=<<tmap \"scale\" \"100\">>\n      descr=\"When a type has a a higher priority than another type,\n             its style will override the other style\" />\n\\end\n\n<table class=\"tmap-config-table\">\n  <$macrocall\n    $name=\"tmap-row\"\n    title=\"Identifier\"\n    field=\"temp.newId\"\n    type=\"input-text\"\n    default={{!!id}}\n    readonly={{!!temp.idImmutable}}\n    descr=\"A unique identifier\"\n  />\n  <$macrocall $name=<<mode>> />\n</table>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview",
            "caption": "Overview",
            "text": "\\rules except wikilink\n\n\\define date(f) <$view field=$f$ format=\"date\" template=\"DDth mmm hh:mm:ss\"/>\n\n! <$link to={{!!typeTRef}}><$view field=\"id\" /></$link>\n\n<table class=\"tmap-key-value-table\">\n  <tr>\n    <th align=\"left\">Created on</th>\n    <td>\n      <<date \"created\">>\n    </td>\n  </tr>\n  <tr>\n    <th align=\"left\">Modified on</th>\n    <td><<date \"modified\">></td>\n  </tr>\n  <tr>\n    <th align=\"left\">Usage count</th>\n    <td>\n      <span class=\"tmap-edge-type-specific\">\n        <$view field=\"temp.usageCount\" />\n      </span>\n      <span class=\"tmap-node-type-specific\">\n        <$count filter={{!!scope}}>0</$count>\n      </span>\n    </td>\n  </tr>\n</table>\n\n<$view field=\"description\">//No description available//</$view>"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/styling",
            "caption": "Styling",
            "text": "\\rules except wikilink\n\n\\define url()\n  <$set\n      filter=\"[<mode>prefix[manage-edge-types]]\"\n      name=\"module\"\n      value=\"edges\"\n      emptyValue=\"nodes\">\n    [[visjs.org|http://visjs.org/docs/network/$(module)$]]\n  </$set>\n\\end\n\n<fieldset class=\"tmap-node-type-specific\">\n  <legend>Icon Settings</legend>\n  <table class=\"tmap-config-table\">\n    <<tmap-row type:\"input-text\"\n        title:\"TW-icon\"\n        field:\"tw-icon\"\n        descr:\"A tiddlywiki image reference.\n               For example '$:/core/icon' for Movotun Jack.\">>\n    <<tmap-row type:\"input-text\"\n        title:\"FA-icon\"\n        field:\"fa-icon\"\n        descr:\"A Font Awesome icon code.\n               For example 'f206' for the bicycle symbol.\">>\n  </table>\n</fieldset>\n\n<fieldset><legend>Visjs styles</legend>\n  <div class=\"tmap-flash-message tmap-info\">\n     All visjs options below are documented at <<url>>.\n  </div>\n  <div class=\"tmap-flash-message tmap-info\">\n     Only config items that you actually changed have an effect on\n     the graph. Other options are visible, yet, inactive.\n  </div>\n  <$tmap-config\n      mode=<<mode>>\n      inherited=\"inherited-style\"\n      extension=\"style\" />\n</fieldset>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager": {
            "title": "$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager",
            "subtitle": "{{$:/core/images/tag-button}} <<topic>>",
            "buttons": "element_type_manager",
            "classes": "tmap-remove-top-space",
            "text": "\\rules except wikilink\n\n\\define defaultTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/overview\n\\end\n\n\\define settingsTab()\n$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/generalSettings\n\\end\n\n\\define tabsFilter()\n[all[shadows]prefix[$:/plugins/felixhayashi/tiddlymap/dialog/MapElementTypeManager/]]\n\\end\n\n\\define searchFilter()\n$(searchSelector)$\n+[sort[title]nsort[priority]]\n+[removeprefix<typeRootPath>removeprefix[/]]\n+[search:title{$:/temp/tmap/MapElementTypeSearch}]\n\\end\n\n\\define managerClass() tmap-$(mode)$\n\n\\define typePath() $(typeRootPath)$/$(id)$\n\n<div id=\"tmap-element-type-manager\" class=<<managerClass>>>\n  <div>\n    <div class=\"tmap-searchbar\">\n      <$edit-text\n          focus=\"true\"\n          tiddler=\"$:/temp/tmap/MapElementTypeSearch\"\n          type=\"text\"\n          tag=\"input\"\n          default=\"\" />\n      <$list filter=\"[{$:/temp/tmap/MapElementTypeSearch}regexp[.+]]\n                     +[addprefix[/]]\n                     +[addprefix<typeRootPath>]\n                     +[!is[tiddler]!is[shadow]]\">\n      <$button tooltip=\"Create a new type of this name\">\n      {{$:/core/images/new-button}}\n        <$action-sendmessage\n            $message=\"tmap:tm-create-type\"\n            mode=<<mode>>\n            id={{$:/temp/tmap/MapElementTypeSearch}}\n            output=<<output>> />\n        <$action-setfield $tiddler=\"$:/temp/tmap/MapElementTypeSearch\" text=\"\" />\n      </$button>\n      </$list>\n\n    </div>\n    <ul>\n      <$list\n          filter=<<searchFilter>>\n          emptyMessage=<<noTypeFound>>\n          variable=\"id\">\n      <li>\n        <span class=\"tmap-ranking tmap-node-type-specific\">\n          # <$view tiddler=<<typePath>> field=\"priority\">1</$view>\n        </span>\n        <$button class=\"tc-btn-invisible tmap-link\"><<id>>\n          <$action-setfield\n              $tiddler=<<qualify \"$:/state/tabs/MapElementTypeManager\">>\n              text=<<defaultTab>> />\n          <$action-sendmessage\n              $message=\"tmap:tm-load-type-form\"\n              id=<<id>>\n              mode=<<mode>>\n              output=<<output>> />\n        </$button>\n      </li>\n      </$list>\n    </ul>\n  </div>\n  <div>\n    <$reveal type=\"nomatch\" text=\"\" default={{!!id}} >\n      <$macrocall\n          $name=\"tabs\"\n          default=<<defaultTab>>\n          state=\"$:/state/tabs/MapElementTypeManager\"\n          tabsList=<<tabsFilter>> />\n    </$reveal>\n    <$reveal type=\"match\" text=\"\" default={{!!id}} >\n      <div class=\"tmap-flash-message tmap-info\">\n        Please select a type from the list or create a new one by\n        entering the type name in the search field on the left.\n      </div>\n      <div class=\"tmap-flash-message tmap-info tmap-node-type-specific\">\n        The number next to the node-type label represents it's priority.\n      </div>\n    </$reveal>\n  </div>\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node": {
            "title": "$:/plugins/felixhayashi/tiddlymap/editor/contextMenu/node",
            "text": "\\define single()\n  <$list filter=\"\n      [[tmap:tm-toggle-central-topic, $:/core/images/star-filled, Toggle central topic]]\n      [[tmap:tm-delete-element, $:/core/images/delete-button, Delete node]]\">\n    <$button class=\"tc-btn-invisible\">\n      <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n      <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n      <<tmap \"splitAndSelect\" \", \" \"2\">>\n    </$button>\n  </$list>\n\\end\n\n\\define multi()\n  <$list filter=\"\n      [[tmap:tm-delete-element, $:/core/images/delete-button, Delete selected nodes]]\">\n    <$button class=\"tc-btn-invisible\">\n      <$action-sendmessage $message=<<tmap \"splitAndSelect\" \", \" \"0\">> />\n      <$transclude tiddler=<<tmap \"splitAndSelect\" \", \" \"1\">> />\n      <<tmap \"splitAndSelect\" \", \" \"2\">>\n    </$button>\n  </$list>\n\\end\n\n<div class=\"tc-drop-down\">\n  <$macrocall $name=<<mode>> />\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/advancedEditorBar",
            "text": "\\rules except wikilink\n\\define showEdgeField() show-$(curEdgeId)$\n\n<!-- === View Switcher ========================================== -->\n\n<div class=\"tmap-menu-bar\">\n  View:\n  <$reveal type=\"match\" text=\"false\" default=<<isViewBound>> >\n    <$select\n        tiddler=<<viewHolder>>\n        field=\"text\"\n        default=<<viewLabel>> >\n      <$list filter=<<tmap \"option\" \"selector.allViewsByLabel\">> >\n        <option value={{!!title}}>\n          <$view tiddler={{!!title}} field=\"title\" />\n        </option>\n      </$list>\n    </$select>\n  </$reveal>\n  <$reveal type=\"match\" text=\"true\" default=<<isViewBound>> >\n    <b><<viewLabel>></b>\n  </$reveal>\n\n<!-- === Menu =================================================== -->\n\n  <$button\n      popup=<<qualify \"$:/temp/menu\">>\n      class=\"tmap-unicode-button\"\n      tooltip=\"Open the Menu\">{{$:/core/images/menu-button}}\n  </$button>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/menu\">> >\n    <div class=\"tc-drop-down\">\n      <a href=\"http://tiddlymap.org#Documentation\" target=\"_blank\">\n        {{$:/core/images/info-button}} Open online help\n      </a>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-create-view\">\n        {{$:/core/images/new-button}} Create new view\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-generate-widget\">\n        {{$:/core/images/permalink-button}} Grab widget code\n      </$button>\n      <div class=\"tmap-list-separator\">Global configurations:</div>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-configure-system\">\n        {{$:/core/images/options-button}} Configure TiddlyMap\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-edge-types\">\n        <span class=\"tmap-unicode-icon\">◭</span> Manage edge-types\n      </$button>\n      <$button class=\"tc-btn-invisible\" message=\"tmap:tm-manage-node-types\">\n        <span class=\"tmap-unicode-icon\">▢</span> Manage node-types\n      </$button>\n      <div class=\"tmap-view-actions\">\n        <div class=\"tmap-list-separator\">Actions for this view:</div>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-edit-view\">\n          {{$:/core/images/options-button}} Configure view\n        </$button>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-rename-view\">\n          {{$:/core/images/tag-button}} Rename view\n        </$button>\n        <$button class=\"tc-btn-invisible\" message=\"tmap:tm-delete-view\">\n          {{$:/core/images/delete-button}} Delete view\n        </$button>\n      </div>\n    </div>\n  </$reveal>\n\n<!-- === Neighbourhood menu ===================================== -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\"\n                     \"config.sys.editorMenuBar.showNeighScopeButton\">>>\n    <$button\n        class=<<neighScopeBtnClass>>\n        tooltip=\"Change the neighbourhood scope\"\n        popup=<<qualify \"$:/temp/neighScope\">>>\n      {{$:/core/images/preview-open}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/neighScope\">> >\n    <div class=\"tc-drop-down\">\n      <div class=\"tmap-list-separator\">Neighbourhood scope</div>\n      <$button class=\"tc-btn-invisible\">None\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.neighbourhood_scope=\"\" />\n      </$button>\n      <$list filter=\"[[1|1 step distance]]\n                     [[2|2 step distance]]\n                     [[3|3 step distance]]\n                     [[4|4 step distance]]\n                     [[5|5 step distance]]\">\n        <$button class=\"tc-btn-invisible\">\n          <<tmap \"splitAndSelect\" \"|\" \"1\">>\n          <$action-setfield\n              $tiddler=<<viewRoot>>\n              config.neighbourhood_scope=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n        </$button>\n      </$list>\n      <$button class=\"tc-btn-invisible\">No limit\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.neighbourhood_scope=\"100\" />\n      </$button>\n\n      <div class=\"tmap-list-separator\">Neighbourhood traversal</div>\n\n      <$radio field=\"config.neighbourhood_directions\" value=\"in\"> Incoming</$radio><br />\n      <$radio field=\"config.neighbourhood_directions\" value=\"out\"> Outgoing</$radio><br />\n      <$radio field=\"config.neighbourhood_directions\" value=\"\"> Both</$radio>\n\n      <div class=\"tmap-list-separator\">Other</div>\n\n      <$checkbox field=\"config.show_inter_neighbour_edges\"\n          checked=\"true\" unchecked=\"false\"> Inter-neighbour edges</$checkbox>\n\n    </div>\n  </$reveal>\n\n<!-- === Tracing ===================================== -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<isShowNeighbourhood>>>\n    <$button\n        class=<<tracingBtnClass>>\n        tooltip=\"Trace your clicks on neighbouring nodes.\"\n        popup=<<qualify \"$:/temp/tmap-tracing\">>>\n      {{$:/core/images/timestamp-on}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/tmap-tracing\">> >\n    <div class=\"tc-drop-down\">\n      <$button message=\"tmap:tm-neighbourhood-reset-trace\">\n        {{$:/core/images/erase}} Restart\n      </$button>\n      <span\n        title=\"\n          Enable this option to trace your clicks on neighbouring nodes.\n          Traced neighbours are temporarily added to the map (until the map is closed)\n          as if they where regular nodes of the map\"\n      >\n        <$checkbox\n          field=\"config.neighbourhood_trace_clicks\"\n          checked=\"true\"\n          unchecked=\"false\"\n        >\n          Trace clicked nodes\n        </$checkbox>\n      </span>\n      <br />\n      <span title=\"Will focus an zoom on the latest traced node\">\n        <$checkbox\n          field=\"config.neighbourhood_focus_newly_traced_node\"\n          checked=\"true\"\n          unchecked=\"false\"\n        >\n          Focus traced nodes\n        </$checkbox>\n      </span>\n      <br />\n      <span title=\"Per default, only neighbours of nodes matching the node filter are displayed. Enable this option to also show neighbours of traced nodes.\">\n        <$checkbox field=\"config.neighbourhood_include_traced_node_neighbours\"\n            checked=\"true\" unchecked=\"false\"> Show neighbours of all traced nodes</$checkbox>\n      </span>\n    </div>\n  </$reveal>\n\n<!-- === Export menu ============================================ -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\" \"config.sys.editorMenuBar.showScreenshotButton\">>>\n    <$button class=\"tmap-unicode-button\" tooltip=\"Open the map-export menu\" popup=<<qualify \"$:/temp/mapExport\">>>\n      {{$:/core/images/download-button}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/mapExport\">>>\n    <div class=\"tc-drop-down\">\n    <$button\n        class=\"tc-btn-invisible\"\n        tooltip=\"Export the graph and all its elements\n                 in form of a JSON file\">\n        {{$:/core/images/permalink-button}} Save as JSON file\n      <$action-sendmessage\n          $message=\"tmap:tm-download-graph\"\n          view=<<viewLabel>> />\n    </$button>\n    <$button\n        class=\"tc-btn-invisible\"\n        tooltip=\"Create a png image to download or save it\n                 as image or view-placeholder in your wiki\">\n        {{$:/core/images/palette}} Save as png image\n      <$action-sendmessage $message=\"tmap:tm-save-canvas\" />\n    </$button>\n    </div>\n  </$reveal>\n\n<!-- === Raster menu ============================================ -->\n\n  <$reveal\n      type=\"match\"\n      text=\"true\"\n      default=<<tmap \"option\" \"config.sys.editorMenuBar.showRasterMenuButton\">>>\n    <$button\n      tooltip=\"Change the raster of your map\"\n      class=\"tmap-unicode-button\"\n      popup=<<qualify \"$:/temp/rasterMenu\">>>\n      {{$:/core/images/line-width}}\n    </$button>\n  </$reveal>\n\n  <$reveal type=\"popup\" position=\"below\" state=<<qualify \"$:/temp/rasterMenu\">>>\n    <div class=\"tc-drop-down\">\n    <$button class=\"tc-btn-invisible\">Disable raster\n      <$action-setfield\n          $tiddler=<<viewRoot>>\n          config.raster=\"\" />\n    </$button>\n    <div class=\"tmap-list-separator\">Raster sizes</div>\n    <$list filter=\"[[50|50px]]\n                   [[75|75px]]\n                   [[100|100px]]\n                   [[150|150px]]\">\n      <$button class=\"tc-btn-invisible\">\n        <<tmap \"splitAndSelect\" \"|\" \"1\">>\n        <$action-setfield\n            $tiddler=<<viewRoot>>\n            config.raster=<<tmap \"splitAndSelect\" \"|\" \"0\">> />\n      </$button>\n    </$list>\n    </div>\n  </$reveal>\n\n</div>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/focusButton": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/focusButton",
            "text": "\\define filter() [list[$:/temp/tmap/nodes/$(viewLabel)$]search:title{$:/temp/tmap/bar/search}]\n\\define concat(str) $str$\n\n\\define state() $(widgetPopupsPath)$/focus\n\n<div class=\"tmap-focus-button\">\n  <$reveal type=\"match\" state=<<state>> text=\"\">\n    <$button\n        tooltip=\"Zoom on a specific node\"\n        class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n     <$action-setfield $tiddler=\"$:/temp/tmap/bar/search\" text=\"\" />\n     <$action-setfield $tiddler=<<state>> text=\"1\" />\n    </$button>\n  </$reveal>\n  <$reveal type=\"nomatch\" state=<<state>> text=\"\">\n    <$button\n        tooltip=\"Close zoom popup\"\n        class=<<tv-config-toolbar-class>>>{{$:/core/images/advanced-search-button}}\n     <$action-setfield $tiddler=<<state>> text=\"\" />\n    </$button>\n    <div class=\"tmap-search-dropdown\">\n      <div class=\"tc-drop-down\">\n        <$edit-text\n            focus=\"true\"\n            tiddler=\"$:/temp/tmap/bar/search\"\n            field=\"text\"\n            type=\"text\"\n            tag=\"input\"\n            default=\"\" />\n        <small><$count filter=<<filter>> /> results</small>\n        <hr />\n        <div class=\"tmap-very-small-list\">\n          <$list filter=<<filter>>\n              variable=\"item\"\n              emptyMessage=\"//No results//\">\n            <$button\n                class=\"tc-btn-invisible\"\n                message=\"tmap:tm-focus-node\"\n                param=<<item>>>\n              <$view tiddler=<<item>> field=\"title\" />\n            </$button>\n          </$list>\n        </div>\n      </div>\n    </div>\n  </$reveal>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/hook/editor": {
            "title": "$:/plugins/felixhayashi/tiddlymap/hook/editor",
            "caption": "Map",
            "tags": "$:/tags/SideBar",
            "text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    The editor is not displayed in mobile mode.\n  </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n  <$tiddlymap\n    class=\"tmap-sidebar-map-editor\"\n    editor=\"advanced\"\n    object-id=\"main_editor\"\n    click-to-use=\"false\">\n  </$tiddlymap>\n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/hook/liveTab": {
            "title": "$:/plugins/felixhayashi/tiddlymap/hook/liveTab",
            "caption": "Live",
            "text": "\\define width() calc(100% - 15px)\n\n<div class=\"tmap-mobile-editor\">\n  <div class=\"tmap-flash-message tmap-warning\">\n    The live tab is not displayed in mobile mode.\n  </div>\n</div>\n<div class=\"tmap-desktop-editor\">\n  <$set name=\"view\"\n      filter=\"[{$:/temp/tmap/currentTiddler}get[tmap.open-view]]\"\n      emptyValue=<<tmap \"option\" \"config.sys.liveTab.fallbackView\">>>\n  <div>\n    <$tiddlymap\n        view=<<view>>\n        click-to-use=\"false\"\n        refresh-triggers=\"$:/temp/tmap/currentTiddler\"\n        object-id=\"live_tab\">\n    </$tiddlymap>\n  </div>\n  </$set> \n</div>"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/quickConnectButton",
            "tags": "$:/tags/ViewToolbar",
            "description": "{{$:/language/Buttons/TiddlyMap/Hint}}",
            "caption": "{{$:/plugins/felixhayashi/tiddlymap/icon}} {{$:/language/Buttons/TiddlyMap/Caption}}",
            "text": "\\define buttonClass() $(tv-config-toolbar-class)$ $(additional-classes)$\n\n\\define nonExistentItem()\n<<item>> <span style=\"color: #9E9E9E\">(will be created)</span>\n\\end\n\n\\define noConnectionsMsg()\n<tr><td colspan=\"4\">//No connections found!//</td></tr>\n\\end\n\n\\define normalSearchFilter()\n[!is[system]!has[draft.of]search:title{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define regexSearchFilter()\n[!is[system]!has[draft.of]regexp{$:/temp/quickConnectSearch}sortcs[title]limit[50]]\n\\end\n\n\\define showButton(state)\n<$button set=\"$:/temp/tmap/state/popup/quickConnect\"\n         setTo=\"$state$\" tooltip={{$:/language/Buttons/TiddlyMap/Hint}} \n         aria-label={{$:/language/Buttons/TiddlyMap/Caption}}\n         class=<<buttonClass>>>\n<$list filter=\"[<tv-config-toolbar-icons>prefix[yes]]\">{{$:/plugins/felixhayashi/tiddlymap/icon}}</$list>\n<$list filter=\"[<tv-config-toolbar-text>prefix[yes]]\">\n<span class=\"tc-btn-text\"><$text text={{$:/language/Buttons/TiddlyMap/Caption}}/></span>\n</$list>\n</$button>\n\\end\n\n\\define searchResults()\n<td>\n  <$button tooltip=\"Create incoming edge\">\n    <<tmap \"option\" \"misc.arrows.in\">>\n    <$action-sendmessage $message=\"tmap:tm-create-edge\"\n                         from=<<item>>\n                         to=<<currentTiddler>>\n                         force=\"true\"\n                         label={{$:/temp/quickConnectSearch/type}}\n                         view={{$:/temp/quickConnectSearch/view}} />\n  </$button>\n</td>\n<td>\n  <$button tooltip=\"Create outgoing edge\">\n    <<tmap \"option\" \"misc.arrows.out\">>\n    <$action-sendmessage $message=\"tmap:tm-create-edge\"\n                         from=<<currentTiddler>>\n                         to=<<item>>\n                         force=\"true\"\n                         label={{$:/temp/quickConnectSearch/type}}\n                         view={{$:/temp/quickConnectSearch/view}} />\n  </$button>\n</td>\n<td>\n  <$list\n      filter=\"[<item>is[tiddler]]\"\n      emptyMessage=<<nonExistentItem>>>\n    <$view tiddler=<<item>> field=\"title\" />\n  </$list>\n</td>\n\\end\n\n\\define hidePopup()\n<$macrocall $name=\"showButton\" state=<<qualify>> />\n\\end\n\n\\define showPopup()\n<$set name=\"additional-classes\" value=\"tmap-active-button\">\n  <$macrocall $name=\"showButton\" state=\"\" />\n</$set>\n<$set\n    name=\"searchFilter\"\n    filter=\"[field:title[$:/state/tmap/tid-toolbar]has[re-filter]]\"\n    value=<<regexSearchFilter>>\n    emptyValue=<<normalSearchFilter>>>\n<div class=\"tmap-quick-connect tc-reveal tc-popup\">\n  <div class=\"tc-drop-down\">\n    <div class=\"title\">Create connection</div>\n    <table class=\"tmap-quick-connect-search-bar\">\n      <tr>\n        <td>Type:</td>\n        <td>\n          <$edit-text\n              tiddler=\"$:/temp/quickConnectSearch/type\"\n              field=\"text\"\n              type=\"text\"\n              tag=\"input\"\n              default=\"\" />\n          <$select tiddler=\"$:/temp/quickConnectSearch/type\" default=\"\">\n            <option></option>\n            <$list filter=<<tmap \"option\" \"selector.allEdgeTypesById\">>>\n              <option>{{!!title}}</option>\n            </$list>\n          </$select>\n        </td>\n      </tr>\n      <tr>\n        <td>Search:</td>\n        <td>\n          <$edit-text tiddler=\"$:/temp/quickConnectSearch\" type=\"text\" tag=\"input\" default=\"\"></$edit-text>\n          <$checkbox\n              tiddler=\"$:/state/tmap/tid-toolbar\"\n              field=\"re-filter\"\n              checked=\"1\"\n              unchecked=\"\"\n              default=\"\"> regexp\n          </$checkbox>\n<!--\n          <small>(<$count filter=<<searchFilter>> /> results)</small>\n-->\n        </td>\n      </tr>\n      </table>\n      <table class=\"tmap-create-connection-table\">\n      <tr>\n        <td colspan=\"2\">\n          <table class=\"tmap-very-small-list\">\n            <$list\n                filter=<<searchFilter>>\n                variable=\"item\">\n            <tr><<searchResults>></tr>\n            </$list>\n            <tr>\n            <$list filter=\"[{$:/temp/quickConnectSearch}regexp[.+]] -[is[tiddler]]\" variable=\"item\">\n              <<searchResults>>\n            </$list>\n            </tr>\n          </table>\n        </td>\n      </tr>\n    </table>\n    <div class=\"title\">Existing Connections</div>\n    <div class=\"tmap-quick-connect-existing-bar\">\n      <$select\n          tiddler=\"$:/state/tmap/tid-toolbar\"\n          field=\"direction\"\n          default=\"both\">\n          <option value=\"both\">both</option>\n          <option value=\"in\">incoming</option>\n          <option value=\"out\">outgoing</option>\n      </$select>\n      <$checkbox\n          tiddler=\"$:/state/tmap/tid-toolbar\"\n          field=\"filter.links\"\n          checked=\"-[[tw-body:link]]\"\n          unchecked=\"\"\n          default=\"\"> hide links\n      </$checkbox>\n    </div>\n    <table class=\"tmap-connection-table\">\n<!--\n    <tr>\n      <th></th>\n      <th>Tiddler</th>\n      <th>Type</th>\n      <th></th>\n    </tr>\n-->\n    \n    <$tmap-connections\n        filter=<<tmap mergeFields \"$:/state/tmap/tid-toolbar\" \"filter.\">>\n        direction={{$:/state/tmap/tid-toolbar!!direction}}\n        emptyMessage=<<noConnectionsMsg>>>\n      <tr>\n        <td title=<<direction>>><<directionSymbol>></td>\n        <td><$link to=<<neighbour>>><$view field=\"title\" /></$link></td>\n        <td><<edge.type>></td>\n        <td>\n          <$button\n              tooltip=\"Delete this connection\"\n              class=\"tc-btn-invisible\">{{$:/core/images/close-button}}\n            <$action-sendmessage $message=\"tmap:tm-remove-edge\"\n                id=<<edge.id>>\n                from=<<edge.from>>\n                to=<<edge.to>>\n                type=<<edge.type>> />\n          </$button>\n        </td>\n      </tr>\n    </$tmap-connections>\n    </table>   \n  </div>\n</div>\n</$set>\n\\end\n\n<$list filter=\"[all[current]is[tiddler]]\"><$list filter=\"[{$:/temp/tmap/state/popup/quickConnect}prefix<qualify>]\" variable=\"item\" emptyMessage=<<hidePopup>>><<showPopup>></$list></$list>"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/fullscreen.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/halfscreen.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/tiddlymap/icon": {
            "title": "$:/plugins/felixhayashi/tiddlymap/icon",
            "tags": "$:/tags/Image",
            "text": "<svg\n   xmlns:dc=\"http://purl.org/dc/elements/1.1/\"\n   xmlns:cc=\"http://creativecommons.org/ns#\"\n   xmlns:rdf=\"http://www.w3.org/1999/02/22-rdf-syntax-ns#\"\n   xmlns:svg=\"http://www.w3.org/2000/svg\"\n   xmlns=\"http://www.w3.org/2000/svg\"\n   xmlns:inkscape=\"http://www.inkscape.org/namespaces/inkscape\"\n   class=\"tc-image-tiddlymap-button tc-image-button\"\n   version=\"1.1\"\n   width=\"22pt\"\n   height=\"22pt\"\n   viewBox=\"0 0 128 128\">\n  <defs\n     id=\"defs4\">\n    <marker\n       refX=\"0\"\n       refY=\"0\"\n       orient=\"auto\"\n       id=\"Arrow1Lend\"\n       style=\"overflow:visible\">\n      <path\n         d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n         transform=\"matrix(-0.8,0,0,-0.8,-10,0)\"\n         id=\"path3850\"\n         style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n    </marker>\n    <marker\n       refX=\"0\"\n       refY=\"0\"\n       orient=\"auto\"\n       id=\"Arrow1Lstart\"\n       style=\"overflow:visible\">\n      <path\n         d=\"M 0,0 5,-5 -12.5,0 5,5 0,0 z\"\n         transform=\"matrix(0.8,0,0,0.8,10,0)\"\n         id=\"path3847\"\n         style=\"fill-rule:evenodd;stroke:#000000;stroke-width:1pt\" />\n    </marker>\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4329\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4321\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4315\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4307\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4299\" />\n    <inkscape:path-effect\n       effect=\"skeletal\"\n       id=\"path-effect4293\" />\n  </defs>\n  <g\n     transform=\"translate(0,-1024.5289)\"\n     id=\"layer1\">\n    <path\n       d=\"m 17.867073,4.5821643 a 3.7249374,3.7249374 0 1 1 -7.449875,0 3.7249374,3.7249374 0 1 1 7.449875,0 z\"\n       transform=\"matrix(-6.3328802,0,0,6.2775831,193.9581,1100.3667)\"\n       id=\"path4139-1-14\"\n       style=\"fill-opacity:1;fill-rule:nonzero\" />\n    <path\n       d=\"M 77.450496,1064.5069 C 58.849552,1025.9634 15.704158,1023.3858 2.8821873e-7,1034.558 L 0.02388589,1035.2674 C 24.502636,1022.2072 44.810725,1042.1507 60.163934,1074.112 z\"\n       id=\"path4337\"\n       style=\"fill-opacity:1;stroke-width:0.58181816;stroke-miterlimit:4;stroke-dasharray:none;marker-start:none;marker-end:none\" />\n    <path\n       d=\"m 12.878637,11.280739 4.75937,-2.7478243 4.759371,-2.7478236 0,5.4956479 0,5.495648 -4.759371,-2.747824 z\"\n       transform=\"matrix(4.6545455,0,0,4.6545455,-13.580429,1027.7638)\"\n       id=\"path3004\"\n       style=\"fill-opacity:1;fill-rule:nonzero\" />\n  </g>\n  <metadata\n     id=\"metadata3772\">\n    <rdf:RDF>\n      <cc:Work\n         rdf:about=\"\">\n        <dc:title></dc:title>\n        <dc:format>image/svg+xml</dc:format>\n        <dc:type\n           rdf:resource=\"http://purl.org/dc/dcmitype/StillImage\" />\n      </cc:Work>\n    </rdf:RDF>\n  </metadata>\n</svg>\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/media/surface.png": {
            "title": "$:/plugins/felixhayashi/tiddlymap/media/surface.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/config/EditTemplateFields/Visibility/tmap.id": {
            "title": "$:/config/EditTemplateFields/Visibility/tmap.id",
            "text": "hide"
        },
        "$:/language/Buttons/TiddlyMap/Caption": {
            "title": "$:/language/Buttons/TiddlyMap/Caption",
            "text": "tiddlymap"
        },
        "$:/language/Buttons/TiddlyMap/Hint": {
            "title": "$:/language/Buttons/TiddlyMap/Hint",
            "text": "Toggle TiddlyMap actions"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/macros": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/macros",
            "text": "\\define concat(str) $str$\n\n\\define input-text(field, index, default, readonly, class, focus)\n  <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n    <$edit-text\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        type=\"text\"\n        tag=\"input\"\n        default=\"$default$\"\n        focus=\"$focus$\"\n        class=\"$class$\" />\n  </$reveal>\n  <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n    <input type=\"text\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n  </$reveal>\n\\end\n\n\\define input-button(field, index, default, default, label:\"Proceed\")\n  <div class=\"tmap-button-wrapper\">\n  <$button>$label$\n    <$action-setfield $tiddler=<<output>> $field=\"$field$\" index=\"$index$\" $value=\"$default$\" />\n  </$button>\n  </div>\n\\end\n\n\\define input-textarea(field, index, default, default, class, focus)\n  <$edit-text\n      tiddler=<<output>>\n      field=\"$field$\"\n      index=\"$index$\"\n      autoHeight=\"no\"\n      type=\"text\"\n      tag=\"textarea\"\n      default=\"$default$\"\n      class=\"$class$\"\n      focus=\"$focus$\" />\n\\end\n\n\\define input-checkbox(field, index, readonly, default)\n  <$reveal type=\"match\" text=\"\" default=\"$readonly$\">\n    <$checkbox\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        checked=\"true\"\n        unchecked=\"false\"\n        default=\"$default$\" />\n  </$reveal>\n  <$reveal type=\"nomatch\" text=\"\" default=\"$readonly$\">\n    <input type=\"checkbox\" value=\"$default$\" readonly=\"true\" disabled=\"true\" />\n  </$reveal>\n\\end\n\n\\define input-multi-checkbox(selectFilter, invert:\"no\", default)\n  <div class=\"tmap-no-stretch\">\n  <$list\n      filter=\"$selectFilter$\"\n      emptyMessage=\"– This list contains no items –\">\n    <$checkbox\n        tiddler=<<output>>\n        tag=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n      <$view\n          tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">>\n          field=\"title\" />\n    </$checkbox><br />\n  </$list>\n  </div>\n\\end\n\n\\define input-select(field, index, selectFilter, default, nochoice)\n  <$select\n      tiddler=<<output>>\n      field=\"$field$\"\n      index=\"$index$\"\n      default=\"$default$\">\n    <$set name=\"nochoice\" value=\"$nochoice$\">\n      <$list filter=\"[<nochoice>regexp[.+]]\">\n        <option value=\"\"><b><<nochoice>></b></option>\n      </$list>\n    </$set>\n    <$list filter=\"$selectFilter$\">\n      <option value=<<tmap \"splitAndSelect\" \"|\" \"0\">> >\n        <$view tiddler=<<tmap \"splitAndSelect\" \"|\" \"1\">> field=\"title\" />\n      </option>\n    </$list>\n  </$select>\n\\end\n\n\\define input-radio(field, index, selectFilter, default)\n  <$list filter=\"$selectFilter$\">\n    <$radio\n        tiddler=<<output>>\n        field=\"$field$\"\n        index=\"$index$\"\n        value=<<tmap \"splitAndSelect\" \"|\" \"0\">>>\n      <<tmap \"splitAndSelect\" \"|\" \"1\">>\n    </$radio><br />\n  </$list>\n\\end\n\n\\define tmap-row(title, field, index, type, descr, note, label, default, readonly, reset, selectFilter, nochoice, invert, class, focus)\n  <tr>\n    <td class=\"tmap-title\">$title$:</td>\n    <td>\n        <<$type$\n          field:\"$field$\"\n          index:\"$index$\"\n          readonly:\"$readonly$\"\n          default:\"$default$\"\n          label:\"$label$\"\n          invert:\"$invert$\"\n          selectFilter:\"$selectFilter$\"\n          nochoice:\"$nochoice$\"\n          focus:\"$focus$\"\n          class:\"$class$\">>\n        <$reveal type=\"match\" text=\"true\" default=\"$reset$\">\n          <$button>reset\n            <$action-setfield $tiddler=<<output>> $field=\"$field$\" $index=\"$index$\" $value=\"$default$\" />\n          </$button>\n        </$reveal>\n    </td>\n    <td>\n      <span class=\"tmap-description\">$descr$</span>\n      <$reveal type=\"nomatch\" text=\"\" default=\"$note$\">\n        <div class=\"tmap-note\">''Note:'' $note$</div>\n      </$reveal>\n    </td>\n  </tr>\n\\end\n\n\\define visConfiguration(inheritedList, extensionField, styleName:\"style\")\n  <fieldset><legend>Visjs configurations ($styleName$)</legend>\n    <div class=\"tmap-flash-message tmap-info\">\n      Only config items that you actually changed have an effect on\n      the graph. Other options are visible, yet, inactive.\n    </div>\n    <$tmap-config\n        mode=\"manage-node-types\"\n        inherited=\"$inheritedList$\"\n        extension=\"$extensionField$\" />\n  </fieldset>\n\\end\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder": {
            "title": "$:/plugins/felixhayashi/tiddlymap/misc/defaultViewHolder",
            "text": "Default"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:central-topic",
            "description": "The style is applied to the node that you marked as central topic in a map.",
            "style": "{\"font\":{\"size\":22,\"color\":\"rgba(0,0,0,1)\"},\"shape\":\"star\"}"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/nodeTypes/tmap:neighbour",
            "description": "Neighbours are all nodes that are not part of the original set of nodes (\"matches\") but are connected (either outgoing or incoming) to a node of the original set.",
            "style": "{\"color\":\"#565656\"}"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/edges"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default/filter/nodes"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Default": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Default",
            "config.physics_mode": "false",
            "isview": "true"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/edges",
            "filter": "[prefix[$:/plugins/felixhayashi/tiddlymap/graph/edgeTypes]]",
            "text": "\n\n"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View/filter/nodes",
            "filter": "[field:title{$:/temp/tmap/currentTiddler}]"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Live View",
            "config.refresh-triggers": "$:/temp/tmap/currentTiddler",
            "config.physics_mode": "true",
            "config.vis": "{\"physics\":{\"forceAtlas2Based\":{\"springConstant\":0.09}}}",
            "config.neighbourhood_scope": "1",
            "created": "20150331114808577",
            "modified": "20200509212547688",
            "type": "text/vnd.tiddlywiki",
            "isview": "true"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search/filter/nodes",
            "filter": "[!is[system]search{$:/temp/search}] [!is[system]search:tags{$:/temp/search}] [!is[system]search:text{$:/temp/search}limit[10]]"
        },
        "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search": {
            "title": "$:/plugins/felixhayashi/tiddlymap/graph/views/Graph search",
            "config.refresh-triggers": "$:/temp/search",
            "config.neighbourhood_scope": "1",
            "config.physics_mode": "true"
        }
    }
}










{
 "0866b5f6-c06e-4d4b-b355-c334158925a3": {
  "x": -56,
  "y": 67
 },
 "bcc37f11-86f5-4fd1-b576-23610a33bf38": {
  "x": 154,
  "y": -171
 },
 "dc591155-5b2b-4a7e-a7d6-3b8a27a29940": {
  "x": -46,
  "y": -204
 },
 "b3ef59e6-fd90-48fe-aab3-b2c97776f136": {
  "x": 202,
  "y": 265
 },
 "04488d2d-fda0-4f77-be6e-535e6e4b3d4c": {
  "x": 285,
  "y": 160
 },
 "c77c0f9c-eec2-49da-a669-c15ea9c18e12": {
  "x": 269,
  "y": -41
 },
 "d062aaab-d172-4c53-bc80-9801f32fb391": {
  "x": 311,
  "y": 72
 },
 "53bff13a-aa83-48cb-bc42-db5b4fea49f1": {
  "x": 425,
  "y": -330
 },
 "9628a4a8-064a-4d80-9b79-28835feb1cb7": {
  "x": 173,
  "y": -406
 },
 "ccac41e9-0c46-4fd0-a3b1-04893c8995c1": {
  "x": 43,
  "y": -434
 },
 "65ffe223-abc7-4450-8d2c-1c3f2c01b52c": {
  "x": 670,
  "y": 265
 },
 "7c2dcc4b-f66d-489f-9a33-1db109dde0ca": {
  "x": 678,
  "y": 110
 },
 "a67f42bd-44db-4c3e-a29b-e03ac4ca4407": {
  "x": 692,
  "y": -154
 },
 "d5f10b28-db3c-4edd-bd7c-dd0ce76bb537": {
  "x": 682,
  "y": -224
 },
 "e395d284-d223-46bf-a736-00776dceaaf3": {
  "x": 709,
  "y": -102
 },
 "af96ac8f-cfe0-4028-8da5-72ce0d68b50f": {
  "x": 734,
  "y": -55
 },
 "76339ac9-6e1f-4c61-8f11-5b1e6c0cfc66": {
  "x": 742,
  "y": 5
 },
 "61f5c9a1-1b6c-47cf-bda9-35a1d83ea914": {
  "x": -289,
  "y": -127
 },
 "2ab79c28-3a90-4c53-979e-600da3f944c7": {
  "x": -165,
  "y": -13
 },
 "3586800d-11d5-4545-bac2-0c17a13d928c": {
  "x": -168,
  "y": -387
 },
 "00d155fa-f672-43d2-ae9b-8a434ba07742": {
  "x": -301,
  "y": -371
 },
 "bc701c1f-144d-4f30-82db-0ef6df6af48f": {
  "x": -418,
  "y": -351
 },
 "7036b3b3-1669-40ae-b6f0-5aff50d770ff": {
  "x": -595,
  "y": 100
 },
 "d929e6b6-5026-4908-a88b-39d24938ff74": {
  "x": -294,
  "y": 86
 },
 "80cbe671-fd57-4ba6-abcb-65ef3d197b1d": {
  "x": 184,
  "y": 320
 },
 "b16602bb-f152-40ad-bd68-2fd60a2de322": {
  "x": 523,
  "y": 378
 },
 "236067ba-5237-423b-9e4b-6f2fc78fad55": {
  "x": 149,
  "y": 412
 }
}


{
 "5b5fe352-9392-4d93-b5d5-b9062bf5cb60": {
  "x": 0,
  "y": 0
 },
 "dffc6ecd-ab6c-4fdc-8590-38021d5d636d": {
  "x": 100,
  "y": 100
 }
}


图情领域信息技术应用
{
    "originalVersion": "0.17.8+10010",
    "dataStructureState": "0.11.0",
    "showWelcomeMessage": false
}
{
    "tiddlers": {
        "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/acceptDeleteIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpiYzZmYmUxNi1mOTBkLWI1NDQtODUzOC05MjFkNjBiZjU0ZWI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTY6NDU6MDgrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjBmYzFjNjhhLTcwZTYtMGY0Ni05ZDk4LWFhNDVjNjYxYThjODwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNjo0NTowOCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmJjNmZiZTE2LWY5MGQtYjU0NC04NTM4LTkyMWQ2MGJmNTRlYjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz450LuoAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAATUSURBVHjajJZtTJVlGMd/13U/z+F4sBQOCiovZiMt8YiKZrMtypdh09StbLOtzA1RUmuTkppzIilJOB0Oa21tbaV+6UP5Mlnm5heVkfhyQJ1ONITAkAMqcTDonNOHA6g9qF3b/eF5/vf18r/u676uWwoLC3G73QCoKiICgIhQeGejVw3LMOTIP0xGdRQAFi1E9DyGSkLsKxtWEmAQuXfvHrJlyxZiYmIQkQHjeac/jjfKBsJ8YlnRzQKIgBoIh8ByaRSICAilRCjdk1UeAIhEIogIPT09SFFRER6PZ4DByqr1+WpRoYAquKYuqCPz9SZeeCVA4vggAC2XPVw54eXi0WTOH8yIslIIs+bryTsq+hl0d3cjxcXFuN1uVJVVp9dvEigSwP3iYj9vfV7L6IldPE5uXvZwcKuPsz/7+qLc/I1vexFAMBjEzJ49G9u2WV1TsEaVUhOBmJxVVeR9X8NTI3t5kgxN6GXakia67/bSeC4ZkexprccCZxLnVodCIRRgdU1BgsBuBVzz8qt49yv/oMb2f5TJd7kzBsXeLPHzal4VaiAmZnfupY0JIoKqKqoUGAHX9MV+llf4HxmtMaDyaDZLtvqZushPWEHsAlVFP/3rswSNsEEt4O0v/E9MCebx8PxCP5YNlr3hg7+/TFBEl6mClflGHUl9VdIvGycuJdDgvm/bAtu6j3c0uSmZufQhnRHPBsnIqcOyQGSZAjlEgCkLGh3RDHk6yJWTCQCUZi+gav8Mzh3KpGzeQgCuV3sZEhd06D2f3QgCas9XIuozCjw3q92xMXF8O8218QDM/fAMGLAsmLO2Jnof6rwkpjv10rLaURtEJimWJomtMDLdGUlyRhuBei8AU5Y0M2ZCMyPSW8hc2AxAW4OXUeOdbcKbFsQ2YKwkizCg1uAH9kxWOzU/+ga+X8s/Q/iBKur4w8tL79c69ESiTFXFQvQmyhhu1XsYNeHhW5s2o4OuwDB6ug2uISF8fZED9HQbgh1PM3Zah8PB7UYPGBBalDB+MFB/Kt6x0e0JMSzpDr9XxzmwprNxDB95F9eQkANrrI3HssFQq4hWAnDxaMqgaUoYF6DJ73X8b74Qz/C0Qds016tSUANqVypG92EMnD+SwZ9XPc5KSg/QWu900HotgRHjnA5uN3m4diojmiKzV3cNL25DdTvGwJESn0NhzMR2Ohqc6etoiidpgrNET3zrix6yKf3Bld8WLZ8IZcAG6ip9/LQpyOIt91vG2BltHCwezbbpKzEKYoFodKVO+fUh48f3+Lh20oexIBQqExFk586dxMbGkntp41rELscozFpRxaLN/6Mv/cf4hcMzCYdAzboDKXm7Ozs7MTk5ObhcLs4lzqmeeus4GCublgvJtF61Sc1qxR0beqzh7g4Xx3ZN5/KxaagCsvlASl4pQG9vb5TB0KFDibZtZfmlonxcVgVhAcuGjJxa0l9uImVKO3GpXahA4EYsjbXx3PgtmYbTk1CiKYM1h1LzKvrncmdnJ1JeXo7b7cYYQ9+A4L2r21IJR9ZhXOuxXGAZBvKv/Uui8wELVHYgUn44bdWNfmKRSIRgMIiUlJQQGxs78Krof7oYY8jt2TUCy3oH0XmI+MAejW0gYpoxxg/mF4zu3a8rbvXrPuigq6uLfwcA6IKAIsDf9kIAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0YjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo2OWVmYWE1NS01ZTI5LTIzNGUtYTUzMy0xNDkxYjM1NDNmYmE8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDA6MjkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjVkNWIwNmQwLTVmMjAtOGE0NC1hMzIwLWZmMTEzMzQwNDc0Yjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MDoyOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjY5ZWZhYTU1LTVlMjktMjM0ZS1hNTMzLTE0OTFiMzU0M2ZiYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz5WKqp9AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYXSURBVHjafFZtUFTXGX7e9z27sveuMCwYV8ElrA7YSFYHtJUPkaaI0aRqG8wP00zUzljDINNSA/2ROtpO24SxnahlxjYd7SSjmUkymcxYlDhQPzHGisEVp8HwYWCVVVgEsrsuLnL74+5uqTF9Z+7cO/d8PO95zvO851BlZSV0XQcAMDOYGQBARDhX3JRmMDYZwLPMWAzGHACYIgwS46oBNBNwtOL8CwE8EkSEUCgE2rJlC2w2G4go8Zwo/bMDgnoG6gxLfAAAYvPDMCCszKTAMIAGAhrWnf15AAAMwwARIRKJgDZv3gy73Q4iAjPjxIr9VVOMRhbAYKB8zvrO0llrfEsdKwLZek6YAPSFvtSu3GtLawu0ZJ6625SHGBQB1T88t6MxvopgMAjaunUrdF0HM+P4yv27DMYeJmB1RqW3Jnf3tQX2p0L4P9EXuqEd7PmDp+XuMU9sRbvXnnt1TxxACgoKYLVacbzsQDUJGkSATe6qi28uPtzusM6Kxie6NHLGUX3lxVUNX9StPHnn4wy3njuUYcu6n2pNi66avcEXnByP/nv8aiaIyrqz2gO5A9+9FI1GIfn5+WhZdTAdjFMkwMvZOy7uWnTAOz3L4Yk71m3t69fdfTDoUGTBeHTUfiHQ6lo7Z2OXJvpDAChKe+aOCdKRKWxZ2+1qb3yyd3GYmRkQ7GQBVs99wfv6on3eR2k4PdTkDEbH7IuS8/svld/561PJS/pDk1/bzwx94pze7xc5v/H+YPY6r5BAkdrJzODTK46lE6PeYEJt7u+8j+OZwCBiEAgAoNgKJoEQf6PvNvdrXgtZoNhSf7q0KZ3B2AQmVMze0Jmt54S/DcDCVig2NcvEUGxJAE4Pl+YOr0iv6BRSIPAmBeBZAmHlE2sH4p1uhrq1s0MnnEQMBsf8wRASAICQQCCITN1X7/sOuc0kgOVp3/fPs2WHv+coG7gQOJUnLGsUCTxEjPzUohEA+NfIWUdtx0+efzA1kSSkIGyBAQNCKgHAEBAJ3u79U7kiAcWoem/gb5Fd33nrH3kp+SMWtuAB+GllMJxMjCx9QRgA3uiqL5kwHiTlpxb3smlfMDGYGPP1hcMAkJvs8ScpfdJspdj+MK6Pf+5+u29vyb4lR4+BGEziVESAkEpw6Av1OhUpHCz4qOXbzFWz4Ncdj/v/o08Lt92ODDgZDCEFJYoUGH4mzugP92puPTf0pD3H7wvfdFZdqSxnMtWjoGAAmG9fOLxjwesdjT2/XzIQ7ks3sycYMSEwGHNtWf5bkX5NkYCJBxUBXiGV0XHvosOt54Zey33j/K+8P33++vjnbiGJbbLE+J9SANAb6nJ2B79wcUwETAwQQ7fMjPzMvfP8ja87HUIKMOiaAqMZhrGmLdAy78eZrwwsTS0eObTs+IdtgVanxBUExqGbb5VzrIISGIoUXsmqbgEhJldCQWqRf27SvPAn/o8XmgLhZsUkR4ll37mhk3n94Z4OlzY/7NLcYZfm7o1z2zT4vsvUNSXqprBCkmiTFbPX90/fh8GIT2sf+zTPdDMf4dVnNg4z+E0ixsGeBs9jd5ViSgLHjCb/peaR+MD3d4/ZJg2llyuG2Vwy7QWAs8PNnn1f7vkGSGxAzE6mk+kxkx/p/4unffSCR0hAoL1EBCYiPNdWNcwkNQTCR7feWX6g+7f/A7I8rcw/U6UEe0Ndrhc/W7mtL9ztmqlSgstSS/zTJ28dalpOpkRryrwbhwBACgsLMWPGDOT4ll3qyeqAkJTdCF7P/CrUY/GkLL1rE+2hTbSH8+0Lb/WEuhzhyaA905blf9Vd/895WnZwLHrPevir/cvOB1oLYpTtLrm6oYGIMDExAaqtrUVKSgqYGSKCk0WHq5ikkWEWtNL0imv5qUW+RclLRjJsrhBAuH1/QL8R7HR4xy5nescuP23E6hOA6mLv+sb4uTw6Ogqqq6uDpmkQkcStorX4XRcM1FjZ+kvFFjCJKU1WpkNJJUqIMtX1RyLeX3JtQ0JRhmGYZ/L27duRnJycuFGISOJ9pqh5lrB6iYgqGOxRrOaa54DcZmKvkJxk8JHC9rKh+KVhOsD4+Dj+MwADIf8n5m4xGwAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/backIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/backIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDpmOWQ3OGY4ZC1lNzY0LTc1NDgtODZiNy1iNmQ1OGMzZDg2OTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTU6MDE6MDkrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOmI2YjQwMjVkLTAxNjQtMzU0OC1hOTdlLTQ4ZmYxMWM3NTYzMzwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNTowMTowOSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOmY5ZDc4ZjhkLWU3NjQtNzU0OC04NmI3LWI2ZDU4YzNkODY5Nzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4jq1U/AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAVTSURBVHjanFVfTFNnFP+d77ve8qeVFbBrpcVgRrCRFikFByLxwSAaE32oRCHD6JMxxhhn8G2RxxH3MsOTbyYsmCAxPMmMMYtkIUYmK60OO0qAK23BFlNob0uh3x7WS5jLZPpLbm6+k/P9zrm5v9855PF4UFhYCABgjIExBgAgIqRSqRIi6gDQRkQ1RGTB3wgR0e8AHgH4Sa/XR/EBiAiJRAJ04cIF5Ofng4g2n0gkUkxENwF0c843LzHGQEQQQkCLExEA9ALotVgsUQAQQmgNQhJCbF5kjCEUCl0moj4t5na7fTU1NUpVVVXUYrEkASAcDhe8efOmxOfzWScmJqoBdBNR99LS0hWz2dynNSSEAF28eBGFhYVgjCEcDn9HRD1EhIMHD3o9Hs9kWVlZAh9BKBQqGB4edr58+dKZ+6JbJpOpBwBWV1fB6+rqIMsyIpHIFcZYL2MMra2tY5cuXRrfuXNnBtvAYDBk3G63oqpqZm5uzgrgSDKZjBoMhueZTAbc5XIhFouVEtFTxhiOHTs2dv78eS8+Efv374+oqpqZnZ21cs5PJJPJPlmWkyynnBuMMTQ0NHi7uro+mVyDx+Pxulwu71ZOlkqlSonoJhGhvb39s8k1nDx50ss5hyRJN9PpdKlERB2aWjSVaEilUvzBgwcORVEs5eXloXPnzk1sV8BkMiUdDofP7/dXZ7PZDilnIhw4cGBeS1pbW2P37t1zBwKBikQiUUREWFhYsHHO0d7evm0Ru90+/+rVq2rO+XGJiJxEhMrKyhgAjI6OWoeHh5tWVla+4JzDZrO9bW5unhwcHGzz+/32np4e+xaDbfoHAMxmc6ijo2O0oqIiJkkSNjY2HBIRmRljMJvNyWfPnln7+/tPMMZQXl6+0NbW9qK2tjYcj8floaEhqKpq+HCkbD3PzMwYBgYG0NXV9UuusFna2kEgELAQEQ4dOvSis7PzN41Ar9dnrl27NqCNkv/C3bt3zy4tLVmICJxzEBFJRBQmorLFxcWCqqqq0Pj4eO3Y2JhbUZTdra2tL2pra8OJRGLHnTt3zkqS9K+huHU4EhHMZnMoGo0W5OIh7nK5jjLGKq1W69vDhw8rRqMxMjc3t2t5eXnX5ORklc/nM+fl5SWnpqa+0uv1K/n5+Ws6nW5NluXNd15e3ppOp1uz2WyzZ86cGQ0Gg6ZAIFCZzWZ/lYjokRDiuN/vt7W0tMw3NTUpbrd78P79++5gMFgRiUTKHj58WMYYQ3V19etTp05tq6Lp6Wkb5xxCiEfc7XZPM8a6FxcXTfX19a/1en2Gcy5qamreNjY2/qGq6joRZe12+9Tp06e3JY/FYgWPHz8+mhvr3/CWlpbk+vp6PmOseWVlBS6XS9GSJUkSdrs93NDQ8Oe+ffvC/8fJIyMjddFo9Esi6pVleVjT2m0A8Hq9zqGhIefnjoknT544A4GAM/eDbxMReFNTE0pKSpKqqsaI6Pj8/LxVVdWM3W6PfCr5xMTE1zllXS0uLn6aSqXAGxsbodPpoNfrn6uqCs75EUVRrJFIZMfevXsXdTrdxseIE4mEPDIyUu/3++tynd8yGo29RIR0Og26fv06ioqKwBgD5xzv3r27zBjrIyJIkgSHwzFZWVmp7NmzJ1ZaWpoAgGg0WqgoSvHMzIw1GAw6tvjhitFo7NPW5fv370Hd3d0oKCgA53zTQMvLy+VCiKuSJH0rSdLmztZytIWv5RPRD0T0Y3Fx8dzWfby6ugopHo//w4mcc8iyPMc5v5FOp7/PZrOdQohWInIC2C2EgBBigYi8Qoifs9lsv06nWyIiaFxagXg8jr8GAGxuIe7LBeWhAAAAAElFTkSuQmCC"
        },
        "$:/plugins/felixhayashi/vis/img/network/connectIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/connectIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo3ZWRhMjI0MC0yYTQxLTNlNDQtYWM2My1iNzNiYTE5OWI3Y2E8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6Mzg6NTcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjlmYjUwMDU0LWE3ODEtMWQ0OC05ZTllLTU2ZWQ5YzhlYjdjNjwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDozODo1NyswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjdlZGEyMjQwLTJhNDEtM2U0NC1hYzYzLWI3M2JhMTk5YjdjYTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ubxs+AAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAUtSURBVHjajJZ/bNT1Gcdfz/P53PV6B4W7VltLqdAaplIOiMOoyxxJCSs/Gv/yB4gzJroAosmmDklwkYWR0bQsdmkykoojTpcsWYLxD/lRZdMQkTHRtkLZRqG0tIVe7662vTu43n32x/VKZ/jh89cn38/zvN7P5/l88zwf2blzJz6fDwARQUSm1n8s31CM0/VAnbNmsUPuAsDpgEO+Bg4C7//iyv5hvmMiQiqVQpqamvB6vVNwEeG1JZtCBrYi/MrkAwDNgjhwAlbzICBLA0rDb0+/839C6XQaaWxspLCw8Dp86cbNmqVFJQddE6KzdjZ9D89g+B6fSyCOcyn1nxil+O9xKg5HqWFSHGXLjrP7W/ICqVQK2bNnDz6fDxFh65KNvxbHDhF4rJj2bXPo+IGfcW5h5xL4f99P+FCEMIAob75x9t0dAMlkElNXV4e1lteXbNqiQoMaeOFOjrdU868SD2luYyEP6dUh+sYmSHeOU6GO5Z8VLx5+NNZxIpPJ5AS2L3upROCoCvz8Lo7vnkf77cAHhpiz/zIL9vWz8L8p/NvupmM0Q7pjnAoLqz8tDrc8MnQqYVUVhVdF4LEg7b+rvDn8wDDlH0WoPpukLJImSBaMwjcJqmwWts2jPZLG/8kwYVFeVdXXZcFf4yVDc2cNKfBFmD9X+0ncCP58F48eG+Feo2CAUkvs4dl0V/uJvdXLiiV+ut++n7YLSfxPfMMG54ChzB3WIesVWB2i82bw1AR6fJR7C4VsfYiv6u/k3A9nEgP4zXke8DiYHyAOMK+QxPIgnZ9GqSHr1itQJ8DK2fTerDQ+S/bHRXQJaHSCwNIZ2Xh+7+S3VAmwNMBA/tuPZtErgKquUmdMWIFlRURvdamRNEXGwIWrlP47pTMzLiunxghGMwTLvcTWlHAp77s4QNSrYMQtss6ZMgWqCm5cHoDHO1nbk6K8zEN8+3zatv2Hn1b59EqJZdxmYUERg9P9KwpIiAOTdWUWBXuLzB/vZG3P1Un4PNp2d1MbmyD45TWCxuCsQm0x56bHGHFYEZwxok7toAA9Sfw3hCcoL/NOwi9QO5wmWO1j4JEgZxTkodmcWRGkf3pcX0r8xoAaBixKu4U5/xwndM+0tpAvS6mP+PZK2nb1UBvPEKwKMLDvPj4ESGc55lGy303sdJKQdZB2rkMdctAB/4gzN+/Q2ENNd4LyUi/xN+bTtquX2thk5nk4wI3gAF+OMNcA1nFQDfK+BY5GqbkwWabTY5QZhXWlnNx1ntrY1Rz87fuvw29m/Sn8J+PUGAFj5T19baA1IspuBZp7cx1x4SwG1cEf+lgRSROs8jGwb+Ht4QB/GSSsAhYano39LWIBxNEIbP14hPDuiyS2VtJuHXQlKKvxM/jiXDq/D/xPlwifGMkJZB2NIoKpr69nxeiZxLHicFSFVWfGqBidIP3LSjrWltD94CyufF/4kQgPuVz2Lz93+dDRa9eu5QQ8Hg8/iXee+Dy4CKMs7xqn4nwKz9IirhQqmVuB42m8ey+x7LMoD6iAON782eChhqmRuXfvXgKBAKqKqtI0/8nNKrQI4BVYXkzHgzPpC88gWuHL/caXrhLoGiN0apSKr0ZZRBZM7q2w5ZnLR1oAnHOMjY0hra2tFBQUYIyZmstvVT1Z6eDlAuEVq7merxmwueNPDXy9PvybjKP5mctHLk4/XTKZRJqbm/H7/VNw1VyEMYbW4FN3WNWnnchKoy5sHeVGBRX6VWi3ymFx7r11Ix8MTX/y5C2RSPC/AQB61erowbpqSwAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/cross.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/cross.png",
            "type": "image/png",
            "text": "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/GMzLdsAADvGaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMjowNToxNyswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjk4MmM2MGIwLWUzZjMtMDk0MC04MjU0LTFiZTliNWE0ZTE4MzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ODJjNjBiMC1lM2YzLTA5NDAtODI1NC0xYmU5YjVhNGUxODM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTU6MzUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjIxODYxNmM2LTM1MWMtNDI0OS04YWFkLWJkZDQ2ZTczNWE0NDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NTozNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6NjU0YmM5YmQtMWI2Yi1jYjRhLTllOWQtNWY2MzgxNDVjZjk0PC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAyLTE0VDEyOjA1OjE3KzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDAwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjc8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+NzwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSJ3Ij8+cZUZMwAAACBjSFJNAAB6JQAAgIMAAPn/AACA6QAAdTAAAOpgAAA6mAAAF2+SX8VGAAAA2ElEQVR42gDLADT/AS0tLUQFBQUVFxcXtPHx8fPl5eUNCAgITCkpKesEHx8fGgYGBjH+/v4a+Pj4qgQEBFU6OjodMTExzwQUFBSvEBAQEfX19SD19fVqNDQ0CElJSd/9/f2vAwEBAfrn5+fkBwcHLRYWFgsXFxfz29vbo9LS0uwDDQ0NDfPz81orKysXIyMj+ODg4Avh4eEa/f391gMkJCRYPz8/KUhISOMCAgKh8fHxHRsbGx4UFBQQBDk5OeY7Ozv7CAgItPb29vMEBASaJSUlTQ0NDesDAEwpT0Ko8Ri2AAAAAElFTkSuQmCC"
        },
        "$:/plugins/felixhayashi/vis/img/network/cross2.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/cross2.png",
            "type": "image/png",
            "text": "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/GMzLdsAADoRaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iCiAgICAgICAgICAgIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZXhpZj0iaHR0cDovL25zLmFkb2JlLmNvbS9leGlmLzEuMC8iPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgICAgPHhtcDpDcmVhdGVEYXRlPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3htcDpDcmVhdGVEYXRlPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE0LTAyLTE0VDExOjU2OjE1KzAxOjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6OWIwNjRhODctYWNlZi1jMjQ5LTg5MWUtNDAxOTVmMWJjMTNkPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjlmYTI2M2QyLTljOWMtNWY0OC1iYjNiLThmYmQ5NmI5ZTBhMjwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmNyZWF0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDo5ZmEyNjNkMi05YzljLTVmNDgtYmIzYi04ZmJkOTZiOWUwYTI8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMTRUMTE6NTY6MTUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjliMDY0YTg3LWFjZWYtYzI0OS04OTFlLTQwMTk1ZjFiYzEzZDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0xNFQxMTo1NjoxNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8cGhvdG9zaG9wOkNvbG9yTW9kZT4zPC9waG90b3Nob3A6Q29sb3JNb2RlPgogICAgICAgICA8cGhvdG9zaG9wOklDQ1Byb2ZpbGU+c1JHQiBJRUM2MTk2Ni0yLjE8L3Bob3Rvc2hvcDpJQ0NQcm9maWxlPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpYUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWERpbWVuc2lvbj41PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjU8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAKPD94cGFja2V0IGVuZD0idyI/PvQ0yV0AAAAgY0hSTQAAeiUAAICDAAD5/wAAgOkAAHUwAADqYAAAOpgAABdvkl/FRgAAAHZJREFUeNoAaQCW/wE1NTWrERER3+3t7Xbp6emKOTk5IgQtLS3kBAQEdfLy8ipOTk5LQ0NDkAE0NDQAEhISxiEhITkTExPH9PT0OgMGBgaPMzMzVS8vL7XU1NRC7+/vEQNfX19lUFBQtfPz82EEBAQMNTU1HwMAMI4nIAoe9RQAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/deleteIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDowNmE3NWYwMy04MDdhLWUzNGYtYjk1Zi1jZGU2MjM0Mzg4OGY8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDRUMTQ6NDE6MDQrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjc3NDkzYmUxLTEyZGItOTg0NC1iNDYyLTg2NGVmNGIzMzM3MTwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNFQxNDo0MTowNCswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjA2YTc1ZjAzLTgwN2EtZTM0Zi1iOTVmLWNkZTYyMzQzODg4Zjwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4aYJzYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYGSURBVHjalJZ7UJTnFcZ/73m/72PdJY1RbhoQp6lkXRAvmIYxdCUadLVOozPNtGObap1JsKipjiShbdoRbeKEiQHpQK3xj0xa03aamTbaTGyAYV1QGeqFi+JyiZFLAlmESBkWRmS3fyzslGkmnZ5/v/M873Oe75zzvqqoqAibzQaAiKCUAkApRdHIK/NFsx2NR91nOSILADDoJyzNaM4xxbtvPHh0iC+JiYkJ1OHDh4mJiUEpFSXPv/ziPC28TIiXDCOSrAClQDSEpsCwJPIhrEBRQpiSytXlQwDhcBilFPfu3UMVFxdjt9ujFTzfcLBADCoEEAFr1ZbrrNjch2vtEImPBgHob7fTcWE+bVXJNJ/NiFQlEGLvieXHKmYqGB8fRx05cgSbzYaIsPvywV8pKFaA7fGtLTzz61YWpo/xVTHQbufsq5lcez9zWuWhk5mvFwMEg0H0+vXrMU2Tn1wp3CtCiQ5DjGd3A/m/v8IDCZP8r4iNmyRrWx/j/5qktykZpXKzAjVDVxPzGqemptDr1q1jX3NRnIJarcDKK2hgR2ULXRfncv7UYv7xpovhnhiW5Mz+kefeSKO6LJ1A1xzEuk/Ojm4mRibpuZaMZW3OCtRUND60NmiICCIUShisx7a2sLMiQn4s77uEQgIabnqdfHIlgT1/qQeg8vs5dHhdCNB1wYn3RIiC995j26stjAbsNH+YiZJCESnS1Y/XxIXu8r4YIPv/VkVs3CTnTy2ms34xro1+sp9po6sxlTu34ultmsPVvy6is86FCHgO+DDs49zpjufBpCG+seYOC9OHaTidieicb9ouVAhKtouAseI710ma7pLuqwmgYfHqAFt+6WdLoQ/LBl11Lm7VudAa8vb72PCin9TlAWIsGGhLACD+kSAZnusYBii1XQAPYWDllt6ov2lrBkDBR2+6Ofuak2//3M+G/T4wAAPW7fPhKfRTVeqk9qQbFKRmDUTxS3N7QYGYmwzCkqklBGlPDEcTNv+sg9tNCbTXuvBWujE0bHrZj9JE1B/wU1Pm5PwJN6YBS9a2kVvQEcWnrh5GTFD3lxkYkqRMgYQlwVldUvDnen73LHTUuqitdKM0eAr9AFQfd1J/yo2aJn+2sn4Wdn5qEFODJskgBIjx5T0uCrQA08pnIjS9PERDjPnfOKXAMEBECUoGEIHBj+2zkt76UQ6dXheGAev3+cg74Kf6uJPqcicbfuond7cPy4SOiy7+tD9nFvZurx00KOk3CNEC+mE+vjSPBc7IWqgqTaPT60IMcO/xsXGa3HfKjRgRdbl7/KDg0jtubje6aHj7c7J3dgLQ2zoPwwQ91SooOQdAW1VKVMHty0kA5Bb48BycJn/LjWFGbLv4thvvb53kFvjJ+XEdWkPfjQVR/CcNKYgGMc8JWt5Fa2j+MIPPuyI2pa4IoHSkt6vLIuRaQ9q32khzt4GCxtNu6k46GeiIR2lIfDQQsafPzq1LGRGL9Gk9d+vrwewvfHPQOoexQVjxdB/auk/zmaUMdsfz6bVUtIalT7bxveP1ZHh6GPDPYeSzeD69kcpIfxymFWLNrka+ljhBTWkWwz2JiJT84YHnz2iPx0P20PkmRF5i6HYiwZFJsn/YzdezbzE3cQibY5xV266z6RfXohakb+xB9CjanCD9qTbW7Grk4WV38VZm0l6dhQiEw9taHSuDqrS0FIfDwXM3X9mHMsvRAk/sauDpQy38P+GtzOTGB9mEpkD0C2dS8n8zOjqK9ng8WJZFU+JTjasGvaCNXPpvJBPoMlm0OoDNMfWVxONfWNSUPUZ7TUQ56tCZlPwSgMnJSVRpaSmxsbFE1raw82ZxAZZRQUiBYUKGp5UlOX2krBzmoUVjiIKhHge9rfPo+Wcy3ZeXIYASgL1/X5RfMXMvj46OosrLy7HZbGitUUohIuzoem0RofALaOsghgWGjky0MiJTL8b0lOvI8hN1DKXKP0jd3TNTWDgcJhgMoo4ePYrD4Yi+KmaeLlprnrtXFo9h/AAlG1AqE8yFmBrC+jO0bgH9EVpO/1F2Dc5g//OAsbEx/j0Af+USsQynL1UAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/img/network/downArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/downArrow.png",
            "type": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAKT2lDQ1BQaG90b3Nob3AgSUNDIHByb2ZpbGUAAHjanVNnVFPpFj333vRCS4iAlEtvUhUIIFJCi4AUkSYqIQkQSoghodkVUcERRUUEG8igiAOOjoCMFVEsDIoK2AfkIaKOg6OIisr74Xuja9a89+bN/rXXPues852zzwfACAyWSDNRNYAMqUIeEeCDx8TG4eQuQIEKJHAAEAizZCFz/SMBAPh+PDwrIsAHvgABeNMLCADATZvAMByH/w/qQplcAYCEAcB0kThLCIAUAEB6jkKmAEBGAYCdmCZTAKAEAGDLY2LjAFAtAGAnf+bTAICd+Jl7AQBblCEVAaCRACATZYhEAGg7AKzPVopFAFgwABRmS8Q5ANgtADBJV2ZIALC3AMDOEAuyAAgMADBRiIUpAAR7AGDIIyN4AISZABRG8lc88SuuEOcqAAB4mbI8uSQ5RYFbCC1xB1dXLh4ozkkXKxQ2YQJhmkAuwnmZGTKBNA/g88wAAKCRFRHgg/P9eM4Ors7ONo62Dl8t6r8G/yJiYuP+5c+rcEAAAOF0ftH+LC+zGoA7BoBt/qIl7gRoXgugdfeLZrIPQLUAoOnaV/Nw+H48PEWhkLnZ2eXk5NhKxEJbYcpXff5nwl/AV/1s+X48/Pf14L7iJIEyXYFHBPjgwsz0TKUcz5IJhGLc5o9H/LcL//wd0yLESWK5WCoU41EScY5EmozzMqUiiUKSKcUl0v9k4t8s+wM+3zUAsGo+AXuRLahdYwP2SycQWHTA4vcAAPK7b8HUKAgDgGiD4c93/+8//UegJQCAZkmScQAAXkQkLlTKsz/HCAAARKCBKrBBG/TBGCzABhzBBdzBC/xgNoRCJMTCQhBCCmSAHHJgKayCQiiGzbAdKmAv1EAdNMBRaIaTcA4uwlW4Dj1wD/phCJ7BKLyBCQRByAgTYSHaiAFiilgjjggXmYX4IcFIBBKLJCDJiBRRIkuRNUgxUopUIFVIHfI9cgI5h1xGupE7yAAygvyGvEcxlIGyUT3UDLVDuag3GoRGogvQZHQxmo8WoJvQcrQaPYw2oefQq2gP2o8+Q8cwwOgYBzPEbDAuxsNCsTgsCZNjy7EirAyrxhqwVqwDu4n1Y8+xdwQSgUXACTYEd0IgYR5BSFhMWE7YSKggHCQ0EdoJNwkDhFHCJyKTqEu0JroR+cQYYjIxh1hILCPWEo8TLxB7iEPENyQSiUMyJ7mQAkmxpFTSEtJG0m5SI+ksqZs0SBojk8naZGuyBzmULCAryIXkneTD5DPkG+Qh8lsKnWJAcaT4U+IoUspqShnlEOU05QZlmDJBVaOaUt2ooVQRNY9aQq2htlKvUYeoEzR1mjnNgxZJS6WtopXTGmgXaPdpr+h0uhHdlR5Ol9BX0svpR+iX6AP0dwwNhhWDx4hnKBmbGAcYZxl3GK+YTKYZ04sZx1QwNzHrmOeZD5lvVVgqtip8FZHKCpVKlSaVGyovVKmqpqreqgtV81XLVI+pXlN9rkZVM1PjqQnUlqtVqp1Q61MbU2epO6iHqmeob1Q/pH5Z/YkGWcNMw09DpFGgsV/jvMYgC2MZs3gsIWsNq4Z1gTXEJrHN2Xx2KruY/R27iz2qqaE5QzNKM1ezUvOUZj8H45hx+Jx0TgnnKKeX836K3hTvKeIpG6Y0TLkxZVxrqpaXllirSKtRq0frvTau7aedpr1Fu1n7gQ5Bx0onXCdHZ4/OBZ3nU9lT3acKpxZNPTr1ri6qa6UbobtEd79up+6Ynr5egJ5Mb6feeb3n+hx9L/1U/W36p/VHDFgGswwkBtsMzhg8xTVxbzwdL8fb8VFDXcNAQ6VhlWGX4YSRudE8o9VGjUYPjGnGXOMk423GbcajJgYmISZLTepN7ppSTbmmKaY7TDtMx83MzaLN1pk1mz0x1zLnm+eb15vft2BaeFostqi2uGVJsuRaplnutrxuhVo5WaVYVVpds0atna0l1rutu6cRp7lOk06rntZnw7Dxtsm2qbcZsOXYBtuutm22fWFnYhdnt8Wuw+6TvZN9un2N/T0HDYfZDqsdWh1+c7RyFDpWOt6azpzuP33F9JbpL2dYzxDP2DPjthPLKcRpnVOb00dnF2e5c4PziIuJS4LLLpc+Lpsbxt3IveRKdPVxXeF60vWdm7Obwu2o26/uNu5p7ofcn8w0nymeWTNz0MPIQ+BR5dE/C5+VMGvfrH5PQ0+BZ7XnIy9jL5FXrdewt6V3qvdh7xc+9j5yn+M+4zw33jLeWV/MN8C3yLfLT8Nvnl+F30N/I/9k/3r/0QCngCUBZwOJgUGBWwL7+Hp8Ib+OPzrbZfay2e1BjKC5QRVBj4KtguXBrSFoyOyQrSH355jOkc5pDoVQfujW0Adh5mGLw34MJ4WHhVeGP45wiFga0TGXNXfR3ENz30T6RJZE3ptnMU85ry1KNSo+qi5qPNo3ujS6P8YuZlnM1VidWElsSxw5LiquNm5svt/87fOH4p3iC+N7F5gvyF1weaHOwvSFpxapLhIsOpZATIhOOJTwQRAqqBaMJfITdyWOCnnCHcJnIi/RNtGI2ENcKh5O8kgqTXqS7JG8NXkkxTOlLOW5hCepkLxMDUzdmzqeFpp2IG0yPTq9MYOSkZBxQqohTZO2Z+pn5mZ2y6xlhbL+xW6Lty8elQfJa7OQrAVZLQq2QqboVFoo1yoHsmdlV2a/zYnKOZarnivN7cyzytuQN5zvn//tEsIS4ZK2pYZLVy0dWOa9rGo5sjxxedsK4xUFK4ZWBqw8uIq2Km3VT6vtV5eufr0mek1rgV7ByoLBtQFr6wtVCuWFfevc1+1dT1gvWd+1YfqGnRs+FYmKrhTbF5cVf9go3HjlG4dvyr+Z3JS0qavEuWTPZtJm6ebeLZ5bDpaql+aXDm4N2dq0Dd9WtO319kXbL5fNKNu7g7ZDuaO/PLi8ZafJzs07P1SkVPRU+lQ27tLdtWHX+G7R7ht7vPY07NXbW7z3/T7JvttVAVVN1WbVZftJ+7P3P66Jqun4lvttXa1ObXHtxwPSA/0HIw6217nU1R3SPVRSj9Yr60cOxx++/p3vdy0NNg1VjZzG4iNwRHnk6fcJ3/ceDTradox7rOEH0x92HWcdL2pCmvKaRptTmvtbYlu6T8w+0dbq3nr8R9sfD5w0PFl5SvNUyWna6YLTk2fyz4ydlZ19fi753GDborZ752PO32oPb++6EHTh0kX/i+c7vDvOXPK4dPKy2+UTV7hXmq86X23qdOo8/pPTT8e7nLuarrlca7nuer21e2b36RueN87d9L158Rb/1tWeOT3dvfN6b/fF9/XfFt1+cif9zsu72Xcn7q28T7xf9EDtQdlD3YfVP1v+3Njv3H9qwHeg89HcR/cGhYPP/pH1jw9DBY+Zj8uGDYbrnjg+OTniP3L96fynQ89kzyaeF/6i/suuFxYvfvjV69fO0ZjRoZfyl5O/bXyl/erA6xmv28bCxh6+yXgzMV70VvvtwXfcdx3vo98PT+R8IH8o/2j5sfVT0Kf7kxmTk/8EA5jz/GMzLdsAAAAGYktHRAD/AP8A/6C9p5MAAAAJcEhZcwAACxMAAAsTAQCanBgAAAAHdElNRQffARwOJDdL2KxuAAAGRklEQVRIx52XXWwTVxaAzznXDn9xLUcFjyOShowhEzuwSSQXMN38gEJEoOwDaxkCCMr2FaXhJ0/sWmmfCkULSAgUtdknHpBWEYi2oGhlmc2fWrwJCDL+wYF4XEicZBMbgrFDY/eh4wjMmJjel5m595z73XPuPeeeQcihORwO9Hg8f2aM7UylUluIyAgAOgAARJxBxAAA9APA9zzP97S3t6cWmxPfNVhXV0d6vf4LRDyLiID4u7jSk4heVz0eDAbPuVyu5HuD7Xb7ZwDQSUSAiFBYWDhmMpkks9kcLikpiWq12gQAQDQaXTI6Oqr1+Xx6r9dbPDY2ZiAiSCaTgIhHOjs7/5UzeO/evV8CwN8RETZs2ODbvn27WF1dPZnLtty7d2+l0+k0iaJYJnvpq46Ojn9kyjEF6DkAaENEaGho+Ono0aM/GQyGGOTYOI6Lbd68OfjixYtfg8HgakSstVgsOrfbfSurxXa7/WsiagMAaG5u/s+uXbseZU7s8XgKrly58sn4+DiHiMBx3Pj+/ft7BUGYzpTt7u7mr127tk3+PHPp0qW2tyy22+2fIeJpIoJDhw51NzU1PVay6MKFCw3hcJgjImCMQSwWyw8GgwV1dXW+TFme52dWrFjxf1EUecbYFovFIt25c+cuAAABANhsNkZEnUQEO3bs6G9sbBzN5sqJiQmOiKCjo6Pj8uXLHYgIExMT3DsiY3Tr1q398kI7bTYbWwAzxloQEdavX+87cODAg3fGX0boMMYyQ+mttmfPngcmk8mLiGAwGFoAAMjhcCARnQUAaGxsFBcN/D8ABgCoqakRGWOgUqnOOhwOJL/fXwMAUFRUNFZVVbVoyCiBcgGXl5dPGQyGMSKCZ8+e1RAiNiEilJeXS7mES6bFKpUqJ7B82CQiArVa3USIaJXB4VyUiegNUDqz5dJKS0vD8sI3qxBxLSJCSUlJNJuC3+8v8Hg8XDwez8sEp3N4V1dX5bJly+bWrl07bjQap5XmKSoqisq661SIqCMiSOdeJejFixf/+rq1Snvsdrs/BgDo7e2FI0eO/Jvn+bfgGo0mIevqVIu5yuPxcAAAFRUV4tKlS+dev6UAAKqqqu6m++bm5vL8fr9pZGSEUwK/fhBVqVRqhoj00Wh0yapVq15mCs7PzzP5QMwfPHjw58zxffv2LfRdvXp1EyLCq1evVErQ58+fL5HBM0RED4kIJEnSKgmXlZWNExGIomgOBAIF2Tzz6NGjAq/XW0FEwPP8uJLM06dPtbJ3/EREA4gIDx8+1CsJm83mSUEQvMlkkq5fv27NBr5165YVAGjdunVeQRAmlGRCoZBeBg8QIv4AAODz+YqzTXr48OFenU4XmZycLOzp6SnNHO/r6yudmpoq1Gq1EZvN1pttHkmSihljAAA/0urVq/+LiBAOhw3379//UElBrVYnKysrRSICl8u1KR6PL+xhIpFQDQwMbEJEMJvNolqtVix3AoHAh9PT0wYigpqamh5qb29PIeJxAACXy2XKttqdO3c+4Djul0QikX/jxo2qdP/NmzcrY7FYPsdxvzQ0NGS9YAYHB01yBB2vr69P/n7EZmbOy+4Wurq6KrIp19bWDhERDA8PbwiFQtonT55oh4eH/8QYA6vVejebntPprHj8+LEAABCPx88vFAKiKKYsFksIEf8iSVKRRqOZKi4ujiqUNbOSJOVHIpGV4XD4g0AgUDQ7O6srLS31bdu2TdHaoaGhj/r6+urlMPr81KlT/3ujAnG73UMbN25cgYhbvF6vMRvcaDSODQ0NGSORyMpYLKZdvnz5bHNzc3deXt68EtTpdDbKJ/lMW1vb6axVZktLyzlEbCEiqK2t7d+9e/dblszOzuZ5vV4OAEAQhPH8/Py5TJnbt29XuN1uq1zqnj9x4sQXi5a3ra2tpxljJxERBEHwWa1WURCEnMrbkZGRlYODgyZJkspk9545duxYW84F/cmTJ/8GAN+mLwW9Xj/G83xwzZo1YYPB8Eyj0STSaXBycvKDYDCoD4VCH0UiEUM6dyPi562trd+99y+Mw+Ggly9ftjLGvlGpVAsVCCKCnAjeuK3S74h4orq6+p/19fXv/wuTuYBkMvkJIn6KiFYi4olIJ4NmEHGEiPoB4IbFYul9FzDdfgOenj3/W2qSyQAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/editIcon.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/editIcon.png",
            "type": "image/png",
            "text": "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/GMzLdsAAEEOaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/Pgo8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTQ5MTEsIDIwMTMvMTAvMjktMTE6NDc6MTYgICAgICAgICI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgKFdpbmRvd3MpPC94bXA6Q3JlYXRvclRvb2w+CiAgICAgICAgIDx4bXA6Q3JlYXRlRGF0ZT4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC94bXA6Q3JlYXRlRGF0ZT4KICAgICAgICAgPHhtcDpNZXRhZGF0YURhdGU+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwveG1wOk1ldGFkYXRhRGF0ZT4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8ZGM6Zm9ybWF0PmltYWdlL3BuZzwvZGM6Zm9ybWF0PgogICAgICAgICA8eG1wTU06SW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC94bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDx4bXBNTTpIaXN0b3J5PgogICAgICAgICAgICA8cmRmOlNlcT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdEV2dDppbnN0YW5jZUlEPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6d2hlbj4yMDE0LTAxLTIyVDE5OjI0OjUxKzAxOjAwPC9zdEV2dDp3aGVuPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ1M2IChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPnNhdmVkPC9zdEV2dDphY3Rpb24+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDppbnN0YW5jZUlEPnhtcC5paWQ6RUE2MEEyNEUxOTg0RTMxMUFEQUZFRkU2RUMzMzNFMDM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDEtMjNUMTk6MTg6MDcrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDUzYgKFdpbmRvd3MpPC9zdEV2dDpzb2Z0d2FyZUFnZW50PgogICAgICAgICAgICAgICAgICA8c3RFdnQ6Y2hhbmdlZD4vPC9zdEV2dDpjaGFuZ2VkPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgICAgPHJkZjpsaSByZGY6cGFyc2VUeXBlPSJSZXNvdXJjZSI+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+c2F2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDozOWNhNzE5ZC03YzNlLTUyNGEtYmY1NS03NGVmMmM1MzE0YTc8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDp3aGVuPjIwMTQtMDItMDVUMTQ6MTI6MjUrMDE6MDA8L3N0RXZ0OndoZW4+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpzb2Z0d2FyZUFnZW50PkFkb2JlIFBob3Rvc2hvcCBDQyAoV2luZG93cyk8L3N0RXZ0OnNvZnR3YXJlQWdlbnQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDpjaGFuZ2VkPi88L3N0RXZ0OmNoYW5nZWQ+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5jb252ZXJ0ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+ZnJvbSBhcHBsaWNhdGlvbi92bmQuYWRvYmUucGhvdG9zaG9wIHRvIGltYWdlL3BuZzwvc3RFdnQ6cGFyYW1ldGVycz4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6YWN0aW9uPmRlcml2ZWQ8L3N0RXZ0OmFjdGlvbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnBhcmFtZXRlcnM+Y29udmVydGVkIGZyb20gYXBwbGljYXRpb24vdm5kLmFkb2JlLnBob3Rvc2hvcCB0byBpbWFnZS9wbmc8L3N0RXZ0OnBhcmFtZXRlcnM+CiAgICAgICAgICAgICAgIDwvcmRmOmxpPgogICAgICAgICAgICAgICA8cmRmOmxpIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmFjdGlvbj5zYXZlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6aW5zdGFuY2VJRD54bXAuaWlkOjY5OTM3ZGZjLTJjNzQtYTU0YS05OTIzLTQyMmZhNDNkMjljNDwvc3RFdnQ6aW5zdGFuY2VJRD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxNC0wMi0wNVQxNDoxMjoyNSswMTowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OnNvZnR3YXJlQWdlbnQ+QWRvYmUgUGhvdG9zaG9wIENDIChXaW5kb3dzKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OmNoYW5nZWQ+Lzwvc3RFdnQ6Y2hhbmdlZD4KICAgICAgICAgICAgICAgPC9yZGY6bGk+CiAgICAgICAgICAgIDwvcmRmOlNlcT4KICAgICAgICAgPC94bXBNTTpIaXN0b3J5PgogICAgICAgICA8eG1wTU06RGVyaXZlZEZyb20gcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICA8c3RSZWY6aW5zdGFuY2VJRD54bXAuaWlkOjM5Y2E3MTlkLTdjM2UtNTI0YS1iZjU1LTc0ZWYyYzUzMTRhNzwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpFQTc2MkY5Njc0ODNFMzExOTQ4QkQxM0UyQkU3OTlBMTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgICAgPHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjczQjYyQUFEOTE4M0UzMTE5NDhCRDEzRTJCRTc5OUExPC9zdFJlZjpvcmlnaW5hbERvY3VtZW50SUQ+CiAgICAgICAgIDwveG1wTU06RGVyaXZlZEZyb20+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDA5MC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICAgICAgICAgPHRpZmY6WVJlc29sdXRpb24+NzIwMDkwLzEwMDAwPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpSZXNvbHV0aW9uVW5pdD4yPC90aWZmOlJlc29sdXRpb25Vbml0PgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxZRGltZW5zaW9uPjI0PC9leGlmOlBpeGVsWURpbWVuc2lvbj4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz4ykninAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAYpSURBVHjafFZtTFvnFX7Oea+NudiY2Hwam4CBlgQwXdKREDKUoYg0jbRJ29RJ2VZ1mjRFUxSpA3VTfkzJfkQbS7spU6rtx5Z2UtppScjaHxvLuiatWi2jLEoMIUDCh23g2gbj7+tPuPvhOurawPl1dc99n+c55z33fV46ceIEZFkGADAziAgAQERoe/9ZK4GPM/AcgbsIXAcABCgMvkfAqAa89eDoJyF8LogIqqqChoaGYDAYHr8kItS8uc8iIH6iAa9IkAo5EAQX8pqmgUVBCBggYFgDhv0/GAsBgKZpICJkMhnQ4OAgZFkGEYGZUXmp+0cS+CKBwWA0DVRPOg5Zl2q6zaHyJlnVAMQXVTkwHrUqH0Xsvn+tdQAAMQDgpPLS2MViFY8rkGUZzIzaS/t/xqCzGggtz9e697zsnKhoLUtim4jOq/LE6x7X0nsh16dEZ5a/O3a2SCAOHjwInU6Hujd6ThJ4mCDQ+b2G232v7v6vwarPbQn8MGlMr+X0kpE3Wr5Zt5hL5HPhqYSdQIfKJ+yhxDPKWC6Xg+jt7UXD5b5KBt1kCHS85Ljd8/On3NupfnhFaZj4rWff1B98B1R/hnUmKd36bdtCNl4g0en4edNE/cXwLq8qMTMIPAQwmo/WuHvObA8+9c58k/dKtD0TyZWXN5YGA7ej7epKxspM//7SoNOdWc/Jyq2wiwhDzPxT8cP0jys3VMM7OmL0/77zn4Ydui3b8uiK0jD7RrA77c9Wd57cefPpF+2T6bWsFPWkaiPTCWvTsZpHFU+XrS+8G3AR08F6X+1FJvBxQQzHQOWk2SmrW4FPX/U2LVwPuDZj+fJKl2khPpeyAqA9rzR/YqwuiWXX8taN/CabGkrVuq9YJlkQQDjOAJ5jAhz9Vt9W4N5/rNp8I+vtMV/aZm4zLnUNNt0urdYnF68HWoJj4Wo1mLGUNRr8LEgDgNqeCh8xQIKOsgC7iAjVe83rT9zQa8uNM28u70kspessu8q8zq/V3NcZpVzb9+0zmVhOvvvrhaMVzrJg0zeq7xMVCCwdpnWSGBqjUyJwLTFgbvxie3w31uoWR1Y74r60rdxZqrR8q85t2W2MGCp12bm/KC3hyaSTiMhxuGrKcahqpbjOaDOoEhOEoFqJQCCJvqA85I6bfTdDjQlf2lbxVNlS6wt19yy7jRHZZlDnrinNj/6sHMhnNw2Ogco7O79e5fm/xQywRBBCEAuwn4gQ96bkYj4Vyuq9N1Z3Bj4Od5bs0MXt/dZZ21ctiqFan174q985P+Lfp+U1g7XDON/1ctP458WlVjLyJhOISZE0wM0S1QfuRC3lTjkJAKKEtNC9eIOhSh9xHLZOJRZTFuXDsEoStLkR/768ummsaJG9Pb9oe+9J+xaeSVokiQDSJphAo5uaBuWjiKP4QTqS1cUWU7ayesN66wu22frD1vmVW6GW6T8u9eVjGyZzs+w78Nqu0a2mbvVu1KEJQAgeZRL0liQYyx+GOmKeQpu0rMYsAJPNEFGD2dLodLIy6c9Ys7G8yeSUl3tf2/X3rcBVJSOv34l3sCBogi7z1LH/rBHjl4IJ93/ncQFAnjeImJD0Z8zuCwu9q3djDXqTlAKID5xv+9t2R8n8VcUFBljQ8Gyfe40BYBM4DwDLt8Kue79ZcFkbzfEdbUbv+oN4c9KTtsfm1MbYQqqh+2zrVZYKs/7Ef+byimt1POYiJhDhPBFBIiIEXhxfs7/dfYoIF+auBfYTE/pebx/V8hqBP2ODvD34yvuh/WCAmU75Bx6sIgaI/v5+6PV6JLqUsYr7dpDAoehs0h73pHTWrvKgThYbRSt9UmSjef3MpaUvBz4O72UmADgTOPJguGiZor+/HyUlJWBmJFz+D8xTtlUiOpbwpmrmrweeSXrT+g11k4SBN3RGKUcAVCVdFhyP1nreDbY//NPyEXUlU/Pp4XYycGT6V0Ux2WwWdO7cOZSWlkII8diX7SPPNgDaKdbxoNAxwATBAEkEEgSWCEQAqPAMwqvMdCEwMO0tVqZpWsGTT58+DaPR+PhGIYQAAAgh0P7B3ioW/B0iGiCGiwXbCuOHFSJys6AbYFye2T+xWhT3WYJEIoH/DQBMw3kes8OJPgAAAABJRU5ErkJggg=="
        },
        "$:/plugins/felixhayashi/vis/img/network/leftArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/leftArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/minus.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/minus.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/plus.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/plus.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/rightArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/rightArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/upArrow.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/upArrow.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png": {
            "title": "$:/plugins/felixhayashi/vis/img/network/zoomExtends.png",
            "type": "image/png",
            "text": "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"
        },
        "$:/plugins/felixhayashi/vis/img/timeline/delete.png": {
            "title": "$:/plugins/felixhayashi/vis/img/timeline/delete.png",
            "type": "image/png",
            "text": "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAALEwAACxMBAJqcGAAAAAl2cEFnAAAAEAAAABAAXMatwwAAAVRJREFUOMt108FKG1EUBuBvYtxbRGwxiGBXeYCW0mVpDSKVvIJ0F/syJsFdn6GCkaZ9gro3G1u0ILQgheJKRUwXPQNnxvTAcGf+c/7/nPvfO8UEKLCFJg5w31aNqGtgG3c4xLSZyP0QgI8Tpu0quQhyPwTgsBnkAVYD3MM9DibVId5GbiW+B+VIt7hJha1IdhPWDayVsBvcFtHlDYZ4mgou8D7e+zXyN/TwuUhjbkSXLHIZ61KNvItxaYyayBDrZsf36DyGdilQE+ngA57UyD+xg08luTSxHvP/wRuRewDm7uV9WJ4hsBy5rczJJm7G/tcS6VesjxN2Hj4c5S10Qj2Tz/AunrOEr0VtB+Z6vMJ+zfkfcVQjnMbRvcRC5B/hBU4auMbVjBFHCRsFdp6wK1yXHjz37xItRuejfFQ1nwb4HXVfs4nPYsQv0p+oKlLgNf7gGP4Cw4ZUK7kMJVEAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDExLTA1LTE2VDExOjM1OjIxKzAyOjAw9uVF5gAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMS0wNS0xNlQxMTozNToyMSswMjowMIe4/VoAAAAASUVORK5CYII="
        },
        "$:/plugins/felixhayashi/vis/readme": {
            "title": "$:/plugins/felixhayashi/vis/readme",
            "text": "! TW5-Vis.js\n\nA tiddlywiki plugin for the vis.js library.\n\n---\n\n! Notes on Copyright\n\n!! TiddlyWiki\n\nCreated by Jeremy Ruston, (jeremy [at] jermolene [dot] com)\n\nCopyright © Jeremy Ruston 2004-2007 Copyright © UnaMesa Association 2007-2014\n\nPublished under the following [licenses](https://github.com/Jermolene/TiddlyWiki5/tree/master/licenses):\n\n1. BSD 3-clause \"New\" or \"Revised\" License (including any right to adopt any future version of a license if permitted)\n2. Creative Commons Attribution 3.0 (including any right to adopt any future version of a license if permitted)\n\n!! The **vis.js** library\n\nCopyright (c) 2014 [Almende B.V.](https://github.com/almende/vis)\n\nPublished under the following licenses:\n\n1. Apache License Version 2.0, January 2004 http://www.apache.org/licenses/\n2. MIT License (MIT)\n"
        },
        "$:/plugins/felixhayashi/vis/vis.css": {
            "title": "$:/plugins/felixhayashi/vis/vis.css",
            "type": "text/vnd.tiddlywiki",
            "tags": "$:/tags/Stylesheet",
            "text": "\\rules except list\n\n\\define datauri(title)\n<$macrocall $name=\"makedatauri\" type={{$title$!!type}} text={{$title$}}/>\n\\end\n\n.vis .overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-active{box-shadow:0 0 10px #86d5f8}.vis [class*=\"span\"]{min-height:0;width:auto}div.vis-configuration{position:relative;display:block;float:left;font-size:12px}div.vis-configuration-wrapper{display:block;width:700px}div.vis-configuration-wrapper::after{clear:both;content:\"\";display:block}div.vis-configuration.vis-config-option-container{display:block;width:495px;background-color:#fff;border:2px solid #f7f8fa;border-radius:4px;margin-top:20px;left:10px;padding-left:5px}div.vis-configuration.vis-config-button{display:block;width:495px;height:25px;vertical-align:middle;line-height:25px;background-color:#f7f8fa;border:2px solid #ceced0;border-radius:4px;margin-top:20px;left:10px;padding-left:5px;cursor:pointer;margin-bottom:30px}div.vis-configuration.vis-config-button.hover{background-color:#4588e6;border:2px solid #214373;color:#fff}div.vis-configuration.vis-config-item{display:block;float:left;width:495px;height:25px;vertical-align:middle;line-height:25px}div.vis-configuration.vis-config-item.vis-config-s2{left:10px;background-color:#f7f8fa;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s3{left:20px;background-color:#e4e9f0;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-item.vis-config-s4{left:30px;background-color:#cfd8e6;padding-left:5px;border-radius:3px}div.vis-configuration.vis-config-header{font-size:18px;font-weight:bold}div.vis-configuration.vis-config-label{width:120px;height:25px;line-height:25px}div.vis-configuration.vis-config-label.vis-config-s3{width:110px}div.vis-configuration.vis-config-label.vis-config-s4{width:100px}div.vis-configuration.vis-config-colorBlock{top:1px;width:30px;height:19px;border:1px solid #444;border-radius:2px;padding:0;margin:0;cursor:pointer}input.vis-configuration.vis-config-checkbox{left:-5px}input.vis-configuration.vis-config-rangeinput{position:relative;top:-5px;width:60px;padding:1px;margin:0;pointer-events:none}input.vis-configuration.vis-config-range{-webkit-appearance:none;border:0 solid white;background-color:rgba(0,0,0,0);width:300px;height:20px}input.vis-configuration.vis-config-range::-webkit-slider-runnable-track{width:300px;height:5px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-webkit-slider-thumb{-webkit-appearance:none;border:1px solid #14334b;height:17px;width:17px;border-radius:50%;background:#3876c2;background:-moz-linear-gradient(top,#3876c2 0,#385380 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#3876c2),color-stop(100%,#385380));background:-webkit-linear-gradient(top,#3876c2 0,#385380 100%);background:-o-linear-gradient(top,#3876c2 0,#385380 100%);background:-ms-linear-gradient(top,#3876c2 0,#385380 100%);background:linear-gradient(to bottom,#3876c2 0,#385380 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#3876c2',endColorstr='#385380',GradientType=0);box-shadow:#111927 0 0 1px 0;margin-top:-7px}input.vis-configuration.vis-config-range:focus{outline:0}input.vis-configuration.vis-config-range:focus::-webkit-slider-runnable-track{background:#9d9d9d;background:-moz-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#9d9d9d),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-o-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#9d9d9d 0,#c8c8c8 99%);background:linear-gradient(to bottom,#9d9d9d 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#9d9d9d',endColorstr='#c8c8c8',GradientType=0)}input.vis-configuration.vis-config-range::-moz-range-track{width:300px;height:10px;background:#dedede;background:-moz-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#dedede),color-stop(99%,#c8c8c8));background:-webkit-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-o-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:-ms-linear-gradient(top,#dedede 0,#c8c8c8 99%);background:linear-gradient(to bottom,#dedede 0,#c8c8c8 99%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#dedede',endColorstr='#c8c8c8',GradientType=0);border:1px solid #999;box-shadow:#aaa 0 0 3px 0;border-radius:3px}input.vis-configuration.vis-config-range::-moz-range-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:-moz-focusring{outline:1px solid white;outline-offset:-1px}input.vis-configuration.vis-config-range::-ms-track{width:300px;height:5px;background:transparent;border-color:transparent;border-width:6px 0;color:transparent}input.vis-configuration.vis-config-range::-ms-fill-lower{background:#777;border-radius:10px}input.vis-configuration.vis-config-range::-ms-fill-upper{background:#ddd;border-radius:10px}input.vis-configuration.vis-config-range::-ms-thumb{border:0;height:16px;width:16px;border-radius:50%;background:#385380}input.vis-configuration.vis-config-range:focus::-ms-fill-lower{background:#888}input.vis-configuration.vis-config-range:focus::-ms-fill-upper{background:#ccc}.vis-configuration-popup{position:absolute;background:rgba(57,76,89,0.85);border:2px solid #f2faff;line-height:30px;height:30px;width:150px;text-align:center;color:#fff;font-size:14px;border-radius:4px;-webkit-transition:opacity .3s ease-in-out;-moz-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out}.vis-configuration-popup:after,.vis-configuration-popup:before{left:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}.vis-configuration-popup:after{border-color:rgba(136,183,213,0);border-left-color:rgba(57,76,89,0.85);border-width:8px;margin-top:-8px}.vis-configuration-popup:before{border-color:rgba(194,225,245,0);border-left-color:#f2faff;border-width:12px;margin-top:-12px}div.vis-tooltip{position:absolute;visibility:hidden;padding:5px;white-space:nowrap;font-family:verdana;font-size:14px;color:#000;background-color:#f5f4ed;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px;border:1px solid #808074;box-shadow:3px 3px 10px rgba(0,0,0,0.2);pointer-events:none;z-index:5}div.vis-color-picker{position:absolute;top:0;left:30px;margin-top:-140px;margin-left:30px;width:310px;height:444px;z-index:1;padding:10px;border-radius:15px;background-color:#fff;display:none;box-shadow:rgba(0,0,0,0.5) 0 0 10px 0}div.vis-color-picker div.vis-arrow{position:absolute;top:147px;left:5px}div.vis-color-picker div.vis-arrow::after,div.vis-color-picker div.vis-arrow::before{right:100%;top:50%;border:solid transparent;content:\" \";height:0;width:0;position:absolute;pointer-events:none}div.vis-color-picker div.vis-arrow:after{border-color:rgba(255,255,255,0);border-right-color:#fff;border-width:30px;margin-top:-30px}div.vis-color-picker div.vis-color{position:absolute;width:289px;height:289px;cursor:pointer}div.vis-color-picker div.vis-brightness{position:absolute;top:313px}div.vis-color-picker div.vis-opacity{position:absolute;top:350px}div.vis-color-picker div.vis-selector{position:absolute;top:137px;left:137px;width:15px;height:15px;border-radius:15px;border:1px solid #fff;background:#4c4c4c;background:-moz-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#4c4c4c),color-stop(12%,#595959),color-stop(25%,#666),color-stop(39%,#474747),color-stop(50%,#2c2c2c),color-stop(51%,#000),color-stop(60%,#111),color-stop(76%,#2b2b2b),color-stop(91%,#1c1c1c),color-stop(100%,#131313));background:-webkit-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-o-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:-ms-linear-gradient(top,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);background:linear-gradient(to bottom,#4c4c4c 0,#595959 12%,#666 25%,#474747 39%,#2c2c2c 50%,#000 51%,#111 60%,#2b2b2b 76%,#1c1c1c 91%,#131313 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#4c4c4c',endColorstr='#131313',GradientType=0)}div.vis-color-picker div.vis-new-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:159px;text-align:right;padding-right:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-initial-color{position:absolute;width:140px;height:20px;border:1px solid rgba(0,0,0,0.1);border-radius:5px;top:380px;left:10px;text-align:left;padding-left:2px;font-size:10px;color:rgba(0,0,0,0.4);vertical-align:middle;line-height:20px}div.vis-color-picker div.vis-label{position:absolute;width:300px;left:10px}div.vis-color-picker div.vis-label.vis-brightness{top:300px}div.vis-color-picker div.vis-label.vis-opacity{top:338px}div.vis-color-picker div.vis-button{position:absolute;width:68px;height:25px;border-radius:10px;vertical-align:middle;text-align:center;line-height:25px;top:410px;border:2px solid #d9d9d9;background-color:#f7f7f7;cursor:pointer}div.vis-color-picker div.vis-button.vis-cancel{left:5px}div.vis-color-picker div.vis-button.vis-load{left:82px}div.vis-color-picker div.vis-button.vis-apply{left:159px}div.vis-color-picker div.vis-button.vis-save{left:236px}div.vis-color-picker input.vis-range{width:290px;height:20px}div.vis-network div.vis-manipulation{box-sizing:content-box;border-width:0;border-bottom:1px;border-style:solid;border-color:#d6d9d8;background:#fff;background:-moz-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-webkit-gradient(linear,left top,left bottom,color-stop(0,#fff),color-stop(48%,#fcfcfc),color-stop(50%,#fafafa),color-stop(100%,#fcfcfc));background:-webkit-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-o-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:-ms-linear-gradient(top,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);background:linear-gradient(to bottom,#fff 0,#fcfcfc 48%,#fafafa 50%,#fcfcfc 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff',endColorstr='#fcfcfc',GradientType=0);padding-top:4px;position:absolute;left:0;top:0;width:100%;height:28px}div.vis-network div.vis-edit-mode{position:absolute;left:0;top:5px;height:30px}div.vis-network div.vis-close{position:absolute;right:0;top:0;width:30px;height:30px;background-position:20px 3px;background-repeat:no-repeat;background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/cross.png\">>);cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-close:hover{opacity:.6}div.vis-network div.vis-manipulation div.vis-button,div.vis-network div.vis-edit-mode div.vis-button{float:left;font-family:verdana;font-size:12px;-moz-border-radius:15px;border-radius:15px;display:inline-block;background-position:0 0;background-repeat:no-repeat;height:24px;margin-left:10px;cursor:pointer;padding:0 8px 0 8px;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-manipulation div.vis-button:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.20)}div.vis-network div.vis-manipulation div.vis-button:active{box-shadow:1px 1px 8px rgba(0,0,0,0.50)}div.vis-network div.vis-manipulation div.vis-button.vis-back{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/backIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-none:hover{box-shadow:1px 1px 8px rgba(0,0,0,0.0);cursor:default}div.vis-network div.vis-manipulation div.vis-button.vis-none:active{box-shadow:1px 1px 8px rgba(0,0,0,0.0)}div.vis-network div.vis-manipulation div.vis-button.vis-none{padding:0}div.vis-network div.vis-manipulation div.notification{margin:2px;font-weight:bold}div.vis-network div.vis-manipulation div.vis-button.vis-add{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/addNodeIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-edit,div.vis-network div.vis-edit-mode div.vis-button.vis-edit{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/editIcon.png\">>)}div.vis-network div.vis-edit-mode div.vis-button.vis-edit.vis-edit-mode{background-color:#fcfcfc;border:1px solid #ccc}div.vis-network div.vis-manipulation div.vis-button.vis-connect{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/connectIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-button.vis-delete{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/deleteIcon.png\">>)}div.vis-network div.vis-manipulation div.vis-label,div.vis-network div.vis-edit-mode div.vis-label{margin:0 0 0 23px;line-height:25px}div.vis-network div.vis-manipulation div.vis-separator-line{float:left;display:inline-block;width:1px;height:21px;background-color:#bdbdbd;margin:0 7px 0 15px}div.vis-network div.vis-navigation div.vis-button{width:34px;height:34px;-moz-border-radius:17px;border-radius:17px;position:absolute;display:inline-block;background-position:2px 2px;background-repeat:no-repeat;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}div.vis-network div.vis-navigation div.vis-button:hover{box-shadow:0 0 3px 3px rgba(56,207,21,0.30)}div.vis-network div.vis-navigation div.vis-button:active{box-shadow:0 0 1px 3px rgba(56,207,21,0.95)}div.vis-network div.vis-navigation div.vis-button.vis-up{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/upArrow.png\">>);bottom:50px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-down{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/downArrow.png\">>);bottom:10px;left:55px}div.vis-network div.vis-navigation div.vis-button.vis-left{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/leftArrow.png\">>);bottom:10px;left:15px}div.vis-network div.vis-navigation div.vis-button.vis-right{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/rightArrow.png\">>);bottom:10px;left:95px}div.vis-network div.vis-navigation div.vis-button.vis-zoomIn{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/plus.png\">>);bottom:10px;right:15px}div.vis-network div.vis-navigation div.vis-button.vis-zoomOut{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/minus.png\">>);bottom:10px;right:55px}div.vis-network div.vis-navigation div.vis-button.vis-zoomExtends{background-image:url(<<datauri \"$:/plugins/felixhayashi/vis/img/network/zoomExtends.png\">>);bottom:50px;right:15px}.vis-current-time{background-color:#ff7f6e;width:2px;z-index:1;pointer-events:none}.vis-rolling-mode-btn{height:40px;width:40px;position:absolute;top:7px;right:20px;border-radius:50%;font-size:28px;cursor:pointer;opacity:.8;color:white;font-weight:bold;text-align:center;background:#3876c2}.vis-rolling-mode-btn:before{content:\"\\26F6\"}.vis-rolling-mode-btn:hover{opacity:1}.vis-custom-time{background-color:#6e94ff;width:2px;cursor:move;z-index:1}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-horizontal{position:absolute;width:100%;height:0;border-bottom:1px solid}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-minor{border-color:#e5e5e5}.vis-panel.vis-background.vis-horizontal .vis-grid.vis-major{border-color:#bfbfbf}.vis-data-axis .vis-y-axis.vis-major{width:100%;position:absolute;color:#4d4d4d;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-major.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-minor{position:absolute;width:100%;color:#bebebe;white-space:nowrap}.vis-data-axis .vis-y-axis.vis-minor.vis-measure{padding:0;margin:0;border:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title{position:absolute;color:#4d4d4d;white-space:nowrap;bottom:20px;text-align:center}.vis-data-axis .vis-y-axis.vis-title.vis-measure{padding:0;margin:0;visibility:hidden;width:auto}.vis-data-axis .vis-y-axis.vis-title.vis-left{bottom:0;-webkit-transform-origin:left top;-moz-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-moz-transform:rotate(-90deg);-ms-transform:rotate(-90deg);-o-transform:rotate(-90deg);transform:rotate(-90deg)}.vis-data-axis .vis-y-axis.vis-title.vis-right{bottom:0;-webkit-transform-origin:right bottom;-moz-transform-origin:right bottom;-ms-transform-origin:right bottom;-o-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.vis-legend{background-color:rgba(247,252,255,0.65);padding:5px;border:1px solid #b3b3b3;box-shadow:2px 2px 10px rgba(154,154,154,0.55)}.vis-legend-text{white-space:nowrap;display:inline-block}.vis-item{position:absolute;color:#1a1a1a;border-color:#97b0f8;border-width:1px;background-color:#d5ddf6;display:inline-block;z-index:1}.vis-item.vis-selected{border-color:#ffc200;background-color:#fff785;z-index:2}.vis-editable.vis-selected{cursor:move}.vis-item.vis-point.vis-selected{background-color:#fff785}.vis-item.vis-box{text-align:center;border-style:solid;border-radius:2px}.vis-item.vis-point{background:0}.vis-item.vis-dot{position:absolute;padding:0;border-width:4px;border-style:solid;border-radius:4px}.vis-item.vis-range{border-style:solid;border-radius:2px;box-sizing:border-box}.vis-item.vis-background{border:0;background-color:rgba(213,221,246,0.4);box-sizing:border-box;padding:0;margin:0}.vis-item .vis-item-overflow{position:relative;width:100%;height:100%;padding:0;margin:0;overflow:hidden}.vis-item-visible-frame{white-space:nowrap}.vis-item.vis-range .vis-item-content{position:relative;display:inline-block}.vis-item.vis-background .vis-item-content{position:absolute;display:inline-block}.vis-item.vis-line{padding:0;position:absolute;width:0;border-left-width:1px;border-left-style:solid}.vis-item .vis-item-content{white-space:nowrap;box-sizing:border-box;padding:5px}.vis-item .vis-onUpdateTime-tooltip{position:absolute;background:#4f81bd;color:white;width:200px;text-align:center;white-space:nowrap;padding:5px;border-radius:1px;transition:.4s;-o-transition:.4s;-moz-transition:.4s;-webkit-transition:.4s}.vis-item .vis-delete,.vis-item .vis-delete-rtl{position:absolute;top:0;width:24px;height:24px;box-sizing:border-box;padding:0 5px;cursor:pointer;-webkit-transition:background .2s linear;-moz-transition:background .2s linear;-ms-transition:background .2s linear;-o-transition:background .2s linear;transition:background .2s linear}.vis-item .vis-delete{right:-24px}.vis-item .vis-delete-rtl{left:-24px}.vis-item .vis-delete:after,.vis-item .vis-delete-rtl:after{content:\"\\00D7\";color:red;font-family:arial,sans-serif;font-size:22px;font-weight:bold;-webkit-transition:color .2s linear;-moz-transition:color .2s linear;-ms-transition:color .2s linear;-o-transition:color .2s linear;transition:color .2s linear}.vis-item .vis-delete:hover,.vis-item .vis-delete-rtl:hover{background:red}.vis-item .vis-delete:hover:after,.vis-item .vis-delete-rtl:hover:after{color:white}.vis-item .vis-drag-center{position:absolute;width:100%;height:100%;top:0;left:0;cursor:move}.vis-item.vis-range .vis-drag-left{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;left:-4px;cursor:w-resize}.vis-item.vis-range .vis-drag-right{position:absolute;width:24px;max-width:20%;min-width:2px;height:100%;top:0;right:-4px;cursor:e-resize}.vis-range.vis-item.vis-readonly .vis-drag-left,.vis-range.vis-item.vis-readonly .vis-drag-right{cursor:auto}.vis-itemset{position:relative;padding:0;margin:0;box-sizing:border-box}.vis-itemset .vis-background,.vis-itemset .vis-foreground{position:absolute;width:100%;height:100%;overflow:visible}.vis-axis{position:absolute;width:100%;height:0;left:0;z-index:1}.vis-foreground .vis-group{position:relative;box-sizing:border-box;border-bottom:1px solid #bfbfbf}.vis-foreground .vis-group:last-child{border-bottom:0}.vis-nesting-group{cursor:pointer}.vis-nested-group{background:#f5f5f5}.vis-label.vis-nesting-group.expanded:before{content:\"\\25BC\"}.vis-label.vis-nesting-group.collapsed-rtl:before{content:\"\\25C0\"}.vis-label.vis-nesting-group.collapsed:before{content:\"\\25B6\"}.vis-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:10}.vis-labelset{position:relative;overflow:hidden;box-sizing:border-box}.vis-labelset .vis-label{position:relative;left:0;top:0;width:100%;color:#4d4d4d;box-sizing:border-box}.vis-labelset .vis-label{border-bottom:1px solid #bfbfbf}.vis-labelset .vis-label.draggable{cursor:pointer}.vis-labelset .vis-label:last-child{border-bottom:0}.vis-labelset .vis-label .vis-inner{display:inline-block;padding:5px}.vis-labelset .vis-label .vis-inner.vis-hidden{padding:0}.vis-panel{position:absolute;padding:0;margin:0;box-sizing:border-box}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right,.vis-panel.vis-top,.vis-panel.vis-bottom{border:1px #bfbfbf}.vis-panel.vis-center,.vis-panel.vis-left,.vis-panel.vis-right{border-top-style:solid;border-bottom-style:solid;overflow:hidden}.vis-left.vis-panel.vis-vertical-scroll,.vis-right.vis-panel.vis-vertical-scroll{height:100%;overflow-x:hidden;overflow-y:scroll}.vis-left.vis-panel.vis-vertical-scroll{direction:rtl}.vis-left.vis-panel.vis-vertical-scroll .vis-content{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll{direction:ltr}.vis-right.vis-panel.vis-vertical-scroll .vis-content{direction:rtl}.vis-panel.vis-center,.vis-panel.vis-top,.vis-panel.vis-bottom{border-left-style:solid;border-right-style:solid}.vis-background{overflow:hidden}.vis-panel>.vis-content{position:relative}.vis-panel .vis-shadow{position:absolute;width:100%;height:1px;box-shadow:0 0 10px rgba(0,0,0,0.8)}.vis-panel .vis-shadow.vis-top{top:-1px;left:0}.vis-panel .vis-shadow.vis-bottom{bottom:-1px;left:0}.vis-graph-group0{fill:#4f81bd;fill-opacity:0;stroke-width:2px;stroke:#4f81bd}.vis-graph-group1{fill:#f79646;fill-opacity:0;stroke-width:2px;stroke:#f79646}.vis-graph-group2{fill:#8c51cf;fill-opacity:0;stroke-width:2px;stroke:#8c51cf}.vis-graph-group3{fill:#75c841;fill-opacity:0;stroke-width:2px;stroke:#75c841}.vis-graph-group4{fill:#ff0100;fill-opacity:0;stroke-width:2px;stroke:#ff0100}.vis-graph-group5{fill:#37d8e6;fill-opacity:0;stroke-width:2px;stroke:#37d8e6}.vis-graph-group6{fill:#042662;fill-opacity:0;stroke-width:2px;stroke:#042662}.vis-graph-group7{fill:#00ff26;fill-opacity:0;stroke-width:2px;stroke:#00ff26}.vis-graph-group8{fill:#f0f;fill-opacity:0;stroke-width:2px;stroke:#f0f}.vis-graph-group9{fill:#8f3938;fill-opacity:0;stroke-width:2px;stroke:#8f3938}.vis-timeline .vis-fill{fill-opacity:.1;stroke:none}.vis-timeline .vis-bar{fill-opacity:.5;stroke-width:1px}.vis-timeline .vis-point{stroke-width:2px;fill-opacity:1.0}.vis-timeline .vis-legend-background{stroke-width:1px;fill-opacity:.9;fill:#fff;stroke:#c2c2c2}.vis-timeline .vis-outline{stroke-width:1px;fill-opacity:1;fill:#fff;stroke:#e5e5e5}.vis-timeline .vis-icon-fill{fill-opacity:.3;stroke:none}.vis-time-axis{position:relative;overflow:hidden}.vis-time-axis.vis-foreground{top:0;left:0;width:100%}.vis-time-axis.vis-background{position:absolute;top:0;left:0;width:100%;height:100%}.vis-time-axis .vis-text{position:absolute;color:#4d4d4d;padding:3px;overflow:hidden;box-sizing:border-box;white-space:nowrap}.vis-time-axis .vis-text.vis-measure{position:absolute;padding-left:0;padding-right:0;margin-left:0;margin-right:0;visibility:hidden}.vis-time-axis .vis-grid.vis-vertical{position:absolute;border-left:1px solid}.vis-time-axis .vis-grid.vis-vertical-rtl{position:absolute;border-right:1px solid}.vis-time-axis .vis-grid.vis-minor{border-color:#e5e5e5}.vis-time-axis .vis-grid.vis-major{border-color:#bfbfbf}.vis-timeline{position:relative;border:1px solid #bfbfbf;overflow:hidden;padding:0;margin:0;box-sizing:border-box}"
        },
        "$:/plugins/felixhayashi/vis/vis.js": {
            "title": "$:/plugins/felixhayashi/vis/vis.js",
            "text": "/*\\\ntitle: $:/plugins/felixhayashi/vis/vis.js\ntype: application/javascript\nmodule-type: library\n\n@preserve\n\\*/\n\n/*** TO AVOID STRANGE LIB ERRORS FROM BUBBLING UP *****************/\n\nif($tw.boot.tasks.trapErrors) {\n\n  var defaultHandler = window.onerror;\n  window.onerror = function(errorMsg, url, lineNumber) {\n    \n    if(errorMsg.indexOf(\"NS_ERROR_NOT_AVAILABLE\") !== -1\n       && url == \"$:/plugins/felixhayashi/vis/vis.js\") {\n         \n      var text = \"Strange firefox related vis.js error (see #125)\";\n      console.error(text, arguments);\n      \n    } else if(errorMsg.indexOf(\"Permission denied to access property\") !== -1) {\n      \n      var text = \"Strange firefox related vis.js error (see #163)\";\n      console.error(text, arguments);\n      \n    } else if(defaultHandler) {\n      \n      defaultHandler.apply(this, arguments);\n      \n    }\n    \n  }\n  \n}\n\n/******************************************************************/\n\n/**\n * vis.js\n * https://github.com/almende/vis\n *\n * A dynamic, browser-based visualization library.\n *\n * @version 4.21.0\n * @date    2017-10-12\n *\n * @license\n * Copyright (C) 2011-2017 Almende B.V, http://almende.com\n *\n * Vis.js is dual licensed under both\n *\n * * The Apache 2.0 License\n *   http://www.apache.org/licenses/LICENSE-2.0\n *\n * and\n *\n * * The MIT License\n *   http://opensource.org/licenses/MIT\n *\n * Vis.js may be distributed under either license.\n */\n\"use strict\";(function webpackUniversalModuleDefinition(root,factory){if(typeof exports===\"object\"&&typeof module===\"object\")module.exports=factory();else if(typeof define===\"function\"&&define.amd)define([],factory);else if(typeof exports===\"object\")exports[\"vis\"]=factory();else root[\"vis\"]=factory()})(this,function(){return function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{configurable:false,enumerable:true,get:getter})}};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module[\"default\"]}:function getModuleExports(){return module};__webpack_require__.d(getter,\"a\",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p=\"\";return __webpack_require__(__webpack_require__.s=123)}([function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;exports.default=function(instance,Constructor){if(!(instance instanceof Constructor)){throw new TypeError(\"Cannot call a class as a function\")}}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _defineProperty=__webpack_require__(169);var _defineProperty2=_interopRequireDefault(_defineProperty);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function defineProperties(target,props){for(var i=0;i<props.length;i++){var descriptor=props[i];descriptor.enumerable=descriptor.enumerable||false;descriptor.configurable=true;if(\"value\"in descriptor)descriptor.writable=true;(0,_defineProperty2.default)(target,descriptor.key,descriptor)}}return function(Constructor,protoProps,staticProps){if(protoProps)defineProperties(Constructor.prototype,protoProps);if(staticProps)defineProperties(Constructor,staticProps);return Constructor}}()},function(module,exports,__webpack_require__){\"use strict\";var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var moment=__webpack_require__(9);var uuid=__webpack_require__(157);exports.isNumber=function(object){return object instanceof Number||typeof object==\"number\"};exports.recursiveDOMDelete=function(DOMobject){if(DOMobject){while(DOMobject.hasChildNodes()===true){exports.recursiveDOMDelete(DOMobject.firstChild);DOMobject.removeChild(DOMobject.firstChild)}}};exports.giveRange=function(min,max,total,value){if(max==min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}};exports.isString=function(object){return object instanceof String||typeof object==\"string\"};exports.isDate=function(object){if(object instanceof Date){return true}else if(exports.isString(object)){var match=ASPDateRegex.exec(object);if(match){return true}else if(!isNaN(Date.parse(object))){return true}}return false};exports.randomUUID=function(){return uuid.v4()};exports.assignAllKeys=function(obj,value){for(var prop in obj){if(obj.hasOwnProperty(prop)){if((0,_typeof3[\"default\"])(obj[prop])!==\"object\"){obj[prop]=value}}}};function copyOrDelete(a,b,prop,allowDeletion){var doDeletion=false;if(allowDeletion===true){doDeletion=b[prop]===null&&a[prop]!==undefined}if(doDeletion){delete a[prop]}else{a[prop]=b[prop]}}exports.fillIfDefined=function(a,b){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;for(var prop in a){if(b[prop]!==undefined){if(b[prop]===null||(0,_typeof3[\"default\"])(b[prop])!==\"object\"){copyOrDelete(a,b,prop,allowDeletion)}else{if((0,_typeof3[\"default\"])(a[prop])===\"object\"){exports.fillIfDefined(a[prop],b[prop],allowDeletion)}}}}};exports.extend=function(a,b){for(var i=1;i<arguments.length;i++){var other=arguments[i];for(var prop in other){if(other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveExtend=function(props,a,b){if(!Array.isArray(props)){throw new Error(\"Array with property names expected as first argument\")}for(var i=2;i<arguments.length;i++){var other=arguments[i];for(var p=0;p<props.length;p++){var prop=props[p];if(other&&other.hasOwnProperty(prop)){a[prop]=other[prop]}}}return a};exports.selectiveDeepExtend=function(props,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var p=0;p<props.length;p++){var prop=props[p];if(b.hasOwnProperty(prop)){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],false,allowDeletion)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){throw new TypeError(\"Arrays are not supported by deepExtend\")}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.selectiveNotDeepExtend=function(propsToExclude,a,b){var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;if(Array.isArray(b)){throw new TypeError(\"Arrays are not supported by deepExtend\")}for(var prop in b){if(!b.hasOwnProperty(prop))continue;if(propsToExclude.indexOf(prop)!==-1)continue;if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop])}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}return a};exports.deepExtend=function(a,b){var protoExtend=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var allowDeletion=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;for(var prop in b){if(b.hasOwnProperty(prop)||protoExtend===true){if(b[prop]&&b[prop].constructor===Object){if(a[prop]===undefined){a[prop]={}}if(a[prop].constructor===Object){exports.deepExtend(a[prop],b[prop],protoExtend)}else{copyOrDelete(a,b,prop,allowDeletion)}}else if(Array.isArray(b[prop])){a[prop]=[];for(var i=0;i<b[prop].length;i++){a[prop].push(b[prop][i])}}else{copyOrDelete(a,b,prop,allowDeletion)}}}return a};exports.equalArray=function(a,b){if(a.length!=b.length)return false;for(var i=0,len=a.length;i<len;i++){if(a[i]!=b[i])return false}return true};exports.convert=function(object,type){var match;if(object===undefined){return undefined}if(object===null){return null}if(!type){return object}if(!(typeof type===\"string\")&&!(type instanceof String)){throw new Error(\"Type must be a string\")}switch(type){case\"boolean\":case\"Boolean\":return Boolean(object);case\"number\":case\"Number\":if(exports.isString(object)&&!isNaN(Date.parse(object))){return moment(object).valueOf()}else{return Number(object.valueOf())}case\"string\":case\"String\":return String(object);case\"Date\":if(exports.isNumber(object)){return new Date(object)}if(object instanceof Date){return new Date(object.valueOf())}else if(moment.isMoment(object)){return new Date(object.valueOf())}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1]))}else{return moment(new Date(object)).toDate()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"Moment\":if(exports.isNumber(object)){return moment(object)}if(object instanceof Date){return moment(object.valueOf())}else if(moment.isMoment(object)){return moment(object)}if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return moment(Number(match[1]))}else{return moment(object)}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type Date\")}case\"ISODate\":if(exports.isNumber(object)){return new Date(object)}else if(object instanceof Date){return object.toISOString()}else if(moment.isMoment(object)){return object.toDate().toISOString()}else if(exports.isString(object)){match=ASPDateRegex.exec(object);if(match){return new Date(Number(match[1])).toISOString()}else{return moment(object).format()}}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ISODate\")}case\"ASPDate\":if(exports.isNumber(object)){return\"/Date(\"+object+\")/\"}else if(object instanceof Date){return\"/Date(\"+object.valueOf()+\")/\"}else if(exports.isString(object)){match=ASPDateRegex.exec(object);var value;if(match){value=new Date(Number(match[1])).valueOf()}else{value=new Date(object).valueOf()}return\"/Date(\"+value+\")/\"}else{throw new Error(\"Cannot convert object of type \"+exports.getType(object)+\" to type ASPDate\")}default:throw new Error('Unknown type \"'+type+'\"')}};var ASPDateRegex=/^\\/?Date\\((\\-?\\d+)/i;exports.getType=function(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type==\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"Boolean\"}if(object instanceof Number){return\"Number\"}if(object instanceof String){return\"String\"}if(Array.isArray(object)){return\"Array\"}if(object instanceof Date){return\"Date\"}return\"Object\"}else if(type==\"number\"){return\"Number\"}else if(type==\"boolean\"){return\"Boolean\"}else if(type==\"string\"){return\"String\"}else if(type===undefined){return\"undefined\"}return type};exports.copyAndExtendArray=function(arr,newValue){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}newArr.push(newValue);return newArr};exports.copyArray=function(arr){var newArr=[];for(var i=0;i<arr.length;i++){newArr.push(arr[i])}return newArr};exports.getAbsoluteLeft=function(elem){return elem.getBoundingClientRect().left};exports.getAbsoluteRight=function(elem){return elem.getBoundingClientRect().right};exports.getAbsoluteTop=function(elem){return elem.getBoundingClientRect().top};exports.addClassName=function(elem,classNames){var classes=elem.className.split(\" \");var newClasses=classNames.split(\" \");classes=classes.concat(newClasses.filter(function(className){return classes.indexOf(className)<0}));elem.className=classes.join(\" \")};exports.removeClassName=function(elem,classNames){var classes=elem.className.split(\" \");var oldClasses=classNames.split(\" \");classes=classes.filter(function(className){return oldClasses.indexOf(className)<0});elem.className=classes.join(\" \")};exports.forEach=function(object,callback){var i,len;if(Array.isArray(object)){for(i=0,len=object.length;i<len;i++){callback(object[i],i,object)}}else{for(i in object){if(object.hasOwnProperty(i)){callback(object[i],i,object)}}}};exports.toArray=function(object){var array=[];for(var prop in object){if(object.hasOwnProperty(prop))array.push(object[prop])}return array};exports.updateProperty=function(object,key,value){if(object[key]!==value){object[key]=value;return true}else{return false}};exports.throttle=function(fn){var scheduled=false;return function throttled(){if(!scheduled){scheduled=true;requestAnimationFrame(function(){scheduled=false;fn()})}}};exports.addEventListener=function(element,action,listener,useCapture){if(element.addEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.addEventListener(action,listener,useCapture)}else{element.attachEvent(\"on\"+action,listener)}};exports.removeEventListener=function(element,action,listener,useCapture){if(element.removeEventListener){if(useCapture===undefined)useCapture=false;if(action===\"mousewheel\"&&navigator.userAgent.indexOf(\"Firefox\")>=0){action=\"DOMMouseScroll\"}element.removeEventListener(action,listener,useCapture)}else{element.detachEvent(\"on\"+action,listener)}};exports.preventDefault=function(event){if(!event)event=window.event;if(event.preventDefault){event.preventDefault()}else{event.returnValue=false}};exports.getTarget=function(event){if(!event){event=window.event}var target;if(event.target){target=event.target}else if(event.srcElement){target=event.srcElement}if(target.nodeType!=undefined&&target.nodeType==3){target=target.parentNode}return target};exports.hasParent=function(element,parent){var e=element;while(e){if(e===parent){return true}e=e.parentNode}return false};exports.option={};exports.option.asBoolean=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return value!=false}return defaultValue||null};exports.option.asNumber=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return Number(value)||defaultValue||null}return defaultValue||null};exports.option.asString=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(value!=null){return String(value)}return defaultValue||null};exports.option.asSize=function(value,defaultValue){if(typeof value==\"function\"){value=value()}if(exports.isString(value)){return value}else if(exports.isNumber(value)){return value+\"px\"}else{return defaultValue||null}};exports.option.asElement=function(value,defaultValue){if(typeof value==\"function\"){value=value()}return value||defaultValue||null};exports.hexToRGB=function(hex){var shorthandRegex=/^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;hex=hex.replace(shorthandRegex,function(m,r,g,b){return r+r+g+g+b+b});var result=/^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(hex);return result?{r:parseInt(result[1],16),g:parseInt(result[2],16),b:parseInt(result[3],16)}:null};exports.overrideOpacity=function(color,opacity){var rgb;if(color.indexOf(\"rgba\")!=-1){return color}else if(color.indexOf(\"rgb\")!=-1){rgb=color.substr(color.indexOf(\"(\")+1).replace(\")\",\"\").split(\",\");return\"rgba(\"+rgb[0]+\",\"+rgb[1]+\",\"+rgb[2]+\",\"+opacity+\")\"}else{rgb=exports.hexToRGB(color);if(rgb==null){return color}else{return\"rgba(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\",\"+opacity+\")\"}}};exports.RGBToHex=function(red,green,blue){return\"#\"+((1<<24)+(red<<16)+(green<<8)+blue).toString(16).slice(1)};exports.parseColor=function(color){var c;if(exports.isString(color)===true){if(exports.isValidRGB(color)===true){var rgb=color.substr(4).substr(0,color.length-5).split(\",\").map(function(value){return parseInt(value)});color=exports.RGBToHex(rgb[0],rgb[1],rgb[2])}if(exports.isValidHex(color)===true){var hsv=exports.hexToHSV(color);var lighterColorHSV={h:hsv.h,s:hsv.s*.8,v:Math.min(1,hsv.v*1.02)};var darkerColorHSV={h:hsv.h,s:Math.min(1,hsv.s*1.25),v:hsv.v*.8};var darkerColorHex=exports.HSVToHex(darkerColorHSV.h,darkerColorHSV.s,darkerColorHSV.v);var lighterColorHex=exports.HSVToHex(lighterColorHSV.h,lighterColorHSV.s,lighterColorHSV.v);c={background:color,border:darkerColorHex,highlight:{background:lighterColorHex,border:darkerColorHex},hover:{background:lighterColorHex,border:darkerColorHex}}}else{c={background:color,border:color,highlight:{background:color,border:color},hover:{background:color,border:color}}}}else{c={};c.background=color.background||undefined;c.border=color.border||undefined;if(exports.isString(color.highlight)){c.highlight={border:color.highlight,background:color.highlight}}else{c.highlight={};c.highlight.background=color.highlight&&color.highlight.background||undefined;c.highlight.border=color.highlight&&color.highlight.border||undefined}if(exports.isString(color.hover)){c.hover={border:color.hover,background:color.hover}}else{c.hover={};c.hover.background=color.hover&&color.hover.background||undefined;c.hover.border=color.hover&&color.hover.border||undefined}}return c};exports.RGBToHSV=function(red,green,blue){red=red/255;green=green/255;blue=blue/255;var minRGB=Math.min(red,Math.min(green,blue));var maxRGB=Math.max(red,Math.max(green,blue));if(minRGB==maxRGB){return{h:0,s:0,v:minRGB}}var d=red==minRGB?green-blue:blue==minRGB?red-green:blue-red;var h=red==minRGB?3:blue==minRGB?1:5;var hue=60*(h-d/(maxRGB-minRGB))/360;var saturation=(maxRGB-minRGB)/maxRGB;var value=maxRGB;return{h:hue,s:saturation,v:value}};var cssUtil={split:function split(cssText){var styles={};cssText.split(\";\").forEach(function(style){if(style.trim()!=\"\"){var parts=style.split(\":\");var key=parts[0].trim();var value=parts[1].trim();styles[key]=value}});return styles},join:function join(styles){return(0,_keys2[\"default\"])(styles).map(function(key){return key+\": \"+styles[key]}).join(\"; \")}};exports.addCssText=function(element,cssText){var currentStyles=cssUtil.split(element.style.cssText);var newStyles=cssUtil.split(cssText);var styles=exports.extend(currentStyles,newStyles);element.style.cssText=cssUtil.join(styles)};exports.removeCssText=function(element,cssText){var styles=cssUtil.split(element.style.cssText);var removeStyles=cssUtil.split(cssText);for(var key in removeStyles){if(removeStyles.hasOwnProperty(key)){delete styles[key]}}element.style.cssText=cssUtil.join(styles)};exports.HSVToRGB=function(h,s,v){var r,g,b;var i=Math.floor(h*6);var f=h*6-i;var p=v*(1-s);var q=v*(1-f*s);var t=v*(1-(1-f)*s);switch(i%6){case 0:r=v,g=t,b=p;break;case 1:r=q,g=v,b=p;break;case 2:r=p,g=v,b=t;break;case 3:r=p,g=q,b=v;break;case 4:r=t,g=p,b=v;break;case 5:r=v,g=p,b=q;break}return{r:Math.floor(r*255),g:Math.floor(g*255),b:Math.floor(b*255)}};exports.HSVToHex=function(h,s,v){var rgb=exports.HSVToRGB(h,s,v);return exports.RGBToHex(rgb.r,rgb.g,rgb.b)};exports.hexToHSV=function(hex){var rgb=exports.hexToRGB(hex);return exports.RGBToHSV(rgb.r,rgb.g,rgb.b)};exports.isValidHex=function(hex){var isOk=/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(hex);return isOk};exports.isValidRGB=function(rgb){rgb=rgb.replace(\" \",\"\");var isOk=/rgb\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3})\\)/i.test(rgb);return isOk};exports.isValidRGBA=function(rgba){rgba=rgba.replace(\" \",\"\");var isOk=/rgba\\((\\d{1,3}),(\\d{1,3}),(\\d{1,3}),(.{1,3})\\)/i.test(rgba);return isOk};exports.selectiveBridgeObject=function(fields,referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);for(var i=0;i<fields.length;i++){if(referenceObject.hasOwnProperty(fields[i])){if((0,_typeof3[\"default\"])(referenceObject[fields[i]])==\"object\"){objectTo[fields[i]]=exports.bridgeObject(referenceObject[fields[i]])}}}return objectTo}else{return null}};exports.bridgeObject=function(referenceObject){if(referenceObject!==null&&(typeof referenceObject===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(referenceObject))===\"object\"){var objectTo=(0,_create2[\"default\"])(referenceObject);if(referenceObject instanceof Element){objectTo=referenceObject}else{objectTo=(0,_create2[\"default\"])(referenceObject);for(var i in referenceObject){if(referenceObject.hasOwnProperty(i)){if((0,_typeof3[\"default\"])(referenceObject[i])==\"object\"){objectTo[i]=exports.bridgeObject(referenceObject[i])}}}}return objectTo}else{return null}};exports.insertSort=function(a,compare){for(var i=0;i<a.length;i++){var k=a[i];for(var j=i;j>0&&compare(k,a[j-1])<0;j--){a[j]=a[j-1]}a[j]=k}return a};exports.mergeOptions=function(mergeTarget,options,option){var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var isPresent=function isPresent(obj){return obj!==null&&obj!==undefined};var isObject=function isObject(obj){return obj!==null&&(typeof obj===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(obj))===\"object\"};var isEmpty=function isEmpty(obj){for(var x in obj){if(obj.hasOwnProperty(x))return false}return true};if(!isObject(mergeTarget)){throw new Error(\"Parameter mergeTarget must be an object\")}if(!isObject(options)){throw new Error(\"Parameter options must be an object\")}if(!isPresent(option)){throw new Error(\"Parameter option must have a value\")}if(!isObject(globalOptions)){throw new Error(\"Parameter globalOptions must be an object\")}var doMerge=function doMerge(target,options,option){if(!isObject(target[option])){target[option]={}}var src=options[option];var dst=target[option];for(var prop in src){if(src.hasOwnProperty(prop)){dst[prop]=src[prop]}}};var srcOption=options[option];var globalPassed=isObject(globalOptions)&&!isEmpty(globalOptions);var globalOption=globalPassed?globalOptions[option]:undefined;var globalEnabled=globalOption?globalOption.enabled:undefined;if(srcOption===undefined){return}if(typeof srcOption===\"boolean\"){if(!isObject(mergeTarget[option])){mergeTarget[option]={}}mergeTarget[option].enabled=srcOption;return}if(srcOption===null&&!isObject(mergeTarget[option])){if(isPresent(globalOption)){mergeTarget[option]=(0,_create2[\"default\"])(globalOption)}else{return}}if(!isObject(srcOption)){return}var enabled=true;if(srcOption.enabled!==undefined){enabled=srcOption.enabled}else{if(globalEnabled!==undefined){enabled=globalOption.enabled}}doMerge(mergeTarget,options,option);mergeTarget[option].enabled=enabled};exports.binarySearchCustom=function(orderedItems,comparator,field,field2){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;while(low<=high&&iteration<maxIterations){var middle=Math.floor((low+high)/2);var item=orderedItems[middle];var value=field2===undefined?item[field]:item[field][field2];var searchResult=comparator(value);if(searchResult==0){return middle}else if(searchResult==-1){low=middle+1}else{high=middle-1}iteration++}return-1};exports.binarySearchValue=function(orderedItems,target,field,sidePreference,comparator){var maxIterations=1e4;var iteration=0;var low=0;var high=orderedItems.length-1;var prevValue,value,nextValue,middle;comparator=comparator!=undefined?comparator:function(a,b){return a==b?0:a<b?-1:1};while(low<=high&&iteration<maxIterations){middle=Math.floor(.5*(high+low));prevValue=orderedItems[Math.max(0,middle-1)][field];value=orderedItems[middle][field];nextValue=orderedItems[Math.min(orderedItems.length-1,middle+1)][field];if(comparator(value,target)==0){return middle}else if(comparator(prevValue,target)<0&&comparator(value,target)>0){return sidePreference==\"before\"?Math.max(0,middle-1):middle}else if(comparator(value,target)<0&&comparator(nextValue,target)>0){return sidePreference==\"before\"?middle:Math.min(orderedItems.length-1,middle+1)}else{if(comparator(value,target)<0){low=middle+1}else{high=middle-1}}iteration++}return-1};exports.easingFunctions={linear:function linear(t){return t},easeInQuad:function easeInQuad(t){return t*t},easeOutQuad:function easeOutQuad(t){return t*(2-t)},easeInOutQuad:function easeInOutQuad(t){return t<.5?2*t*t:-1+(4-2*t)*t},easeInCubic:function easeInCubic(t){return t*t*t},easeOutCubic:function easeOutCubic(t){return--t*t*t+1},easeInOutCubic:function easeInOutCubic(t){return t<.5?4*t*t*t:(t-1)*(2*t-2)*(2*t-2)+1},easeInQuart:function easeInQuart(t){return t*t*t*t},easeOutQuart:function easeOutQuart(t){return 1- --t*t*t*t},easeInOutQuart:function easeInOutQuart(t){return t<.5?8*t*t*t*t:1-8*--t*t*t*t},easeInQuint:function easeInQuint(t){return t*t*t*t*t},easeOutQuint:function easeOutQuint(t){return 1+--t*t*t*t*t},easeInOutQuint:function easeInOutQuint(t){return t<.5?16*t*t*t*t*t:1+16*--t*t*t*t*t}};exports.getScrollBarWidth=function(){var inner=document.createElement(\"p\");inner.style.width=\"100%\";inner.style.height=\"200px\";var outer=document.createElement(\"div\");outer.style.position=\"absolute\";outer.style.top=\"0px\";outer.style.left=\"0px\";outer.style.visibility=\"hidden\";outer.style.width=\"200px\";outer.style.height=\"150px\";outer.style.overflow=\"hidden\";outer.appendChild(inner);document.body.appendChild(outer);var w1=inner.offsetWidth;outer.style.overflow=\"scroll\";var w2=inner.offsetWidth;if(w1==w2)w2=outer.clientWidth;document.body.removeChild(outer);return w1-w2};exports.topMost=function(pile,accessors){var candidate=void 0;if(!Array.isArray(accessors)){accessors=[accessors]}var _iteratorNormalCompletion=true;var _didIteratorError=false;var _iteratorError=undefined;try{for(var _iterator=(0,_getIterator3[\"default\"])(pile),_step;!(_iteratorNormalCompletion=(_step=_iterator.next()).done);_iteratorNormalCompletion=true){var member=_step.value;if(member){candidate=member[accessors[0]];for(var i=1;i<accessors.length;i++){if(candidate){candidate=candidate[accessors[i]]}else{continue}}if(typeof candidate!=\"undefined\"){break}}}}catch(err){_didIteratorError=true;_iteratorError=err}finally{try{if(!_iteratorNormalCompletion&&_iterator[\"return\"]){_iterator[\"return\"]()}}finally{if(_didIteratorError){throw _iteratorError}}}return candidate}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(194),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(self,call){if(!self){throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\")}return call&&((typeof call===\"undefined\"?\"undefined\":(0,_typeof3.default)(call))===\"object\"||typeof call===\"function\")?call:self}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _setPrototypeOf=__webpack_require__(196);var _setPrototypeOf2=_interopRequireDefault(_setPrototypeOf);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(subClass,superClass){if(typeof superClass!==\"function\"&&superClass!==null){throw new TypeError(\"Super expression must either be null or a function, not \"+(typeof superClass===\"undefined\"?\"undefined\":(0,_typeof3.default)(superClass)))}subClass.prototype=(0,_create2.default)(superClass&&superClass.prototype,{constructor:{value:subClass,enumerable:false,writable:true,configurable:true}});if(superClass)_setPrototypeOf2.default?(0,_setPrototypeOf2.default)(subClass,superClass):subClass.__proto__=superClass}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _iterator=__webpack_require__(142);var _iterator2=_interopRequireDefault(_iterator);var _symbol=__webpack_require__(144);var _symbol2=_interopRequireDefault(_symbol);var _typeof=typeof _symbol2.default===\"function\"&&typeof _iterator2.default===\"symbol\"?function(obj){return typeof obj}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj};function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=typeof _symbol2.default===\"function\"&&_typeof(_iterator2.default)===\"symbol\"?function(obj){return typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}:function(obj){return obj&&typeof _symbol2.default===\"function\"&&obj.constructor===_symbol2.default&&obj!==_symbol2.default.prototype?\"symbol\":typeof obj===\"undefined\"?\"undefined\":_typeof(obj)}},function(module,exports){var core=module.exports={version:\"2.5.1\"};if(typeof __e==\"number\")__e=core},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(140),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";module.exports=typeof window!==\"undefined\"&&window[\"moment\"]||__webpack_require__(154)},function(module,exports,__webpack_require__){\"use strict\";function hammerMock(){var noop=function noop(){};return{on:noop,off:noop,destroy:noop,emit:noop,get:function get(m){return{set:noop}}}}if(typeof window!==\"undefined\"){var propagating=__webpack_require__(175);var Hammer=window[\"Hammer\"]||__webpack_require__(176);module.exports=propagating(Hammer,{preventDefault:\"mouse\"})}else{module.exports=function(){return hammerMock()}}},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Queue=__webpack_require__(43);function DataSet(data,options){if(data&&!Array.isArray(data)){options=data;data=null}this._options=options||{};this._data={};this.length=0;this._fieldId=this._options.fieldId||\"id\";this._type={};if(this._options.type){var fields=(0,_keys2[\"default\"])(this._options.type);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var value=this._options.type[field];if(value==\"Date\"||value==\"ISODate\"||value==\"ASPDate\"){this._type[field]=\"Date\"}else{this._type[field]=value}}}this._subscribers={};if(data){this.add(data)}this.setOptions(options)}DataSet.prototype.setOptions=function(options){if(options&&options.queue!==undefined){if(options.queue===false){if(this._queue){this._queue.destroy();delete this._queue}}else{if(!this._queue){this._queue=Queue.extend(this,{replace:[\"add\",\"update\",\"remove\"]})}if((0,_typeof3[\"default\"])(options.queue)===\"object\"){this._queue.setOptions(options.queue)}}}};DataSet.prototype.on=function(event,callback){var subscribers=this._subscribers[event];if(!subscribers){subscribers=[];this._subscribers[event]=subscribers}subscribers.push({callback:callback})};DataSet.prototype.off=function(event,callback){var subscribers=this._subscribers[event];if(subscribers){this._subscribers[event]=subscribers.filter(function(listener){return listener.callback!=callback})}};DataSet.prototype._trigger=function(event,params,senderId){if(event==\"*\"){throw new Error(\"Cannot trigger event *\")}var subscribers=[];if(event in this._subscribers){subscribers=subscribers.concat(this._subscribers[event])}if(\"*\"in this._subscribers){subscribers=subscribers.concat(this._subscribers[\"*\"])}for(var i=0,len=subscribers.length;i<len;i++){var subscriber=subscribers[i];if(subscriber.callback){subscriber.callback(event,params,senderId||null)}}};DataSet.prototype.add=function(data,senderId){var addedIds=[],id,me=this;if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){id=me._addItem(data[i]);addedIds.push(id)}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){id=me._addItem(data);addedIds.push(id)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}return addedIds};DataSet.prototype.update=function(data,senderId){var addedIds=[];var updatedIds=[];var oldData=[];var updatedData=[];var me=this;var fieldId=me._fieldId;var addOrUpdate=function addOrUpdate(item){var id=item[fieldId];if(me._data[id]){var oldItem=util.extend({},me._data[id]);id=me._updateItem(item);updatedIds.push(id);updatedData.push(item);oldData.push(oldItem)}else{id=me._addItem(item);addedIds.push(id)}};if(Array.isArray(data)){for(var i=0,len=data.length;i<len;i++){if(data[i]&&(0,_typeof3[\"default\"])(data[i])===\"object\"){addOrUpdate(data[i])}else{console.warn(\"Ignoring input item, which is not an object at index \"+i)}}}else if(data&&(typeof data===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(data))===\"object\"){addOrUpdate(data)}else{throw new Error(\"Unknown dataType\")}if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){var props={items:updatedIds,oldData:oldData,data:updatedData};this._trigger(\"update\",props,senderId)}return addedIds.concat(updatedIds)};DataSet.prototype.get=function(args){var me=this;var id,ids,options;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"){id=arguments[0];options=arguments[1]}else if(firstType==\"Array\"){\nids=arguments[0];options=arguments[1]}else{options=arguments[0]}var returnType;if(options&&options.returnType){var allowedValues=[\"Array\",\"Object\"];returnType=allowedValues.indexOf(options.returnType)==-1?\"Array\":options.returnType}else{returnType=\"Array\"}var type=options&&options.type||this._options.type;var filter=options&&options.filter;var items=[],item,itemIds,itemId,i,len;if(id!=undefined){item=me._getItem(id,type);if(item&&filter&&!filter(item)){item=null}}else if(ids!=undefined){for(i=0,len=ids.length;i<len;i++){item=me._getItem(ids[i],type);if(!filter||filter(item)){items.push(item)}}}else{itemIds=(0,_keys2[\"default\"])(this._data);for(i=0,len=itemIds.length;i<len;i++){itemId=itemIds[i];item=me._getItem(itemId,type);if(!filter||filter(item)){items.push(item)}}}if(options&&options.order&&id==undefined){this._sort(items,options.order)}if(options&&options.fields){var fields=options.fields;if(id!=undefined){item=this._filterFields(item,fields)}else{for(i=0,len=items.length;i<len;i++){items[i]=this._filterFields(items[i],fields)}}}if(returnType==\"Object\"){var result={},resultant;for(i=0,len=items.length;i<len;i++){resultant=items[i];result[resultant.id]=resultant}return result}else{if(id!=undefined){return item}else{return items}}};DataSet.prototype.getIds=function(options){var data=this._data,filter=options&&options.filter,order=options&&options.order,type=options&&options.type||this._options.type,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item,items,ids=[];if(filter){if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){items.push(item)}}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(filter(item)){ids.push(item[this._fieldId])}}}}else{if(order){items=[];for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];items.push(data[id])}this._sort(items,order);for(i=0,len=items.length;i<len;i++){ids.push(items[i][this._fieldId])}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=data[id];ids.push(item[this._fieldId])}}}return ids};DataSet.prototype.getDataSet=function(){return this};DataSet.prototype.forEach=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,item,id;if(options&&options.order){var items=this.get(options);for(i=0,len=items.length;i<len;i++){item=items[i];id=item[this._fieldId];callback(item,id)}}else{for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){callback(item,id)}}}};DataSet.prototype.map=function(callback,options){var filter=options&&options.filter,type=options&&options.type||this._options.type,mappedItems=[],data=this._data,itemIds=(0,_keys2[\"default\"])(data),i,len,id,item;for(i=0,len=itemIds.length;i<len;i++){id=itemIds[i];item=this._getItem(id,type);if(!filter||filter(item)){mappedItems.push(callback(item,id))}}if(options&&options.order){this._sort(mappedItems,options.order)}return mappedItems};DataSet.prototype._filterFields=function(item,fields){if(!item){return item}var filteredItem={},itemFields=(0,_keys2[\"default\"])(item),len=itemFields.length,i,field;if(Array.isArray(fields)){for(i=0;i<len;i++){field=itemFields[i];if(fields.indexOf(field)!=-1){filteredItem[field]=item[field]}}}else{for(i=0;i<len;i++){field=itemFields[i];if(fields.hasOwnProperty(field)){filteredItem[fields[field]]=item[field]}}}return filteredItem};DataSet.prototype._sort=function(items,order){if(util.isString(order)){var name=order;items.sort(function(a,b){var av=a[name];var bv=b[name];return av>bv?1:av<bv?-1:0})}else if(typeof order===\"function\"){items.sort(order)}else{throw new TypeError(\"Order must be a function or a string\")}};DataSet.prototype.remove=function(id,senderId){var removedIds=[],removedItems=[],ids=[],i,len,itemId,item;ids=Array.isArray(id)?id:[id];for(i=0,len=ids.length;i<len;i++){item=this._remove(ids[i]);if(item){itemId=item[this._fieldId];if(itemId!=undefined){removedIds.push(itemId);removedItems.push(item)}}}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}return removedIds};DataSet.prototype._remove=function(id){var item,ident;if(util.isNumber(id)||util.isString(id)){ident=id}else if(id&&(typeof id===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(id))===\"object\"){ident=id[this._fieldId]}if(ident!==undefined&&this._data[ident]){item=this._data[ident];delete this._data[ident];this.length--;return item}return null};DataSet.prototype.clear=function(senderId){var i,len;var ids=(0,_keys2[\"default\"])(this._data);var items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data[ids[i]])}this._data={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items},senderId);return ids};DataSet.prototype.max=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),max=null,maxField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!max||itemField>maxField)){max=item;maxField=itemField}}return max};DataSet.prototype.min=function(field){var data=this._data,itemIds=(0,_keys2[\"default\"])(data),min=null,minField=null,i,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var itemField=item[field];if(itemField!=null&&(!min||itemField<minField)){min=item;minField=itemField}}return min};DataSet.prototype.distinct=function(field){var data=this._data;var itemIds=(0,_keys2[\"default\"])(data);var values=[];var fieldType=this._options.type&&this._options.type[field]||null;var count=0;var i,j,len;for(i=0,len=itemIds.length;i<len;i++){var id=itemIds[i];var item=data[id];var value=item[field];var exists=false;for(j=0;j<count;j++){if(values[j]==value){exists=true;break}}if(!exists&&value!==undefined){values[count]=value;count++}}if(fieldType){for(i=0,len=values.length;i<len;i++){values[i]=util.convert(values[i],fieldType)}}return values};DataSet.prototype._addItem=function(item){var id=item[this._fieldId];if(id!=undefined){if(this._data[id]){throw new Error(\"Cannot add item: item with id \"+id+\" already exists\")}}else{id=util.randomUUID();item[this._fieldId]=id}var d={},fields=(0,_keys2[\"default\"])(item),i,len;for(i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}this._data[id]=d;this.length++;return id};DataSet.prototype._getItem=function(id,types){var field,value,i,len;var raw=this._data[id];if(!raw){return null}var converted={},fields=(0,_keys2[\"default\"])(raw);if(types){for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=util.convert(value,types[field])}}else{for(i=0,len=fields.length;i<len;i++){field=fields[i];value=raw[field];converted[field]=value}}if(!converted[this._fieldId]){converted[this._fieldId]=raw.id}return converted};DataSet.prototype._updateItem=function(item){var id=item[this._fieldId];if(id==undefined){throw new Error(\"Cannot update item: item has no id (item: \"+(0,_stringify2[\"default\"])(item)+\")\")}var d=this._data[id];if(!d){throw new Error(\"Cannot update item: no item with id \"+id+\" found\")}var fields=(0,_keys2[\"default\"])(item);for(var i=0,len=fields.length;i<len;i++){var field=fields[i];var fieldType=this._type[field];d[field]=util.convert(item[field],fieldType)}return id};module.exports=DataSet},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);function DataView(data,options){this._data=null;this._ids={};this.length=0;this._options=options||{};this._fieldId=\"id\";this._subscribers={};var me=this;this.listener=function(){me._onEvent.apply(me,arguments)};this.setData(data)}DataView.prototype.setData=function(data){var ids,id,i,len,items;if(this._data){if(this._data.off){this._data.off(\"*\",this.listener)}ids=this._data.getIds({filter:this._options&&this._options.filter});items=[];for(i=0,len=ids.length;i<len;i++){items.push(this._data._data[ids[i]])}this._ids={};this.length=0;this._trigger(\"remove\",{items:ids,oldData:items})}this._data=data;if(this._data){this._fieldId=this._options.fieldId||this._data&&this._data.options&&this._data.options.fieldId||\"id\";ids=this._data.getIds({filter:this._options&&this._options.filter});for(i=0,len=ids.length;i<len;i++){id=ids[i];this._ids[id]=true}this.length=ids.length;this._trigger(\"add\",{items:ids});if(this._data.on){this._data.on(\"*\",this.listener)}}};DataView.prototype.refresh=function(){var id,i,len;var ids=this._data.getIds({filter:this._options&&this._options.filter}),oldIds=(0,_keys2[\"default\"])(this._ids),newIds={},addedIds=[],removedIds=[],removedItems=[];for(i=0,len=ids.length;i<len;i++){id=ids[i];newIds[id]=true;if(!this._ids[id]){addedIds.push(id);this._ids[id]=true}}for(i=0,len=oldIds.length;i<len;i++){id=oldIds[i];if(!newIds[id]){removedIds.push(id);removedItems.push(this._data._data[id]);delete this._ids[id]}}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds})}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems})}};DataView.prototype.get=function(args){var me=this;var ids,options,data;var firstType=util.getType(arguments[0]);if(firstType==\"String\"||firstType==\"Number\"||firstType==\"Array\"){ids=arguments[0];options=arguments[1];data=arguments[2]}else{options=arguments[0];data=arguments[1]}var viewOptions=util.extend({},this._options,options);if(this._options.filter&&options&&options.filter){viewOptions.filter=function(item){return me._options.filter(item)&&options.filter(item)}}var getArguments=[];if(ids!=undefined){getArguments.push(ids)}getArguments.push(viewOptions);getArguments.push(data);return this._data&&this._data.get.apply(this._data,getArguments)};DataView.prototype.getIds=function(options){var ids;if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}ids=this._data.getIds({filter:filter,order:options&&options.order})}else{ids=[]}return ids};DataView.prototype.map=function(callback,options){var mappedItems=[];if(this._data){var defaultFilter=this._options.filter;var filter;if(options&&options.filter){if(defaultFilter){filter=function filter(item){return defaultFilter(item)&&options.filter(item)}}else{filter=options.filter}}else{filter=defaultFilter}mappedItems=this._data.map(callback,{filter:filter,order:options&&options.order})}else{mappedItems=[]}return mappedItems};DataView.prototype.getDataSet=function(){var dataSet=this;while(dataSet instanceof DataView){dataSet=dataSet._data}return dataSet||null};DataView.prototype._onEvent=function(event,params,senderId){var i,len,id,item;var ids=params&&params.items;var addedIds=[],updatedIds=[],removedIds=[],oldItems=[],updatedItems=[],removedItems=[];if(ids&&this._data){switch(event){case\"add\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){this._ids[id]=true;addedIds.push(id)}}break;case\"update\":for(i=0,len=ids.length;i<len;i++){id=ids[i];item=this.get(id);if(item){if(this._ids[id]){updatedIds.push(id);updatedItems.push(params.data[i]);oldItems.push(params.oldData[i])}else{this._ids[id]=true;addedIds.push(id)}}else{if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}else{}}}break;case\"remove\":for(i=0,len=ids.length;i<len;i++){id=ids[i];if(this._ids[id]){delete this._ids[id];removedIds.push(id);removedItems.push(params.oldData[i])}}break}this.length+=addedIds.length-removedIds.length;if(addedIds.length){this._trigger(\"add\",{items:addedIds},senderId)}if(updatedIds.length){this._trigger(\"update\",{items:updatedIds,oldData:oldItems,data:updatedItems},senderId)}if(removedIds.length){this._trigger(\"remove\",{items:removedIds,oldData:removedItems},senderId)}}};DataView.prototype.on=DataSet.prototype.on;DataView.prototype.off=DataSet.prototype.off;DataView.prototype._trigger=DataSet.prototype._trigger;DataView.prototype.subscribe=DataView.prototype.on;DataView.prototype.unsubscribe=DataView.prototype.off;module.exports=DataView},function(module,exports,__webpack_require__){var store=__webpack_require__(57)(\"wks\");var uid=__webpack_require__(40);var Symbol=__webpack_require__(18).Symbol;var USE_SYMBOL=typeof Symbol==\"function\";var $exports=module.exports=function(name){return store[name]||(store[name]=USE_SYMBOL&&Symbol[name]||(USE_SYMBOL?Symbol:uid)(\"Symbol.\"+name))};$exports.store=store},function(module,exports,__webpack_require__){\"use strict\";exports.prepareElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){JSONcontainer[elementType].redundant=JSONcontainer[elementType].used;JSONcontainer[elementType].used=[]}}};exports.cleanupElements=function(JSONcontainer){for(var elementType in JSONcontainer){if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant){for(var i=0;i<JSONcontainer[elementType].redundant.length;i++){JSONcontainer[elementType].redundant[i].parentNode.removeChild(JSONcontainer[elementType].redundant[i])}JSONcontainer[elementType].redundant=[]}}}};exports.resetElements=function(JSONcontainer){exports.prepareElements(JSONcontainer);exports.cleanupElements(JSONcontainer);exports.prepareElements(JSONcontainer)};exports.getSVGElement=function(elementType,JSONcontainer,svgContainer){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);svgContainer.appendChild(element)}}else{element=document.createElementNS(\"http://www.w3.org/2000/svg\",elementType);JSONcontainer[elementType]={used:[],redundant:[]};svgContainer.appendChild(element)}JSONcontainer[elementType].used.push(element);return element};exports.getDOMElement=function(elementType,JSONcontainer,DOMContainer,insertBefore){var element;if(JSONcontainer.hasOwnProperty(elementType)){if(JSONcontainer[elementType].redundant.length>0){element=JSONcontainer[elementType].redundant[0];JSONcontainer[elementType].redundant.shift()}else{element=document.createElement(elementType);if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}}else{element=document.createElement(elementType);JSONcontainer[elementType]={used:[],redundant:[]};if(insertBefore!==undefined){DOMContainer.insertBefore(element,insertBefore)}else{DOMContainer.appendChild(element)}}JSONcontainer[elementType].used.push(element);return element};exports.drawPoint=function(x,y,groupTemplate,JSONcontainer,svgContainer,labelObj){var point;if(groupTemplate.style==\"circle\"){point=exports.getSVGElement(\"circle\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"cx\",x);point.setAttributeNS(null,\"cy\",y);point.setAttributeNS(null,\"r\",.5*groupTemplate.size)}else{point=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);point.setAttributeNS(null,\"x\",x-.5*groupTemplate.size);point.setAttributeNS(null,\"y\",y-.5*groupTemplate.size);point.setAttributeNS(null,\"width\",groupTemplate.size);point.setAttributeNS(null,\"height\",groupTemplate.size)}if(groupTemplate.styles!==undefined){point.setAttributeNS(null,\"style\",groupTemplate.styles)}point.setAttributeNS(null,\"class\",groupTemplate.className+\" vis-point\");if(labelObj){var label=exports.getSVGElement(\"text\",JSONcontainer,svgContainer);if(labelObj.xOffset){x=x+labelObj.xOffset}if(labelObj.yOffset){y=y+labelObj.yOffset}if(labelObj.content){label.textContent=labelObj.content}if(labelObj.className){label.setAttributeNS(null,\"class\",labelObj.className+\" vis-label\")}label.setAttributeNS(null,\"x\",x);label.setAttributeNS(null,\"y\",y)}return point};exports.drawBar=function(x,y,width,height,className,JSONcontainer,svgContainer,style){if(height!=0){if(height<0){height*=-1;y-=height}var rect=exports.getSVGElement(\"rect\",JSONcontainer,svgContainer);rect.setAttributeNS(null,\"x\",x-.5*width);rect.setAttributeNS(null,\"y\",y);rect.setAttributeNS(null,\"width\",width);rect.setAttributeNS(null,\"height\",height);rect.setAttributeNS(null,\"class\",className);if(style){rect.setAttributeNS(null,\"style\",style)}}}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.printStyle=undefined;var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var errorFound=false;var allOptions=void 0;var printStyle=\"background: #FFeeee; color: #dd0000\";var Validator=function(){function Validator(){(0,_classCallCheck3[\"default\"])(this,Validator)}(0,_createClass3[\"default\"])(Validator,null,[{key:\"validate\",value:function validate(options,referenceOptions,subObject){errorFound=false;allOptions=referenceOptions;var usedOptions=referenceOptions;if(subObject!==undefined){usedOptions=referenceOptions[subObject]}Validator.parse(options,usedOptions,[]);return errorFound}},{key:\"parse\",value:function parse(options,referenceOptions,path){for(var option in options){if(options.hasOwnProperty(option)){Validator.check(option,options,referenceOptions,path)}}}},{key:\"check\",value:function check(option,options,referenceOptions,path){if(referenceOptions[option]===undefined&&referenceOptions.__any__===undefined){Validator.getSuggestion(option,referenceOptions,path);return}var referenceOption=option;var is_object=true;if(referenceOptions[option]===undefined&&referenceOptions.__any__!==undefined){referenceOption=\"__any__\";is_object=Validator.getType(options[option])===\"object\"}else{}var refOptionObj=referenceOptions[referenceOption];if(is_object&&refOptionObj.__type__!==undefined){refOptionObj=refOptionObj.__type__}Validator.checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path)}},{key:\"checkFields\",value:function checkFields(option,options,referenceOptions,referenceOption,refOptionObj,path){var log=function log(message){console.log(\"%c\"+message+Validator.printLocation(path,option),printStyle)};var optionType=Validator.getType(options[option]);var refOptionType=refOptionObj[optionType];if(refOptionType!==undefined){if(Validator.getType(refOptionType)===\"array\"&&refOptionType.indexOf(options[option])===-1){log('Invalid option detected in \"'+option+'\".'+\" Allowed values are:\"+Validator.print(refOptionType)+' not \"'+options[option]+'\". ');errorFound=true}else if(optionType===\"object\"&&referenceOption!==\"__any__\"){path=util.copyAndExtendArray(path,option);Validator.parse(options[option],referenceOptions[referenceOption],path)}}else if(refOptionObj[\"any\"]===undefined){log('Invalid type received for \"'+option+'\". Expected: '+Validator.print((0,_keys2[\"default\"])(refOptionObj))+\". Received [\"+optionType+'] \"'+options[option]+'\"');errorFound=true}}},{key:\"getType\",value:function getType(object){var type=typeof object===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(object);if(type===\"object\"){if(object===null){return\"null\"}if(object instanceof Boolean){return\"boolean\"}if(object instanceof Number){return\"number\"}if(object instanceof String){return\"string\"}if(Array.isArray(object)){return\"array\"}if(object instanceof Date){return\"date\"}if(object.nodeType!==undefined){return\"dom\"}if(object._isAMomentObject===true){return\"moment\"}return\"object\"}else if(type===\"number\"){return\"number\"}else if(type===\"boolean\"){return\"boolean\"}else if(type===\"string\"){return\"string\"}else if(type===undefined){return\"undefined\"}return type}},{key:\"getSuggestion\",value:function getSuggestion(option,options,path){var localSearch=Validator.findInOptions(option,options,path,false);var globalSearch=Validator.findInOptions(option,allOptions,[],true);var localSearchThreshold=8;var globalSearchThreshold=4;var msg=void 0;if(localSearch.indexMatch!==undefined){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+'Perhaps it was incomplete? Did you mean: \"'+localSearch.indexMatch+'\"?\\n\\n'}else if(globalSearch.distance<=globalSearchThreshold&&localSearch.distance>globalSearch.distance){msg=\" in \"+Validator.printLocation(localSearch.path,option,\"\")+\"Perhaps it was misplaced? Matching option found at: \"+Validator.printLocation(globalSearch.path,globalSearch.closestMatch,\"\")}else if(localSearch.distance<=localSearchThreshold){msg='. Did you mean \"'+localSearch.closestMatch+'\"?'+Validator.printLocation(localSearch.path,option)}else{msg=\". Did you mean one of these: \"+Validator.print((0,_keys2[\"default\"])(options))+Validator.printLocation(path,option)}console.log('%cUnknown option detected: \"'+option+'\"'+msg,printStyle);errorFound=true}},{key:\"findInOptions\",value:function findInOptions(option,options,path){var recursive=arguments.length>3&&arguments[3]!==undefined?arguments[3]:false;var min=1e9;var closestMatch=\"\";var closestMatchPath=[];var lowerCaseOption=option.toLowerCase();var indexMatch=undefined;for(var op in options){var distance=void 0;if(options[op].__type__!==undefined&&recursive===true){var result=Validator.findInOptions(option,options[op],util.copyAndExtendArray(path,op));if(min>result.distance){closestMatch=result.closestMatch;closestMatchPath=result.path;min=result.distance;indexMatch=result.indexMatch}}else{if(op.toLowerCase().indexOf(lowerCaseOption)!==-1){indexMatch=op}distance=Validator.levenshteinDistance(option,op);if(min>distance){closestMatch=op;closestMatchPath=util.copyArray(path);min=distance}}}return{closestMatch:closestMatch,path:closestMatchPath,distance:min,indexMatch:indexMatch}}},{key:\"printLocation\",value:function printLocation(path,option){var prefix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"Problem value found at: \\n\";var str=\"\\n\\n\"+prefix+\"options = {\\n\";for(var i=0;i<path.length;i++){for(var j=0;j<i+1;j++){str+=\"  \"}str+=path[i]+\": {\\n\"}for(var _j=0;_j<path.length+1;_j++){str+=\"  \"}str+=option+\"\\n\";for(var _i=0;_i<path.length+1;_i++){for(var _j2=0;_j2<path.length-_i;_j2++){str+=\"  \"}str+=\"}\\n\"}return str+\"\\n\\n\"}},{key:\"print\",value:function print(options){return(0,_stringify2[\"default\"])(options).replace(/(\\\")|(\\[)|(\\])|(,\"__type__\")/g,\"\").replace(/(\\,)/g,\", \")}},{key:\"levenshteinDistance\",value:function levenshteinDistance(a,b){if(a.length===0)return b.length;if(b.length===0)return a.length;var matrix=[];var i;for(i=0;i<=b.length;i++){matrix[i]=[i]}var j;for(j=0;j<=a.length;j++){matrix[0][j]=j}for(i=1;i<=b.length;i++){for(j=1;j<=a.length;j++){if(b.charAt(i-1)==a.charAt(j-1)){matrix[i][j]=matrix[i-1][j-1]}else{matrix[i][j]=Math.min(matrix[i-1][j-1]+1,Math.min(matrix[i][j-1]+1,matrix[i-1][j]+1))}}}return matrix[b.length][a.length]}}]);return Validator}();exports[\"default\"]=Validator;exports.printStyle=printStyle},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Component(body,options){this.options=null;this.props=null}Component.prototype.setOptions=function(options){if(options){util.extend(this.options,options)}};Component.prototype.redraw=function(){return false};Component.prototype.destroy=function(){};Component.prototype._isResized=function(){var resized=this.props._previousWidth!==this.props.width||this.props._previousHeight!==this.props.height;this.props._previousWidth=this.props.width;this.props._previousHeight=this.props.height;return resized};module.exports=Component},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var ctx=__webpack_require__(80);var hide=__webpack_require__(26);var PROTOTYPE=\"prototype\";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var IS_WRAP=type&$export.W;var exports=IS_GLOBAL?core:core[name]||(core[name]={});var expProto=exports[PROTOTYPE];var target=IS_GLOBAL?global:IS_STATIC?global[name]:(global[name]||{})[PROTOTYPE];var key,own,out;if(IS_GLOBAL)source=name;for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;if(own&&key in exports)continue;out=own?target[key]:source[key];exports[key]=IS_GLOBAL&&typeof target[key]!=\"function\"?source[key]:IS_BIND&&own?ctx(out,global):IS_WRAP&&target[key]==out?function(C){var F=function(a,b,c){if(this instanceof C){switch(arguments.length){case 0:return new C;case 1:return new C(a);case 2:return new C(a,b)}return new C(a,b,c)}return C.apply(this,arguments)};F[PROTOTYPE]=C[PROTOTYPE];return F}(out):IS_PROTO&&typeof out==\"function\"?ctx(Function.call,out):out;if(IS_PROTO){(exports.virtual||(exports.virtual={}))[key]=out;if(type&$export.R&&expProto&&!expProto[key])hide(expProto,key,out)}}};$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;module.exports=$export},function(module,exports){var global=module.exports=typeof window!=\"undefined\"&&window.Math==Math?window:typeof self!=\"undefined\"&&self.Math==Math?self:Function(\"return this\")();if(typeof __g==\"number\")__g=global},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(160),__esModule:true}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var IE8_DOM_DEFINE=__webpack_require__(81);var toPrimitive=__webpack_require__(53);var dP=Object.defineProperty;exports.f=__webpack_require__(21)?Object.defineProperty:function defineProperty(O,P,Attributes){anObject(O);P=toPrimitive(P,true);anObject(Attributes);if(IE8_DOM_DEFINE)try{return dP(O,P,Attributes)}catch(e){}if(\"get\"in Attributes||\"set\"in Attributes)throw TypeError(\"Accessors not supported!\");if(\"value\"in Attributes)O[P]=Attributes.value;return O}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(28)(function(){return Object.defineProperty({},\"a\",{get:function(){return 7}}).a!=7})},function(module,exports){var hasOwnProperty={}.hasOwnProperty;module.exports=function(it,key){return hasOwnProperty.call(it,key)}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var NodeBase=function(){function NodeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,NodeBase);this.body=body;this.labelModule=labelModule;this.setOptions(options);this.top=undefined;this.left=undefined;this.height=undefined;this.width=undefined;this.radius=undefined;this.margin=undefined;this.refreshNeeded=true;this.boundingBox={top:0,left:0,right:0,bottom:0}}(0,_createClass3[\"default\"])(NodeBase,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"_setMargins\",value:function _setMargins(labelModule){this.margin={};if(this.options.margin){if((0,_typeof3[\"default\"])(this.options.margin)==\"object\"){this.margin.top=this.options.margin.top;this.margin.right=this.options.margin.right;this.margin.bottom=this.options.margin.bottom;this.margin.left=this.options.margin.left}else{this.margin.top=this.options.margin;this.margin.right=this.options.margin;this.margin.bottom=this.options.margin;this.margin.left=this.options.margin}}labelModule.adjustSizes(this.margin)}},{key:\"_distanceToBorder\",value:function _distanceToBorder(ctx,angle){var borderWidth=this.options.borderWidth;this.resize(ctx);return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}},{key:\"enableBorderDashes\",value:function enableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){var dashes=values.borderDashes;if(dashes===true){dashes=[5,15]}ctx.setLineDash(dashes)}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"disableBorderDashes\",value:function disableBorderDashes(ctx,values){if(values.borderDashes!==false){if(ctx.setLineDash!==undefined){ctx.setLineDash([0])}else{console.warn(\"setLineDash is not supported in this browser. The dashed borders cannot be used.\");this.options.shapeProperties.borderDashes=false;values.borderDashes=false}}}},{key:\"needsRefresh\",value:function needsRefresh(selected,hover){if(this.refreshNeeded===true){this.refreshNeeded=false;return true}return this.width===undefined||this.labelModule.differentState(selected,hover)}},{key:\"initContextForDraw\",value:function initContextForDraw(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.strokeStyle=values.borderColor;ctx.fillStyle=values.color}},{key:\"performStroke\",value:function performStroke(ctx,values){var borderWidth=values.borderWidth/this.body.view.scale;ctx.save();if(borderWidth>0){this.enableBorderDashes(ctx,values);ctx.stroke();this.disableBorderDashes(ctx,values)}ctx.restore()}},{key:\"performFill\",value:function performFill(ctx,values){this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values);this.performStroke(ctx,values)}},{key:\"_addBoundingBoxMargin\",value:function _addBoundingBoxMargin(margin){this.boundingBox.left-=margin;this.boundingBox.top-=margin;this.boundingBox.bottom+=margin;this.boundingBox.right+=margin}},{key:\"_updateBoundingBox\",value:function _updateBoundingBox(x,y,ctx,selected,hover){if(ctx!==undefined){this.resize(ctx,selected,hover)}this.left=x-this.width/2;this.top=y-this.height/2;this.boundingBox.left=this.left;this.boundingBox.top=this.top;this.boundingBox.bottom=this.top+this.height;this.boundingBox.right=this.left+this.width}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"getDimensionsFromLabel\",value:function getDimensionsFromLabel(ctx,selected,hover){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);var width=this.textSize.width;var height=this.textSize.height;var DEFAULT_SIZE=14;if(width===0){width=DEFAULT_SIZE;height=DEFAULT_SIZE}return{width:width,height:height}}}]);return NodeBase}();exports[\"default\"]=NodeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2)\n;var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ShapeBase=function(_NodeBase){(0,_inherits3[\"default\"])(ShapeBase,_NodeBase);function ShapeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,ShapeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(ShapeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(ShapeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(ShapeBase,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var values=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{size:this.options.size};if(this.needsRefresh(selected,hover)){this.labelModule.getTextSize(ctx,selected,hover);var size=2*values.size;this.width=size;this.height=size;this.radius=.5*this.width}}},{key:\"_drawShape\",value:function _drawShape(ctx,shape,sizeMultiplier,x,y,selected,hover,values){this.resize(ctx,selected,hover,values);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx[shape](x,y,values.size);this.performFill(ctx,values);if(this.options.label!==undefined){this.labelModule.calculateLabelSize(ctx,selected,hover,x,y,\"hanging\");var yLabel=y+.5*this.height+.5*this.labelModule.size.height;this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height)}}}]);return ShapeBase}(_NodeBase3[\"default\"]);exports[\"default\"]=ShapeBase},function(module,exports,__webpack_require__){var IObject=__webpack_require__(78);var defined=__webpack_require__(51);module.exports=function(it){return IObject(defined(it))}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var createDesc=__webpack_require__(39);module.exports=__webpack_require__(21)?function(object,key,value){return dP.f(object,key,createDesc(1,value))}:function(object,key,value){object[key]=value;return object}},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it){if(!isObject(it))throw TypeError(it+\" is not an object!\");return it}},function(module,exports){module.exports=function(exec){try{return!!exec()}catch(e){return true}}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(138),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";exports.__esModule=true;var _isIterable2=__webpack_require__(188);var _isIterable3=_interopRequireDefault(_isIterable2);var _getIterator2=__webpack_require__(77);var _getIterator3=_interopRequireDefault(_getIterator2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}exports.default=function(){function sliceIterator(arr,i){var _arr=[];var _n=true;var _d=false;var _e=undefined;try{for(var _i=(0,_getIterator3.default)(arr),_s;!(_n=(_s=_i.next()).done);_n=true){_arr.push(_s.value);if(i&&_arr.length===i)break}}catch(err){_d=true;_e=err}finally{try{if(!_n&&_i[\"return\"])_i[\"return\"]()}finally{if(_d)throw _e}}return _arr}return function(arr,i){if(Array.isArray(arr)){return arr}else if((0,_isIterable3.default)(Object(arr))){return sliceIterator(arr,i)}else{throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}}()},function(module,exports){module.exports={}},function(module,exports){module.exports=function(it){return typeof it===\"object\"?it!==null:typeof it===\"function\"}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var enumBugKeys=__webpack_require__(58);module.exports=Object.keys||function keys(O){return $keys(O,enumBugKeys)}},function(module,exports,__webpack_require__){\"use strict\";function Point3d(x,y,z){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0;this.z=z!==undefined?z:0}Point3d.subtract=function(a,b){var sub=new Point3d;sub.x=a.x-b.x;sub.y=a.y-b.y;sub.z=a.z-b.z;return sub};Point3d.add=function(a,b){var sum=new Point3d;sum.x=a.x+b.x;sum.y=a.y+b.y;sum.z=a.z+b.z;return sum};Point3d.avg=function(a,b){return new Point3d((a.x+b.x)/2,(a.y+b.y)/2,(a.z+b.z)/2)};Point3d.crossProduct=function(a,b){var crossproduct=new Point3d;crossproduct.x=a.y*b.z-a.z*b.y;crossproduct.y=a.z*b.x-a.x*b.z;crossproduct.z=a.x*b.y-a.y*b.x;return crossproduct};Point3d.prototype.length=function(){return Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z)};module.exports=Point3d},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(root,factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{root.keycharm=factory()}})(this,function(){function keycharm(options){var preventDefault=options&&options.preventDefault||false;var container=options&&options.container||window;var _exportFunctions={};var _bound={keydown:{},keyup:{}};var _keys={};var i;for(i=97;i<=122;i++){_keys[String.fromCharCode(i)]={code:65+(i-97),shift:false}}for(i=65;i<=90;i++){_keys[String.fromCharCode(i)]={code:i,shift:true}}for(i=0;i<=9;i++){_keys[\"\"+i]={code:48+i,shift:false}}for(i=1;i<=12;i++){_keys[\"F\"+i]={code:111+i,shift:false}}for(i=0;i<=9;i++){_keys[\"num\"+i]={code:96+i,shift:false}}_keys[\"num*\"]={code:106,shift:false};_keys[\"num+\"]={code:107,shift:false};_keys[\"num-\"]={code:109,shift:false};_keys[\"num/\"]={code:111,shift:false};_keys[\"num.\"]={code:110,shift:false};_keys[\"left\"]={code:37,shift:false};_keys[\"up\"]={code:38,shift:false};_keys[\"right\"]={code:39,shift:false};_keys[\"down\"]={code:40,shift:false};_keys[\"space\"]={code:32,shift:false};_keys[\"enter\"]={code:13,shift:false};_keys[\"shift\"]={code:16,shift:undefined};_keys[\"esc\"]={code:27,shift:false};_keys[\"backspace\"]={code:8,shift:false};_keys[\"tab\"]={code:9,shift:false};_keys[\"ctrl\"]={code:17,shift:false};_keys[\"alt\"]={code:18,shift:false};_keys[\"delete\"]={code:46,shift:false};_keys[\"pageup\"]={code:33,shift:false};_keys[\"pagedown\"]={code:34,shift:false};_keys[\"=\"]={code:187,shift:false};_keys[\"-\"]={code:189,shift:false};_keys[\"]\"]={code:221,shift:false};_keys[\"[\"]={code:219,shift:false};var down=function(event){handleEvent(event,\"keydown\")};var up=function(event){handleEvent(event,\"keyup\")};var handleEvent=function(event,type){if(_bound[type][event.keyCode]!==undefined){var bound=_bound[type][event.keyCode];for(var i=0;i<bound.length;i++){if(bound[i].shift===undefined){bound[i].fn(event)}else if(bound[i].shift==true&&event.shiftKey==true){bound[i].fn(event)}else if(bound[i].shift==false&&event.shiftKey==false){bound[i].fn(event)}}if(preventDefault==true){event.preventDefault()}}};_exportFunctions.bind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(_bound[type][_keys[key].code]===undefined){_bound[type][_keys[key].code]=[]}_bound[type][_keys[key].code].push({fn:callback,shift:_keys[key].shift})};_exportFunctions.bindAll=function(callback,type){if(type===undefined){type=\"keydown\"}for(var key in _keys){if(_keys.hasOwnProperty(key)){_exportFunctions.bind(key,callback,type)}}};_exportFunctions.getKey=function(event){for(var key in _keys){if(_keys.hasOwnProperty(key)){if(event.shiftKey==true&&_keys[key].shift==true&&event.keyCode==_keys[key].code){return key}else if(event.shiftKey==false&&_keys[key].shift==false&&event.keyCode==_keys[key].code){return key}else if(event.keyCode==_keys[key].code&&key==\"shift\"){return key}}}return\"unknown key, currently not supported\"};_exportFunctions.unbind=function(key,callback,type){if(type===undefined){type=\"keydown\"}if(_keys[key]===undefined){throw new Error(\"unsupported key: \"+key)}if(callback!==undefined){var newBindings=[];var bound=_bound[type][_keys[key].code];if(bound!==undefined){for(var i=0;i<bound.length;i++){if(!(bound[i].fn==callback&&bound[i].shift==_keys[key].shift)){newBindings.push(_bound[type][_keys[key].code][i])}}}_bound[type][_keys[key].code]=newBindings}else{_bound[type][_keys[key].code]=[]}};_exportFunctions.reset=function(){_bound={keydown:{},keyup:{}}};_exportFunctions.destroy=function(){_bound={keydown:{},keyup:{}};container.removeEventListener(\"keydown\",down,true);container.removeEventListener(\"keyup\",up,true)};container.addEventListener(\"keydown\",down,true);container.addEventListener(\"keyup\",up,true);return _exportFunctions}return keycharm})},function(module,exports,__webpack_require__){\"use strict\";exports.convertHiddenOptions=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.convertHiddenOptions(moment,body,[hiddenDates])}body.hiddenDates=[];if(hiddenDates){if(Array.isArray(hiddenDates)==true){for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat===undefined){var dateItem={};dateItem.start=moment(hiddenDates[i].start).toDate().valueOf();dateItem.end=moment(hiddenDates[i].end).toDate().valueOf();body.hiddenDates.push(dateItem)}}body.hiddenDates.sort(function(a,b){return a.start-b.start})}}};exports.updateHiddenDates=function(moment,body,hiddenDates){if(hiddenDates&&!Array.isArray(hiddenDates)){return exports.updateHiddenDates(moment,body,[hiddenDates])}if(hiddenDates&&body.domProps.centerContainer.width!==undefined){exports.convertHiddenOptions(moment,body,hiddenDates);var start=moment(body.range.start);var end=moment(body.range.end);var totalRange=body.range.end-body.range.start;var pixelTime=totalRange/body.domProps.centerContainer.width;for(var i=0;i<hiddenDates.length;i++){if(hiddenDates[i].repeat!==undefined){var startDate=moment(hiddenDates[i].start);var endDate=moment(hiddenDates[i].end);if(startDate._d==\"Invalid Date\"){throw new Error(\"Supplied start date is not valid: \"+hiddenDates[i].start)}if(endDate._d==\"Invalid Date\"){throw new Error(\"Supplied end date is not valid: \"+hiddenDates[i].end)}var duration=endDate-startDate;if(duration>=4*pixelTime){var offset=0;var runUntil=end.clone();switch(hiddenDates[i].repeat){case\"daily\":if(startDate.day()!=endDate.day()){offset=1}startDate.dayOfYear(start.dayOfYear());startDate.year(start.year());startDate.subtract(7,\"days\");endDate.dayOfYear(start.dayOfYear());endDate.year(start.year());endDate.subtract(7-offset,\"days\");runUntil.add(1,\"weeks\");break;case\"weekly\":var dayOffset=endDate.diff(startDate,\"days\");var day=startDate.day();startDate.date(start.date());startDate.month(start.month());startDate.year(start.year());endDate=startDate.clone();startDate.day(day);endDate.day(day);endDate.add(dayOffset,\"days\");startDate.subtract(1,\"weeks\");endDate.subtract(1,\"weeks\");runUntil.add(1,\"weeks\");break;case\"monthly\":if(startDate.month()!=endDate.month()){offset=1}startDate.month(start.month());startDate.year(start.year());startDate.subtract(1,\"months\");endDate.month(start.month());endDate.year(start.year());endDate.subtract(1,\"months\");endDate.add(offset,\"months\");runUntil.add(1,\"months\");break;case\"yearly\":if(startDate.year()!=endDate.year()){offset=1}startDate.year(start.year());startDate.subtract(1,\"years\");endDate.year(start.year());endDate.subtract(1,\"years\");endDate.add(offset,\"years\");runUntil.add(1,\"years\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}while(startDate<runUntil){body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()});switch(hiddenDates[i].repeat){case\"daily\":startDate.add(1,\"days\");endDate.add(1,\"days\");break;case\"weekly\":startDate.add(1,\"weeks\");endDate.add(1,\"weeks\");break;case\"monthly\":startDate.add(1,\"months\");endDate.add(1,\"months\");break;case\"yearly\":startDate.add(1,\"y\");endDate.add(1,\"y\");break;default:console.log(\"Wrong repeat format, allowed are: daily, weekly, monthly, yearly. Given:\",hiddenDates[i].repeat);return}}body.hiddenDates.push({start:startDate.valueOf(),end:endDate.valueOf()})}}}exports.removeDuplicates(body);var startHidden=exports.isHidden(body.range.start,body.hiddenDates);var endHidden=exports.isHidden(body.range.end,body.hiddenDates);var rangeStart=body.range.start;var rangeEnd=body.range.end;if(startHidden.hidden==true){rangeStart=body.range.startToFront==true?startHidden.startDate-1:startHidden.endDate+1}if(endHidden.hidden==true){rangeEnd=body.range.endToFront==true?endHidden.startDate-1:endHidden.endDate+1}if(startHidden.hidden==true||endHidden.hidden==true){body.range._applyRange(rangeStart,rangeEnd)}}};exports.removeDuplicates=function(body){var hiddenDates=body.hiddenDates;var safeDates=[];for(var i=0;i<hiddenDates.length;i++){for(var j=0;j<hiddenDates.length;j++){if(i!=j&&hiddenDates[j].remove!=true&&hiddenDates[i].remove!=true){if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[j].remove=true}else if(hiddenDates[j].start>=hiddenDates[i].start&&hiddenDates[j].start<=hiddenDates[i].end){hiddenDates[i].end=hiddenDates[j].end;hiddenDates[j].remove=true}else if(hiddenDates[j].end>=hiddenDates[i].start&&hiddenDates[j].end<=hiddenDates[i].end){hiddenDates[i].start=hiddenDates[j].start;hiddenDates[j].remove=true}}}}for(i=0;i<hiddenDates.length;i++){if(hiddenDates[i].remove!==true){safeDates.push(hiddenDates[i])}}body.hiddenDates=safeDates;body.hiddenDates.sort(function(a,b){return a.start-b.start})};exports.printDates=function(dates){for(var i=0;i<dates.length;i++){console.log(i,new Date(dates[i].start),new Date(dates[i].end),dates[i].start,dates[i].end,dates[i].remove)}};exports.stepOverHiddenDates=function(moment,timeStep,previousTime){var stepInHidden=false;var currentValue=timeStep.current.valueOf();for(var i=0;i<timeStep.hiddenDates.length;i++){var startDate=timeStep.hiddenDates[i].start;var endDate=timeStep.hiddenDates[i].end;if(currentValue>=startDate&&currentValue<endDate){stepInHidden=true;break}}if(stepInHidden==true&&currentValue<timeStep._end.valueOf()&&currentValue!=previousTime){var prevValue=moment(previousTime);var newValue=moment(endDate);if(prevValue.year()!=newValue.year()){timeStep.switchedYear=true}else if(prevValue.month()!=newValue.month()){timeStep.switchedMonth=true}else if(prevValue.dayOfYear()!=newValue.dayOfYear()){timeStep.switchedDay=true}timeStep.current=newValue}};exports.toScreen=function(Core,time,width){var conversion;if(Core.body.hiddenDates.length==0){conversion=Core.range.conversion(width);return(time.valueOf()-conversion.offset)*conversion.scale}else{var hidden=exports.isHidden(time,Core.body.hiddenDates);if(hidden.hidden==true){time=hidden.startDate}var duration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);if(time<Core.range.start){conversion=Core.range.conversion(width,duration);var hiddenBeforeStart=exports.getHiddenDurationBeforeStart(Core.body.hiddenDates,time,conversion.offset);time=Core.options.moment(time).toDate().valueOf();time=time+hiddenBeforeStart;return-(conversion.offset-time.valueOf())*conversion.scale}else if(time>Core.range.end){var rangeAfterEnd={start:Core.range.start,end:time};time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,rangeAfterEnd,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}else{time=exports.correctTimeForHidden(Core.options.moment,Core.body.hiddenDates,Core.range,time);conversion=Core.range.conversion(width,duration);return(time.valueOf()-conversion.offset)*conversion.scale}}};exports.toTime=function(Core,x,width){if(Core.body.hiddenDates.length==0){var conversion=Core.range.conversion(width);return new Date(x/conversion.scale+conversion.offset)}else{var hiddenDuration=exports.getHiddenDurationBetween(Core.body.hiddenDates,Core.range.start,Core.range.end);var totalDuration=Core.range.end-Core.range.start-hiddenDuration;var partialDuration=totalDuration*x/width;var accumulatedHiddenDuration=exports.getAccumulatedHiddenDuration(Core.body.hiddenDates,Core.range,partialDuration);return new Date(accumulatedHiddenDuration+partialDuration+Core.range.start)}};exports.getHiddenDurationBetween=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<end){duration+=endDate-startDate}}return duration};exports.getHiddenDurationBeforeStart=function(hiddenDates,start,end){var duration=0;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=start&&endDate<=end){duration+=endDate-startDate}}return duration};exports.correctTimeForHidden=function(moment,hiddenDates,range,time){time=moment(time).toDate().valueOf();time-=exports.getHiddenDurationBefore(moment,hiddenDates,range,time);return time};exports.getHiddenDurationBefore=function(moment,hiddenDates,range,time){var timeOffset=0;time=moment(time).toDate().valueOf();for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){if(time>=endDate){timeOffset+=endDate-startDate}}}return timeOffset};exports.getAccumulatedHiddenDuration=function(hiddenDates,range,requiredDuration){var hiddenDuration=0;var duration=0;var previousPoint=range.start;for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(startDate>=range.start&&endDate<range.end){duration+=startDate-previousPoint;previousPoint=endDate;if(duration>=requiredDuration){break}else{hiddenDuration+=endDate-startDate}}}return hiddenDuration};exports.snapAwayFromHidden=function(hiddenDates,time,direction,correctionEnabled){var isHidden=exports.isHidden(time,hiddenDates);if(isHidden.hidden==true){if(direction<0){if(correctionEnabled==true){return isHidden.startDate-(isHidden.endDate-time)-1}else{return isHidden.startDate-1}}else{if(correctionEnabled==true){return isHidden.endDate+(time-isHidden.startDate)+1}else{return isHidden.endDate+1}}}else{return time}};exports.isHidden=function(time,hiddenDates){for(var i=0;i<hiddenDates.length;i++){var startDate=hiddenDates[i].start;var endDate=hiddenDates[i].end;if(time>=startDate&&time<endDate){return{hidden:true,startDate:startDate,endDate:endDate}}}return{hidden:false,startDate:startDate,endDate:endDate}}},function(module,exports,__webpack_require__){\"use strict\";exports.onTouch=function(hammer,callback){callback.inputHandler=function(event){if(event.isFirst){callback(event)}};hammer.on(\"hammer.input\",callback.inputHandler)};exports.onRelease=function(hammer,callback){callback.inputHandler=function(event){if(event.isFinal){callback(event)}};return hammer.on(\"hammer.input\",callback.inputHandler)};exports.offTouch=function(hammer,callback){hammer.off(\"hammer.input\",callback.inputHandler)};exports.offRelease=exports.offTouch;exports.disablePreventDefaultVertically=function(pinchRecognizer){var TOUCH_ACTION_PAN_Y=\"pan-y\";pinchRecognizer.getTouchAction=function(){return[TOUCH_ACTION_PAN_Y]};return pinchRecognizer}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var moment=__webpack_require__(9);function Item(data,conversion,options){this.id=null;this.parent=null;this.data=data;this.dom=null;this.conversion=conversion||{};this.options=options||{};this.selected=false;this.displayed=false;this.groupShowing=true;this.dirty=true;this.top=null;this.right=null;this.left=null;this.width=null;this.height=null;this.editable=null;this._updateEditStatus()}Item.prototype.stack=true;Item.prototype.select=function(){this.selected=true;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.unselect=function(){this.selected=false;this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setData=function(data){var groupChanged=data.group!=undefined&&this.data.group!=data.group;if(groupChanged&&this.parent!=null){this.parent.itemSet._moveToGroup(this,data.group)}if(this.parent){this.parent.stackDirty=true}var subGroupChanged=data.subgroup!=undefined&&this.data.subgroup!=data.subgroup;if(subGroupChanged&&this.parent!=null){this.parent.changeSubgroup(this,this.data.subgroup,data.subgroup)}this.data=data;this._updateEditStatus();this.dirty=true;if(this.displayed)this.redraw()};Item.prototype.setParent=function(parent){if(this.displayed){this.hide();this.parent=parent;if(this.parent){this.show()}}else{this.parent=parent}};Item.prototype.isVisible=function(range){return false};Item.prototype.show=function(){return false};Item.prototype.hide=function(){return false};Item.prototype.redraw=function(){};Item.prototype.repositionX=function(){};Item.prototype.repositionY=function(){};Item.prototype._repaintDragCenter=function(){if(this.selected&&this.options.editable.updateTime&&!this.dom.dragCenter){var me=this;var dragCenter=document.createElement(\"div\");dragCenter.className=\"vis-drag-center\";dragCenter.dragCenterItem=this;var hammer=new Hammer(dragCenter);hammer.on(\"tap\",function(event){me.parent.itemSet.body.emitter.emit(\"click\",{event:event,item:me.id})});hammer.on(\"doubletap\",function(event){event.stopPropagation();me.parent.itemSet._onUpdateItem(me);me.parent.itemSet.body.emitter.emit(\"doubleClick\",{event:event,item:me.id})});if(this.dom.box){if(this.dom.dragLeft){this.dom.box.insertBefore(dragCenter,this.dom.dragLeft)}else{this.dom.box.appendChild(dragCenter)}}else if(this.dom.point){this.dom.point.appendChild(dragCenter)}this.dom.dragCenter=dragCenter}else if(!this.selected&&this.dom.dragCenter){if(this.dom.dragCenter.parentNode){this.dom.dragCenter.parentNode.removeChild(this.dom.dragCenter)}this.dom.dragCenter=null}};Item.prototype._repaintDeleteButton=function(anchor){var editable=(this.options.editable.overrideItems||this.editable==null)&&this.options.editable.remove||!this.options.editable.overrideItems&&this.editable!=null&&this.editable.remove;if(this.selected&&editable&&!this.dom.deleteButton){var me=this;var deleteButton=document.createElement(\"div\");if(this.options.rtl){deleteButton.className=\"vis-delete-rtl\"}else{deleteButton.className=\"vis-delete\"}deleteButton.title=\"Delete this item\";new Hammer(deleteButton).on(\"tap\",function(event){event.stopPropagation();me.parent.removeFromDataSet(me)});anchor.appendChild(deleteButton);this.dom.deleteButton=deleteButton}else if(!this.selected&&this.dom.deleteButton){if(this.dom.deleteButton.parentNode){this.dom.deleteButton.parentNode.removeChild(this.dom.deleteButton)}this.dom.deleteButton=null}};Item.prototype._repaintOnItemUpdateTimeTooltip=function(anchor){if(!this.options.tooltipOnItemUpdateTime)return;var editable=(this.options.editable.updateTime||this.data.editable===true)&&this.data.editable!==false;if(this.selected&&editable&&!this.dom.onItemUpdateTimeTooltip){var onItemUpdateTimeTooltip=document.createElement(\"div\");onItemUpdateTimeTooltip.className=\"vis-onUpdateTime-tooltip\";anchor.appendChild(onItemUpdateTimeTooltip);this.dom.onItemUpdateTimeTooltip=onItemUpdateTimeTooltip}else if(!this.selected&&this.dom.onItemUpdateTimeTooltip){if(this.dom.onItemUpdateTimeTooltip.parentNode){this.dom.onItemUpdateTimeTooltip.parentNode.removeChild(this.dom.onItemUpdateTimeTooltip)}this.dom.onItemUpdateTimeTooltip=null}if(this.dom.onItemUpdateTimeTooltip){this.dom.onItemUpdateTimeTooltip.style.visibility=this.parent.itemSet.touchParams.itemIsDragging?\"visible\":\"hidden\";if(this.options.rtl){this.dom.onItemUpdateTimeTooltip.style.right=this.dom.content.style.right}else{this.dom.onItemUpdateTimeTooltip.style.left=this.dom.content.style.left}var tooltipOffset=50;var scrollTop=this.parent.itemSet.body.domProps.scrollTop;var itemDistanceFromTop;if(this.options.orientation.item==\"top\"){itemDistanceFromTop=this.top}else{itemDistanceFromTop=this.parent.height-this.top-this.height}var isCloseToTop=itemDistanceFromTop+this.parent.top-tooltipOffset<-scrollTop;if(isCloseToTop){this.dom.onItemUpdateTimeTooltip.style.bottom=\"\";this.dom.onItemUpdateTimeTooltip.style.top=this.height+2+\"px\"}else{this.dom.onItemUpdateTimeTooltip.style.top=\"\";this.dom.onItemUpdateTimeTooltip.style.bottom=this.height+2+\"px\"}var content;var templateFunction;if(this.options.tooltipOnItemUpdateTime&&this.options.tooltipOnItemUpdateTime.template){templateFunction=this.options.tooltipOnItemUpdateTime.template.bind(this);content=templateFunction(this.data)}else{content=\"start: \"+moment(this.data.start).format(\"MM/DD/YYYY hh:mm\");if(this.data.end){content+=\"<br> end: \"+moment(this.data.end).format(\"MM/DD/YYYY hh:mm\")}}this.dom.onItemUpdateTimeTooltip.innerHTML=content}};Item.prototype._updateContents=function(element){var content;var changed;var templateFunction;var itemVisibleFrameContent;var visibleFrameTemplateFunction;var itemData=this.parent.itemSet.itemsData.get(this.id);var frameElement=this.dom.box||this.dom.point;var itemVisibleFrameContentElement=frameElement.getElementsByClassName(\"vis-item-visible-frame\")[0];if(this.options.visibleFrameTemplate){visibleFrameTemplateFunction=this.options.visibleFrameTemplate.bind(this);itemVisibleFrameContent=visibleFrameTemplateFunction(itemData,frameElement)}else{itemVisibleFrameContent=\"\"}if(itemVisibleFrameContentElement){if(itemVisibleFrameContent instanceof Object&&!(itemVisibleFrameContent instanceof Element)){visibleFrameTemplateFunction(itemData,itemVisibleFrameContentElement)}else{changed=this._contentToString(this.itemVisibleFrameContent)!==this._contentToString(itemVisibleFrameContent);if(changed){if(itemVisibleFrameContent instanceof Element){itemVisibleFrameContentElement.innerHTML=\"\";itemVisibleFrameContentElement.appendChild(itemVisibleFrameContent)}else if(itemVisibleFrameContent!=undefined){itemVisibleFrameContentElement.innerHTML=itemVisibleFrameContent}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.itemVisibleFrameContent=itemVisibleFrameContent}}}if(this.options.template){templateFunction=this.options.template.bind(this);content=templateFunction(itemData,element,this.data)}else{content=this.data.content}if(content instanceof Object&&!(content instanceof Element)){templateFunction(itemData,element)}else{changed=this._contentToString(this.content)!==this._contentToString(content);if(changed){if(content instanceof Element){element.innerHTML=\"\";element.appendChild(content)}else if(content!=undefined){element.innerHTML=content}else{if(!(this.data.type==\"background\"&&this.data.content===undefined)){throw new Error('Property \"content\" missing in item '+this.id)}}this.content=content}}};Item.prototype._updateDataAttributes=function(element){if(this.options.dataAttributes&&this.options.dataAttributes.length>0){var attributes=[];if(Array.isArray(this.options.dataAttributes)){attributes=this.options.dataAttributes}else if(this.options.dataAttributes==\"all\"){attributes=(0,_keys2[\"default\"])(this.data)}else{return}for(var i=0;i<attributes.length;i++){var name=attributes[i];var value=this.data[name];if(value!=null){element.setAttribute(\"data-\"+name,value)}else{element.removeAttribute(\"data-\"+name)}}}};Item.prototype._updateStyle=function(element){if(this.style){util.removeCssText(element,this.style);this.style=null}if(this.data.style){util.addCssText(element,this.data.style);this.style=this.data.style}};Item.prototype._contentToString=function(content){if(typeof content===\"string\")return content;if(content&&\"outerHTML\"in content)return content.outerHTML;return content};Item.prototype._updateEditStatus=function(){if(this.options){if(typeof this.options.editable===\"boolean\"){this.editable={updateTime:this.options.editable,updateGroup:this.options.editable,remove:this.options.editable}}else if((0,_typeof3[\"default\"])(this.options.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.options.editable)}}if(!this.options||!this.options.editable||this.options.editable.overrideItems!==true){if(this.data){if(typeof this.data.editable===\"boolean\"){this.editable={updateTime:this.data.editable,updateGroup:this.data.editable,remove:this.data.editable}}else if((0,_typeof3[\"default\"])(this.data.editable)===\"object\"){this.editable={};util.selectiveExtend([\"updateTime\",\"updateGroup\",\"remove\"],this.editable,this.data.editable)}}}};Item.prototype.getWidthLeft=function(){return 0};Item.prototype.getWidthRight=function(){return 0};Item.prototype.getTitle=function(){return this.data.title};module.exports=Item},function(module,exports){module.exports=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}}},function(module,exports){var id=0;var px=Math.random();module.exports=function(key){return\"Symbol(\".concat(key===undefined?\"\":key,\")_\",(++id+px).toString(36))}},function(module,exports,__webpack_require__){var defined=__webpack_require__(51);module.exports=function(it){return Object(defined(it))}},function(module,exports){exports.f={}.propertyIsEnumerable},function(module,exports,__webpack_require__){\"use strict\";function Queue(options){this.delay=null;this.max=Infinity;this._queue=[];this._timeout=null;this._extended=null;this.setOptions(options)}Queue.prototype.setOptions=function(options){if(options&&typeof options.delay!==\"undefined\"){this.delay=options.delay}if(options&&typeof options.max!==\"undefined\"){this.max=options.max}this._flushIfNeeded()};Queue.extend=function(object,options){var queue=new Queue(options);if(object.flush!==undefined){throw new Error(\"Target object already has a property flush\")}object.flush=function(){queue.flush()};var methods=[{name:\"flush\",original:undefined}];if(options&&options.replace){for(var i=0;i<options.replace.length;i++){var name=options.replace[i];methods.push({name:name,original:object[name]});queue.replace(object,name)}}queue._extended={object:object,methods:methods};return queue};Queue.prototype.destroy=function(){this.flush();if(this._extended){var object=this._extended.object;var methods=this._extended.methods;for(var i=0;i<methods.length;i++){var method=methods[i];if(method.original){object[method.name]=method.original}else{delete object[method.name]}}this._extended=null}};Queue.prototype.replace=function(object,method){var me=this;var original=object[method];if(!original){throw new Error(\"Method \"+method+\" undefined\")}object[method]=function(){var args=[];for(var i=0;i<arguments.length;i++){args[i]=arguments[i]}me.queue({args:args,fn:original,context:this})}};Queue.prototype.queue=function(entry){if(typeof entry===\"function\"){this._queue.push({fn:entry})}else{this._queue.push(entry)}this._flushIfNeeded()};Queue.prototype._flushIfNeeded=function(){\nif(this._queue.length>this.max){this.flush()}clearTimeout(this._timeout);if(this.queue.length>0&&typeof this.delay===\"number\"){var me=this;this._timeout=setTimeout(function(){me.flush()},this.delay)}};Queue.prototype.flush=function(){while(this._queue.length>0){var entry=this._queue.shift();entry.fn.apply(entry.context||entry.fn,entry.args||[])}};module.exports=Queue},function(module,exports){module.exports=Emitter;function Emitter(obj){if(obj)return mixin(obj)}function mixin(obj){for(var key in Emitter.prototype){obj[key]=Emitter.prototype[key]}return obj}Emitter.prototype.on=Emitter.prototype.addEventListener=function(event,fn){this._callbacks=this._callbacks||{};(this._callbacks[event]=this._callbacks[event]||[]).push(fn);return this};Emitter.prototype.once=function(event,fn){var self=this;this._callbacks=this._callbacks||{};function on(){self.off(event,on);fn.apply(this,arguments)}on.fn=fn;this.on(event,on);return this};Emitter.prototype.off=Emitter.prototype.removeListener=Emitter.prototype.removeAllListeners=Emitter.prototype.removeEventListener=function(event,fn){this._callbacks=this._callbacks||{};if(0==arguments.length){this._callbacks={};return this}var callbacks=this._callbacks[event];if(!callbacks)return this;if(1==arguments.length){delete this._callbacks[event];return this}var cb;for(var i=0;i<callbacks.length;i++){cb=callbacks[i];if(cb===fn||cb.fn===fn){callbacks.splice(i,1);break}}return this};Emitter.prototype.emit=function(event){this._callbacks=this._callbacks||{};var args=[].slice.call(arguments,1),callbacks=this._callbacks[event];if(callbacks){callbacks=callbacks.slice(0);for(var i=0,len=callbacks.length;i<len;++i){callbacks[i].apply(this,args)}}return this};Emitter.prototype.listeners=function(event){this._callbacks=this._callbacks||{};return this._callbacks[event]||[]};Emitter.prototype.hasListeners=function(event){return!!this.listeners(event).length}},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Component=__webpack_require__(16);var TimeStep=__webpack_require__(66);var DateUtil=__webpack_require__(36);var moment=__webpack_require__(9);function TimeAxis(body,options){this.dom={foreground:null,lines:[],majorTexts:[],minorTexts:[],redundant:{lines:[],majorTexts:[],minorTexts:[]}};this.props={range:{start:0,end:0,minimumStep:0},lineTop:0};this.defaultOptions={orientation:{axis:\"bottom\"},showMinorLabels:true,showMajorLabels:true,maxMinorChars:7,format:TimeStep.FORMAT,moment:moment,timeAxis:null};this.options=util.extend({},this.defaultOptions);this.body=body;this._create();this.setOptions(options)}TimeAxis.prototype=new Component;TimeAxis.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"showMinorLabels\",\"showMajorLabels\",\"maxMinorChars\",\"hiddenDates\",\"timeAxis\",\"moment\",\"rtl\"],this.options,options);util.selectiveDeepExtend([\"format\"],this.options,options);if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.axis=options.orientation}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}if(\"locale\"in options){if(typeof moment.locale===\"function\"){moment.locale(options.locale)}else{moment.lang(options.locale)}}}};TimeAxis.prototype._create=function(){this.dom.foreground=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.foreground.className=\"vis-time-axis vis-foreground\";this.dom.background.className=\"vis-time-axis vis-background\"};TimeAxis.prototype.destroy=function(){if(this.dom.foreground.parentNode){this.dom.foreground.parentNode.removeChild(this.dom.foreground)}if(this.dom.background.parentNode){this.dom.background.parentNode.removeChild(this.dom.background)}this.body=null};TimeAxis.prototype.redraw=function(){var props=this.props;var foreground=this.dom.foreground;var background=this.dom.background;var parent=this.options.orientation.axis==\"top\"?this.body.dom.top:this.body.dom.bottom;var parentChanged=foreground.parentNode!==parent;this._calculateCharSize();var showMinorLabels=this.options.showMinorLabels&&this.options.orientation.axis!==\"none\";var showMajorLabels=this.options.showMajorLabels&&this.options.orientation.axis!==\"none\";props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.height=props.minorLabelHeight+props.majorLabelHeight;props.width=foreground.offsetWidth;props.minorLineHeight=this.body.domProps.root.height-props.majorLabelHeight-(this.options.orientation.axis==\"top\"?this.body.domProps.bottom.height:this.body.domProps.top.height);props.minorLineWidth=1;props.majorLineHeight=props.minorLineHeight+props.majorLabelHeight;props.majorLineWidth=1;var foregroundNextSibling=foreground.nextSibling;var backgroundNextSibling=background.nextSibling;foreground.parentNode&&foreground.parentNode.removeChild(foreground);background.parentNode&&background.parentNode.removeChild(background);foreground.style.height=this.props.height+\"px\";this._repaintLabels();if(foregroundNextSibling){parent.insertBefore(foreground,foregroundNextSibling)}else{parent.appendChild(foreground)}if(backgroundNextSibling){this.body.dom.backgroundVertical.insertBefore(background,backgroundNextSibling)}else{this.body.dom.backgroundVertical.appendChild(background)}return this._isResized()||parentChanged};TimeAxis.prototype._repaintLabels=function(){var orientation=this.options.orientation.axis;var start=util.convert(this.body.range.start,\"Number\");var end=util.convert(this.body.range.end,\"Number\");var timeLabelsize=this.body.util.toTime((this.props.minorCharWidth||10)*this.options.maxMinorChars).valueOf();var minimumStep=timeLabelsize-DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this.body.range,timeLabelsize);minimumStep-=this.body.util.toTime(0).valueOf();var step=new TimeStep(new Date(start),new Date(end),minimumStep,this.body.hiddenDates,this.options);step.setMoment(this.options.moment);if(this.options.format){step.setFormat(this.options.format)}if(this.options.timeAxis){step.setScale(this.options.timeAxis)}this.step=step;var dom=this.dom;dom.redundant.lines=dom.lines;dom.redundant.majorTexts=dom.majorTexts;dom.redundant.minorTexts=dom.minorTexts;dom.lines=[];dom.majorTexts=[];dom.minorTexts=[];var current;var next;var x;var xNext;var isMajor;var nextIsMajor;var showMinorGrid;var width=0,prevWidth;var line;var labelMinor;var xFirstMajorLabel=undefined;var count=0;var MAX=1e3;var className;step.start();next=step.getCurrent();xNext=this.body.util.toScreen(next);while(step.hasNext()&&count<MAX){count++;isMajor=step.isMajor();className=step.getClassName();labelMinor=step.getLabelMinor();current=next;x=xNext;step.next();next=step.getCurrent();nextIsMajor=step.isMajor();xNext=this.body.util.toScreen(next);prevWidth=width;width=xNext-x;switch(step.scale){case\"week\":showMinorGrid=true;break;default:showMinorGrid=width>=prevWidth*.4;break}if(this.options.showMinorLabels&&showMinorGrid){var label=this._repaintMinorText(x,labelMinor,orientation,className);label.style.width=width+\"px\"}if(isMajor&&this.options.showMajorLabels){if(x>0){if(xFirstMajorLabel==undefined){xFirstMajorLabel=x}label=this._repaintMajorText(x,step.getLabelMajor(),orientation,className)}line=this._repaintMajorLine(x,width,orientation,className)}else{if(showMinorGrid){line=this._repaintMinorLine(x,width,orientation,className)}else{if(line){line.style.width=parseInt(line.style.width)+width+\"px\"}}}}if(count===MAX&&!warnedForOverflow){console.warn(\"Something is wrong with the Timeline scale. Limited drawing of grid lines to \"+MAX+\" lines.\");warnedForOverflow=true}if(this.options.showMajorLabels){var leftTime=this.body.util.toTime(0),leftText=step.getLabelMajor(leftTime),widthText=leftText.length*(this.props.majorCharWidth||10)+10;if(xFirstMajorLabel==undefined||widthText<xFirstMajorLabel){this._repaintMajorText(0,leftText,orientation,className)}}util.forEach(this.dom.redundant,function(arr){while(arr.length){var elem=arr.pop();if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}})};TimeAxis.prototype._repaintMinorText=function(x,text,orientation,className){var label=this.dom.redundant.minorTexts.shift();if(!label){var content=document.createTextNode(\"\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}this.dom.minorTexts.push(label);label.innerHTML=text;label.style.top=orientation==\"top\"?this.props.majorLabelHeight+\"px\":\"0\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}label.className=\"vis-text vis-minor \"+className;return label};TimeAxis.prototype._repaintMajorText=function(x,text,orientation,className){var label=this.dom.redundant.majorTexts.shift();if(!label){var content=document.createElement(\"div\");label=document.createElement(\"div\");label.appendChild(content);this.dom.foreground.appendChild(label)}label.childNodes[0].innerHTML=text;label.className=\"vis-text vis-major \"+className;label.style.top=orientation==\"top\"?\"0\":this.props.minorLabelHeight+\"px\";if(this.options.rtl){label.style.left=\"\";label.style.right=x+\"px\"}else{label.style.left=x+\"px\"}this.dom.majorTexts.push(label);return label};TimeAxis.prototype._repaintMinorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=props.majorLabelHeight+\"px\"}else{line.style.top=this.body.domProps.top.height+\"px\"}line.style.height=props.minorLineHeight+\"px\";if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-minor \"+className}else{line.style.left=x-props.minorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-minor \"+className}line.style.width=width+\"px\";return line};TimeAxis.prototype._repaintMajorLine=function(x,width,orientation,className){var line=this.dom.redundant.lines.shift();if(!line){line=document.createElement(\"div\");this.dom.background.appendChild(line)}this.dom.lines.push(line);var props=this.props;if(orientation==\"top\"){line.style.top=\"0\"}else{line.style.top=this.body.domProps.top.height+\"px\"}if(this.options.rtl){line.style.left=\"\";line.style.right=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical-rtl vis-major \"+className}else{line.style.left=x-props.majorLineWidth/2+\"px\";line.className=\"vis-grid vis-vertical vis-major \"+className}line.style.height=props.majorLineHeight+\"px\";line.style.width=width+\"px\";return line};TimeAxis.prototype._calculateCharSize=function(){if(!this.dom.measureCharMinor){this.dom.measureCharMinor=document.createElement(\"DIV\");this.dom.measureCharMinor.className=\"vis-text vis-minor vis-measure\";this.dom.measureCharMinor.style.position=\"absolute\";this.dom.measureCharMinor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMinor)}this.props.minorCharHeight=this.dom.measureCharMinor.clientHeight;this.props.minorCharWidth=this.dom.measureCharMinor.clientWidth;if(!this.dom.measureCharMajor){this.dom.measureCharMajor=document.createElement(\"DIV\");this.dom.measureCharMajor.className=\"vis-text vis-major vis-measure\";this.dom.measureCharMajor.style.position=\"absolute\";this.dom.measureCharMajor.appendChild(document.createTextNode(\"0\"));this.dom.foreground.appendChild(this.dom.measureCharMajor)}this.props.majorCharHeight=this.dom.measureCharMajor.clientHeight;this.props.majorCharWidth=this.dom.measureCharMajor.clientWidth};var warnedForOverflow=false;module.exports=TimeAxis},function(module,exports,__webpack_require__){\"use strict\";var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CustomTime(body,options){this.body=body;this.defaultOptions={moment:moment,locales:locales,locale:\"en\",id:undefined,title:undefined};this.options=util.extend({},this.defaultOptions);if(options&&options.time){this.customTime=options.time}else{this.customTime=new Date}this.eventParams={};this.setOptions(options);this._create()}CustomTime.prototype=new Component;CustomTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"moment\",\"locale\",\"locales\",\"id\"],this.options,options)}};CustomTime.prototype._create=function(){var bar=document.createElement(\"div\");bar[\"custom-time\"]=this;bar.className=\"vis-custom-time \"+(this.options.id||\"\");bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar;var drag=document.createElement(\"div\");drag.style.position=\"relative\";drag.style.top=\"0px\";drag.style.left=\"-10px\";drag.style.height=\"100%\";drag.style.width=\"20px\";function onMouseWheel(e){this.body.range._onMouseWheel(e)}if(drag.addEventListener){drag.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);drag.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{drag.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}bar.appendChild(drag);this.hammer=new Hammer(drag);this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL})};CustomTime.prototype.destroy=function(){this.hide();this.hammer.destroy();this.hammer=null;this.body=null};CustomTime.prototype.redraw=function(){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar)}var x=this.body.util.toScreen(this.customTime);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=this.options.title;if(title===undefined){title=locale.time+\": \"+this.options.moment(this.customTime).format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1)}else if(typeof title===\"function\"){title=title.call(this.customTime)}this.bar.style.left=x+\"px\";this.bar.title=title;return false};CustomTime.prototype.hide=function(){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}};CustomTime.prototype.setCustomTime=function(time){this.customTime=util.convert(time,\"Date\");this.redraw()};CustomTime.prototype.getCustomTime=function(){return new Date(this.customTime.valueOf())};CustomTime.prototype.setCustomTitle=function(title){this.options.title=title};CustomTime.prototype._onDragStart=function(event){this.eventParams.dragging=true;this.eventParams.customTime=this.customTime;event.stopPropagation()};CustomTime.prototype._onDrag=function(event){if(!this.eventParams.dragging)return;var x=this.body.util.toScreen(this.eventParams.customTime)+event.deltaX;var time=this.body.util.toTime(x);this.setCustomTime(time);this.body.emitter.emit(\"timechange\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.prototype._onDragEnd=function(event){if(!this.eventParams.dragging)return;this.body.emitter.emit(\"timechanged\",{id:this.options.id,time:new Date(this.customTime.valueOf()),event:event});event.stopPropagation()};CustomTime.customTimeFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"custom-time\")){return target[\"custom-time\"]}target=target.parentNode}return null};module.exports=CustomTime},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var Box=__webpack_require__(193)[\"default\"];var Circle=__webpack_require__(200)[\"default\"];var CircularImage=__webpack_require__(201)[\"default\"];var Database=__webpack_require__(202)[\"default\"];var Diamond=__webpack_require__(203)[\"default\"];var Dot=__webpack_require__(204)[\"default\"];var Ellipse=__webpack_require__(205)[\"default\"];var Icon=__webpack_require__(206)[\"default\"];var Image=__webpack_require__(207)[\"default\"];var Square=__webpack_require__(208)[\"default\"];var Hexagon=__webpack_require__(209)[\"default\"];var Star=__webpack_require__(210)[\"default\"];var Text=__webpack_require__(211)[\"default\"];var Triangle=__webpack_require__(212)[\"default\"];var TriangleDown=__webpack_require__(213)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var Node=function(){function Node(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Node);this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.edges=[];this.id=undefined;this.imagelist=imagelist;this.grouplist=grouplist;this.x=undefined;this.y=undefined;this.baseSize=this.options.size;this.baseFontSize=this.options.font.size;this.predefinedPosition=false;this.selected=false;this.hover=false;this.labelModule=new Label(this.body,this.options,false);this.setOptions(options)}(0,_createClass3[\"default\"])(Node,[{key:\"attachEdge\",value:function attachEdge(edge){if(this.edges.indexOf(edge)===-1){this.edges.push(edge)}}},{key:\"detachEdge\",value:function detachEdge(edge){var index=this.edges.indexOf(edge);if(index!=-1){this.edges.splice(index,1)}}},{key:\"setOptions\",value:function setOptions(options){var currentShape=this.options.shape;if(!options){return}if(options.id!==undefined){this.id=options.id}if(this.id===undefined){throw new Error(\"Node must have an id\")}Node.checkMass(options,this.id);if(options.x!==undefined){if(options.x===null){this.x=undefined;this.predefinedPosition=false}else{this.x=parseInt(options.x);this.predefinedPosition=true}}if(options.y!==undefined){if(options.y===null){this.y=undefined;this.predefinedPosition=false}else{this.y=parseInt(options.y);this.predefinedPosition=true}}if(options.size!==undefined){this.baseSize=options.size}if(options.value!==undefined){options.value=parseFloat(options.value)}Node.parseOptions(this.options,options,true,this.globalOptions,this.grouplist);var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"node\",pile);this._load_images();this.updateLabelModule(options);this.updateShape(currentShape);return options.hidden!==undefined||options.physics!==undefined}},{key:\"_load_images\",value:function _load_images(){if(this.options.shape!==\"circularImage\"&&this.options.shape!==\"image\"){return}if(this.options.image===undefined){throw new Error(\"Option image must be defined for node type '\"+this.options.shape+\"'\")}if(this.imagelist===undefined){throw new Error(\"Internal Error: No images provided\")}if(typeof this.options.image===\"string\"){this.imageObj=this.imagelist.load(this.options.image,this.options.brokenImage,this.id)}else{if(this.options.image.unselected===undefined){throw new Error(\"No unselected image provided\")}this.imageObj=this.imagelist.load(this.options.image.unselected,this.options.brokenImage,this.id);if(this.options.image.selected!==undefined){this.imageObjAlt=this.imagelist.load(this.options.image.selected,this.options.brokenImage,this.id)}else{this.imageObjAlt=undefined}}}},{key:\"getFormattingValues\",value:function getFormattingValues(){var values={color:this.options.color.background,borderWidth:this.options.borderWidth,borderColor:this.options.color.border,size:this.options.size,borderDashes:this.options.shapeProperties.borderDashes,borderRadius:this.options.shapeProperties.borderRadius,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){values.borderWidth*=2;values.color=this.options.color.highlight.background;values.borderColor=this.options.color.highlight.border;values.shadow=this.options.shadow.enabled}else if(this.hover){values.color=this.options.color.hover.background;values.borderColor=this.options.color.hover.border;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){if(this.options.label===undefined||this.options.label===null){this.options.label=\"\"}Node.updateGroupOptions(this.options,options,this.grouplist);var currentGroup=this.grouplist.get(this.options.group,false);var pile=[options,this.options,currentGroup,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateShape\",value:function updateShape(currentShape){if(currentShape===this.options.shape&&this.shape){this.shape.setOptions(this.options,this.imageObj,this.imageObjAlt)}else{switch(this.options.shape){case\"box\":this.shape=new Box(this.options,this.body,this.labelModule);break;case\"circle\":this.shape=new Circle(this.options,this.body,this.labelModule);break;case\"circularImage\":this.shape=new CircularImage(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"database\":this.shape=new Database(this.options,this.body,this.labelModule);break;case\"diamond\":this.shape=new Diamond(this.options,this.body,this.labelModule);break;case\"dot\":this.shape=new Dot(this.options,this.body,this.labelModule);break;case\"ellipse\":this.shape=new Ellipse(this.options,this.body,this.labelModule);break;case\"icon\":this.shape=new Icon(this.options,this.body,this.labelModule);break;case\"image\":this.shape=new Image(this.options,this.body,this.labelModule,this.imageObj,this.imageObjAlt);break;case\"square\":this.shape=new Square(this.options,this.body,this.labelModule);break;case\"hexagon\":this.shape=new Hexagon(this.options,this.body,this.labelModule);break;case\"star\":this.shape=new Star(this.options,this.body,this.labelModule);break;case\"text\":this.shape=new Text(this.options,this.body,this.labelModule);break;case\"triangle\":this.shape=new Triangle(this.options,this.body,this.labelModule);break;case\"triangleDown\":this.shape=new TriangleDown(this.options,this.body,this.labelModule);break;default:this.shape=new Ellipse(this.options,this.body,this.labelModule);break}}this.needsRefresh()}},{key:\"select\",value:function select(){this.selected=true;this.needsRefresh()}},{key:\"unselect\",value:function unselect(){this.selected=false;this.needsRefresh()}},{key:\"needsRefresh\",value:function needsRefresh(){this.shape.refreshNeeded=true}},{key:\"getTitle\",value:function getTitle(){return this.options.title}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this.shape.distanceToBorder(ctx,angle)}},{key:\"isFixed\",value:function isFixed(){return this.options.fixed.x&&this.options.fixed.y}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"getLabelSize\",value:function getLabelSize(){return this.labelModule.size()}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var sizeDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.size=this.options.scaling.min+scale*sizeDiff}else{this.options.size=this.baseSize;this.options.font.size=this.baseFontSize}this.updateLabelModule()}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();this.shape.draw(ctx,this.x,this.y,this.selected,this.hover,values)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(ctx){this.shape.updateBoundingBox(this.x,this.y,ctx)}},{key:\"resize\",value:function resize(ctx){var values=this.getFormattingValues();this.shape.resize(ctx,this.selected,this.hover,values)}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){if(ComponentUtil.pointInRect(this.labelModule.getSize(),point)){ret.push({nodeId:this.id,labelId:0})}}if(ComponentUtil.pointInRect(this.shape.boundingBox,point)){ret.push({nodeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){return this.shape.left<obj.right&&this.shape.left+this.shape.width>obj.left&&this.shape.top<obj.bottom&&this.shape.top+this.shape.height>obj.top}},{key:\"isBoundingBoxOverlappingWith\",value:function isBoundingBoxOverlappingWith(obj){return this.shape.boundingBox.left<obj.right&&this.shape.boundingBox.right>obj.left&&this.shape.boundingBox.top<obj.bottom&&this.shape.boundingBox.bottom>obj.top}}],[{key:\"updateGroupOptions\",value:function updateGroupOptions(parentOptions,newOptions,groupList){if(groupList===undefined)return;var group=parentOptions.group;if(newOptions!==undefined&&newOptions.group!==undefined&&group!==newOptions.group){throw new Error(\"updateGroupOptions: group values in options don't match.\")}var hasGroup=typeof group===\"number\"||typeof group===\"string\"&&group!=\"\";if(!hasGroup)return;var groupObj=groupList.get(group);util.selectiveNotDeepExtend([\"font\"],parentOptions,groupObj);parentOptions.color=util.parseColor(parentOptions.color)}},{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var groupList=arguments[4];var fields=[\"color\",\"fixed\",\"shadow\"];util.selectiveNotDeepExtend(fields,parentOptions,newOptions,allowDeletion);Node.checkMass(newOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.color!==undefined&&newOptions.color!==null){var parsedColor=util.parseColor(newOptions.color);util.fillIfDefined(parentOptions.color,parsedColor)}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(newOptions.fixed!==undefined&&newOptions.fixed!==null){if(typeof newOptions.fixed===\"boolean\"){parentOptions.fixed.x=newOptions.fixed;parentOptions.fixed.y=newOptions.fixed}else{if(newOptions.fixed.x!==undefined&&typeof newOptions.fixed.x===\"boolean\"){parentOptions.fixed.x=newOptions.fixed.x}if(newOptions.fixed.y!==undefined&&typeof newOptions.fixed.y===\"boolean\"){parentOptions.fixed.y=newOptions.fixed.y}}}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}Node.updateGroupOptions(parentOptions,newOptions,groupList);if(newOptions.scaling!==undefined){util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}}},{key:\"checkMass\",value:function checkMass(options,id){if(options.mass!==undefined&&options.mass<=0){var strId=\"\";if(id!==undefined){strId=\" in node id: \"+id}console.log(\"%cNegative or zero mass disallowed\"+strId+\", setting mass to 1.\",printStyle);options.mass=1}}}]);return Node}();exports[\"default\"]=Node},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=function(){function ComponentUtil(){(0,_classCallCheck3[\"default\"])(this,ComponentUtil)}(0,_createClass3[\"default\"])(ComponentUtil,null,[{key:\"choosify\",value:function choosify(subOption,pile){var allowed=[\"node\",\"edge\",\"label\"];var value=true;var chosen=util.topMost(pile,\"chosen\");if(typeof chosen===\"boolean\"){value=chosen}else if((typeof chosen===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(chosen))===\"object\"){if(allowed.indexOf(subOption)===-1){throw new Error(\"choosify: subOption '\"+subOption+\"' should be one of \"+\"'\"+allowed.join(\"', '\")+\"'\")}var chosenEdge=util.topMost(pile,[\"chosen\",subOption]);if(typeof chosenEdge===\"boolean\"||typeof chosenEdge===\"function\"){value=chosenEdge}}return value}},{key:\"pointInRect\",value:function pointInRect(rect,point,rotationPoint){if(rect.width<=0||rect.height<=0){return false}if(rotationPoint!==undefined){var tmp={x:point.x-rotationPoint.x,y:point.y-rotationPoint.y};if(rotationPoint.angle!==0){var angle=-rotationPoint.angle;var tmp2={x:Math.cos(angle)*tmp.x-Math.sin(angle)*tmp.y,y:Math.sin(angle)*tmp.x+Math.cos(angle)*tmp.y};point=tmp2}else{point=tmp}}var right=rect.x+rect.width;var bottom=rect.y+rect.width;return rect.left<point.x&&right>point.x&&rect.top<point.y&&bottom>point.y}},{key:\"isValidLabel\",value:function isValidLabel(text){return typeof text===\"string\"&&text!==\"\"}}]);return ComponentUtil}();exports[\"default\"]=ComponentUtil},function(module,exports,__webpack_require__){__webpack_require__(125);var global=__webpack_require__(18);var hide=__webpack_require__(26);var Iterators=__webpack_require__(31);var TO_STRING_TAG=__webpack_require__(13)(\"toStringTag\");var DOMIterables=(\"CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,\"+\"DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,\"+\"MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,\"+\"SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,\"+\"TextTrackList,TouchList\").split(\",\");for(var i=0;i<DOMIterables.length;i++){var NAME=DOMIterables[i];var Collection=global[NAME];var proto=Collection&&Collection.prototype;if(proto&&!proto[TO_STRING_TAG])hide(proto,TO_STRING_TAG,NAME);Iterators[NAME]=Iterators.Array}},function(module,exports){var toString={}.toString;module.exports=function(it){return toString.call(it).slice(8,-1)}},function(module,exports){module.exports=function(it){if(it==undefined)throw TypeError(\"Can't call method on  \"+it);return it}},function(module,exports){module.exports=true},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);module.exports=function(it,S){if(!isObject(it))return it;var fn,val;if(S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;if(typeof(fn=it.valueOf)==\"function\"&&!isObject(val=fn.call(it)))return val;if(!S&&typeof(fn=it.toString)==\"function\"&&!isObject(val=fn.call(it)))return val;throw TypeError(\"Can't convert object to primitive value\")}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var dPs=__webpack_require__(130);var enumBugKeys=__webpack_require__(58);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\")\n;var Empty=function(){};var PROTOTYPE=\"prototype\";var createDict=function(){var iframe=__webpack_require__(82)(\"iframe\");var i=enumBugKeys.length;var lt=\"<\";var gt=\">\";var iframeDocument;iframe.style.display=\"none\";__webpack_require__(134).appendChild(iframe);iframe.src=\"javascript:\";iframeDocument=iframe.contentWindow.document;iframeDocument.open();iframeDocument.write(lt+\"script\"+gt+\"document.F=Object\"+lt+\"/script\"+gt);iframeDocument.close();createDict=iframeDocument.F;while(i--)delete createDict[PROTOTYPE][enumBugKeys[i]];return createDict()};module.exports=Object.create||function create(O,Properties){var result;if(O!==null){Empty[PROTOTYPE]=anObject(O);result=new Empty;Empty[PROTOTYPE]=null;result[IE_PROTO]=O}else result=createDict();return Properties===undefined?result:dPs(result,Properties)}},function(module,exports){var ceil=Math.ceil;var floor=Math.floor;module.exports=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)}},function(module,exports,__webpack_require__){var shared=__webpack_require__(57)(\"keys\");var uid=__webpack_require__(40);module.exports=function(key){return shared[key]||(shared[key]=uid(key))}},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var SHARED=\"__core-js_shared__\";var store=global[SHARED]||(global[SHARED]={});module.exports=function(key){return store[key]||(store[key]={})}},function(module,exports){module.exports=\"constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf\".split(\",\")},function(module,exports,__webpack_require__){var def=__webpack_require__(20).f;var has=__webpack_require__(22);var TAG=__webpack_require__(13)(\"toStringTag\");module.exports=function(it,tag,stat){if(it&&!has(it=stat?it:it.prototype,TAG))def(it,TAG,{configurable:true,value:tag})}},function(module,exports,__webpack_require__){\"use strict\";var $at=__webpack_require__(135)(true);__webpack_require__(79)(String,\"String\",function(iterated){this._t=String(iterated);this._i=0},function(){var O=this._t;var index=this._i;var point;if(index>=O.length)return{value:undefined,done:true};point=$at(O,index);this._i+=point.length;return{value:point,done:false}})},function(module,exports,__webpack_require__){exports.f=__webpack_require__(13)},function(module,exports,__webpack_require__){var global=__webpack_require__(18);var core=__webpack_require__(7);var LIBRARY=__webpack_require__(52);var wksExt=__webpack_require__(61);var defineProperty=__webpack_require__(20).f;module.exports=function(name){var $Symbol=core.Symbol||(core.Symbol=LIBRARY?{}:global.Symbol||{});if(name.charAt(0)!=\"_\"&&!(name in $Symbol))defineProperty($Symbol,name,{value:wksExt.f(name)})}},function(module,exports){exports.f=Object.getOwnPropertySymbols},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var moment=__webpack_require__(9);var Component=__webpack_require__(16);var DateUtil=__webpack_require__(36);function Range(body,options){var now=moment().hours(0).minutes(0).seconds(0).milliseconds(0);var start=now.clone().add(-3,\"days\").valueOf();var end=now.clone().add(3,\"days\").valueOf();this.millisecondsPerPixelCache=undefined;if(options===undefined){this.start=start;this.end=end}else{this.start=options.start||start;this.end=options.end||end}this.rolling=false;this.body=body;this.deltaDifference=0;this.scaleOffset=0;this.startToFront=false;this.endToFront=true;this.defaultOptions={rtl:false,start:null,end:null,moment:moment,direction:\"horizontal\",moveable:true,zoomable:true,min:null,max:null,zoomMin:10,zoomMax:1e3*60*60*24*365*1e4,rollingMode:{follow:false,offset:.5}};this.options=util.extend({},this.defaultOptions);this.props={touch:{}};this.animationTimer=null;this.body.emitter.on(\"panstart\",this._onDragStart.bind(this));this.body.emitter.on(\"panmove\",this._onDrag.bind(this));this.body.emitter.on(\"panend\",this._onDragEnd.bind(this));this.body.emitter.on(\"mousewheel\",this._onMouseWheel.bind(this));this.body.emitter.on(\"touch\",this._onTouch.bind(this));this.body.emitter.on(\"pinch\",this._onPinch.bind(this));this.body.dom.rollingModeBtn.addEventListener(\"click\",this.startRolling.bind(this));this.setOptions(options)}Range.prototype=new Component;Range.prototype.setOptions=function(options){if(options){var fields=[\"animation\",\"direction\",\"min\",\"max\",\"zoomMin\",\"zoomMax\",\"moveable\",\"zoomable\",\"moment\",\"activate\",\"hiddenDates\",\"zoomKey\",\"rtl\",\"showCurrentTime\",\"rollingMode\",\"horizontalScroll\"];util.selectiveExtend(fields,this.options,options);if(options.rollingMode&&options.rollingMode.follow){this.startRolling()}if(\"start\"in options||\"end\"in options){this.setRange(options.start,options.end)}}};function validateDirection(direction){if(direction!=\"horizontal\"&&direction!=\"vertical\"){throw new TypeError('Unknown direction \"'+direction+'\". '+'Choose \"horizontal\" or \"vertical\".')}}Range.prototype.startRolling=function(){var me=this;function update(){me.stopRolling();me.rolling=true;var interval=me.end-me.start;var t=util.convert(new Date,\"Date\").valueOf();var start=t-interval*me.options.rollingMode.offset;var end=t+interval*(1-me.options.rollingMode.offset);var options={animation:false};me.setRange(start,end,options);var scale=me.conversion(me.body.domProps.center.width).scale;interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.body.dom.rollingModeBtn.style.visibility=\"hidden\";me.currentTimeTimer=setTimeout(update,interval)}update()};Range.prototype.stopRolling=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);this.rolling=false;this.body.dom.rollingModeBtn.style.visibility=\"visible\"}};Range.prototype.setRange=function(start,end,options,callback,frameCallback){if(!options){options={}}if(options.byUser!==true){options.byUser=false}var me=this;var finalStart=start!=undefined?util.convert(start,\"Date\").valueOf():null;var finalEnd=end!=undefined?util.convert(end,\"Date\").valueOf():null;this._cancelAnimation();this.millisecondsPerPixelCache=undefined;if(options.animation){var initStart=this.start;var initEnd=this.end;var duration=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"duration\"in options.animation?options.animation.duration:500;var easingName=(0,_typeof3[\"default\"])(options.animation)===\"object\"&&\"easingFunction\"in options.animation?options.animation.easingFunction:\"easeInOutQuad\";var easingFunction=util.easingFunctions[easingName];if(!easingFunction){throw new Error(\"Unknown easing function \"+(0,_stringify2[\"default\"])(easingName)+\". \"+\"Choose from: \"+(0,_keys2[\"default\"])(util.easingFunctions).join(\", \"))}var initTime=(new Date).valueOf();var anyChanged=false;var next=function next(){if(!me.props.touch.dragging){var now=(new Date).valueOf();var time=now-initTime;var ease=easingFunction(time/duration);var done=time>duration;var s=done||finalStart===null?finalStart:initStart+(finalStart-initStart)*ease;var e=done||finalEnd===null?finalEnd:initEnd+(finalEnd-initEnd)*ease;changed=me._applyRange(s,e);DateUtil.updateHiddenDates(me.options.moment,me.body,me.options.hiddenDates);anyChanged=anyChanged||changed;var params={start:new Date(me.start),end:new Date(me.end),byUser:options.byUser,event:options.event};if(frameCallback){frameCallback(ease,changed,done)}if(changed){me.body.emitter.emit(\"rangechange\",params)}if(done){if(anyChanged){me.body.emitter.emit(\"rangechanged\",params);if(callback){return callback()}}}else{me.animationTimer=setTimeout(next,20)}}};return next()}else{var changed=this._applyRange(finalStart,finalEnd);DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(changed){var params={start:new Date(this.start),end:new Date(this.end),byUser:options.byUser,event:options.event};this.body.emitter.emit(\"rangechange\",params);clearTimeout(me.timeoutID);me.timeoutID=setTimeout(function(){me.body.emitter.emit(\"rangechanged\",params)},200);if(callback){return callback()}}}};Range.prototype.getMillisecondsPerPixel=function(){if(this.millisecondsPerPixelCache===undefined){this.millisecondsPerPixelCache=(this.end-this.start)/this.body.dom.center.clientWidth}return this.millisecondsPerPixelCache};Range.prototype._cancelAnimation=function(){if(this.animationTimer){clearTimeout(this.animationTimer);this.animationTimer=null}};Range.prototype._applyRange=function(start,end){var newStart=start!=null?util.convert(start,\"Date\").valueOf():this.start,newEnd=end!=null?util.convert(end,\"Date\").valueOf():this.end,max=this.options.max!=null?util.convert(this.options.max,\"Date\").valueOf():null,min=this.options.min!=null?util.convert(this.options.min,\"Date\").valueOf():null,diff;if(isNaN(newStart)||newStart===null){throw new Error('Invalid start \"'+start+'\"')}if(isNaN(newEnd)||newEnd===null){throw new Error('Invalid end \"'+end+'\"')}if(newEnd<newStart){newEnd=newStart}if(min!==null){if(newStart<min){diff=min-newStart;newStart+=diff;newEnd+=diff;if(max!=null){if(newEnd>max){newEnd=max}}}}if(max!==null){if(newEnd>max){diff=newEnd-max;newStart-=diff;newEnd-=diff;if(min!=null){if(newStart<min){newStart=min}}}}if(this.options.zoomMin!==null){var zoomMin=parseFloat(this.options.zoomMin);if(zoomMin<0){zoomMin=0}if(newEnd-newStart<zoomMin){var compensation=.5;if(this.end-this.start===zoomMin&&newStart>=this.start-compensation&&newEnd<=this.end){newStart=this.start;newEnd=this.end}else{diff=zoomMin-(newEnd-newStart);newStart-=diff/2;newEnd+=diff/2}}}if(this.options.zoomMax!==null){var zoomMax=parseFloat(this.options.zoomMax);if(zoomMax<0){zoomMax=0}if(newEnd-newStart>zoomMax){if(this.end-this.start===zoomMax&&newStart<this.start&&newEnd>this.end){newStart=this.start;newEnd=this.end}else{diff=newEnd-newStart-zoomMax;newStart+=diff/2;newEnd-=diff/2}}}var changed=this.start!=newStart||this.end!=newEnd;if(!(newStart>=this.start&&newStart<=this.end||newEnd>=this.start&&newEnd<=this.end)&&!(this.start>=newStart&&this.start<=newEnd||this.end>=newStart&&this.end<=newEnd)){this.body.emitter.emit(\"checkRangedItems\")}this.start=newStart;this.end=newEnd;return changed};Range.prototype.getRange=function(){return{start:this.start,end:this.end}};Range.prototype.conversion=function(width,totalHidden){return Range.conversion(this.start,this.end,width,totalHidden)};Range.conversion=function(start,end,width,totalHidden){if(totalHidden===undefined){totalHidden=0}if(width!=0&&end-start!=0){return{offset:start,scale:width/(end-start-totalHidden)}}else{return{offset:0,scale:1}}};Range.prototype._onDragStart=function(event){this.deltaDifference=0;this.previousDelta=0;if(!this.options.moveable)return;if(!this._isInsideRange(event))return;if(!this.props.touch.allowDragging)return;this.stopRolling();this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.dragging=true;if(this.body.dom.root){this.body.dom.root.style.cursor=\"move\"}};Range.prototype._onDrag=function(event){if(!event)return;if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;var direction=this.options.direction;validateDirection(direction);var delta=direction==\"horizontal\"?event.deltaX:event.deltaY;delta-=this.deltaDifference;var interval=this.props.touch.end-this.props.touch.start;var duration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);interval-=duration;var width=direction==\"horizontal\"?this.body.domProps.center.width:this.body.domProps.center.height;var diffRange;if(this.options.rtl){diffRange=delta/width*interval}else{diffRange=-delta/width*interval}var newStart=this.props.touch.start+diffRange;var newEnd=this.props.touch.end+diffRange;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,this.previousDelta-delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,this.previousDelta-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){this.deltaDifference+=delta;this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this._onDrag(event);return}this.previousDelta=delta;this._applyRange(newStart,newEnd);var startDate=new Date(this.start);var endDate=new Date(this.end);this.body.emitter.emit(\"rangechange\",{start:startDate,end:endDate,byUser:true,event:event});this.body.emitter.emit(\"panmove\")};Range.prototype._onDragEnd=function(event){if(!this.props.touch.dragging)return;if(!this.options.moveable)return;if(!this.props.touch.allowDragging)return;this.props.touch.dragging=false;if(this.body.dom.root){this.body.dom.root.style.cursor=\"auto\"}this.body.emitter.emit(\"rangechanged\",{start:new Date(this.start),end:new Date(this.end),byUser:true,event:event})};Range.prototype._onMouseWheel=function(event){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(this.options.zoomKey&&!event[this.options.zoomKey]&&this.options.zoomable||!this.options.zoomable&&this.options.moveable){return}if(!(this.options.zoomable&&this.options.moveable))return;if(!this._isInsideRange(event))return;if(delta){var scale;if(delta<0){scale=1-delta/5}else{scale=1/(1+delta/5)}var pointerDate;if(this.rolling){pointerDate=this.start+(this.end-this.start)*this.options.rollingMode.offset}else{var pointer=this.getPointer({x:event.clientX,y:event.clientY},this.body.dom.center);pointerDate=this._pointerToDate(pointer)}this.zoom(scale,pointerDate,delta,event);event.preventDefault()}};Range.prototype._onTouch=function(event){this.props.touch.start=this.start;this.props.touch.end=this.end;this.props.touch.allowDragging=true;this.props.touch.center=null;this.scaleOffset=0;this.deltaDifference=0;util.preventDefault(event)};Range.prototype._onPinch=function(event){if(!(this.options.zoomable&&this.options.moveable))return;util.preventDefault(event);this.props.touch.allowDragging=false;if(!this.props.touch.center){this.props.touch.center=this.getPointer(event.center,this.body.dom.center)}this.stopRolling();var scale=1/(event.scale+this.scaleOffset);var centerDate=this._pointerToDate(this.props.touch.center);var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,centerDate);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=centerDate-hiddenDurationBefore+(this.props.touch.start-(centerDate-hiddenDurationBefore))*scale;var newEnd=centerDate+hiddenDurationAfter+(this.props.touch.end-(centerDate+hiddenDurationAfter))*scale;this.startToFront=1-scale<=0;this.endToFront=scale-1<=0;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,1-scale,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,scale-1,true);if(safeStart!=newStart||safeEnd!=newEnd){this.props.touch.start=safeStart;this.props.touch.end=safeEnd;this.scaleOffset=1-event.scale;newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype._isInsideRange=function(event){var clientX=event.center?event.center.x:event.clientX;var x;if(this.options.rtl){x=clientX-util.getAbsoluteLeft(this.body.dom.centerContainer)}else{x=util.getAbsoluteRight(this.body.dom.centerContainer)-clientX}var time=this.body.util.toTime(x);return time>=this.start&&time<=this.end};Range.prototype._pointerToDate=function(pointer){var conversion;var direction=this.options.direction;validateDirection(direction);if(direction==\"horizontal\"){return this.body.util.toTime(pointer.x).valueOf()}else{var height=this.body.domProps.center.height;conversion=this.conversion(height);return pointer.y/conversion.scale+conversion.offset}};Range.prototype.getPointer=function(touch,element){if(this.options.rtl){return{x:util.getAbsoluteRight(element)-touch.x,y:touch.y-util.getAbsoluteTop(element)}}else{return{x:touch.x-util.getAbsoluteLeft(element),y:touch.y-util.getAbsoluteTop(element)}}};Range.prototype.zoom=function(scale,center,delta,event){if(center==null){center=(this.start+this.end)/2}var hiddenDuration=DateUtil.getHiddenDurationBetween(this.body.hiddenDates,this.start,this.end);var hiddenDurationBefore=DateUtil.getHiddenDurationBefore(this.options.moment,this.body.hiddenDates,this,center);var hiddenDurationAfter=hiddenDuration-hiddenDurationBefore;var newStart=center-hiddenDurationBefore+(this.start-(center-hiddenDurationBefore))*scale;var newEnd=center+hiddenDurationAfter+(this.end-(center+hiddenDurationAfter))*scale;this.startToFront=delta>0?false:true;this.endToFront=-delta>0?false:true;var safeStart=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newStart,delta,true);var safeEnd=DateUtil.snapAwayFromHidden(this.body.hiddenDates,newEnd,-delta,true);if(safeStart!=newStart||safeEnd!=newEnd){newStart=safeStart;newEnd=safeEnd}var options={animation:false,byUser:true,event:event};this.setRange(newStart,newEnd,options);this.startToFront=false;this.endToFront=true};Range.prototype.move=function(delta){var diff=this.end-this.start;var newStart=this.start+diff*delta;var newEnd=this.end+diff*delta;this.start=newStart;this.end=newEnd};Range.prototype.moveTo=function(moveTo){var center=(this.start+this.end)/2;var diff=center-moveTo;var newStart=this.start-diff;var newEnd=this.end-diff;var options={animation:false,byUser:true,event:null};this.setRange(newStart,newEnd,options)};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var TimeAxis=__webpack_require__(45);var Activator=__webpack_require__(97);var DateUtil=__webpack_require__(36);var CustomTime=__webpack_require__(46);function Core(){}Emitter(Core.prototype);Core.prototype._create=function(container){this.dom={};this.dom.container=container;this.dom.root=document.createElement(\"div\");this.dom.background=document.createElement(\"div\");this.dom.backgroundVertical=document.createElement(\"div\");this.dom.backgroundHorizontal=document.createElement(\"div\");this.dom.centerContainer=document.createElement(\"div\");this.dom.leftContainer=document.createElement(\"div\");this.dom.rightContainer=document.createElement(\"div\");this.dom.center=document.createElement(\"div\");this.dom.left=document.createElement(\"div\");this.dom.right=document.createElement(\"div\");this.dom.top=document.createElement(\"div\");this.dom.bottom=document.createElement(\"div\");this.dom.shadowTop=document.createElement(\"div\");this.dom.shadowBottom=document.createElement(\"div\");this.dom.shadowTopLeft=document.createElement(\"div\");this.dom.shadowBottomLeft=document.createElement(\"div\");this.dom.shadowTopRight=document.createElement(\"div\");this.dom.shadowBottomRight=document.createElement(\"div\");this.dom.rollingModeBtn=document.createElement(\"div\");this.dom.root.className=\"vis-timeline\";this.dom.background.className=\"vis-panel vis-background\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical\";this.dom.backgroundHorizontal.className=\"vis-panel vis-background vis-horizontal\";this.dom.centerContainer.className=\"vis-panel vis-center\";this.dom.leftContainer.className=\"vis-panel vis-left\";this.dom.rightContainer.className=\"vis-panel vis-right\";this.dom.top.className=\"vis-panel vis-top\";this.dom.bottom.className=\"vis-panel vis-bottom\";this.dom.left.className=\"vis-content\";this.dom.center.className=\"vis-content\";this.dom.right.className=\"vis-content\";this.dom.shadowTop.className=\"vis-shadow vis-top\";this.dom.shadowBottom.className=\"vis-shadow vis-bottom\";this.dom.shadowTopLeft.className=\"vis-shadow vis-top\";this.dom.shadowBottomLeft.className=\"vis-shadow vis-bottom\";this.dom.shadowTopRight.className=\"vis-shadow vis-top\";this.dom.shadowBottomRight.className=\"vis-shadow vis-bottom\";this.dom.rollingModeBtn.className=\"vis-rolling-mode-btn\";this.dom.root.appendChild(this.dom.background);this.dom.root.appendChild(this.dom.backgroundVertical);this.dom.root.appendChild(this.dom.backgroundHorizontal);this.dom.root.appendChild(this.dom.centerContainer);this.dom.root.appendChild(this.dom.leftContainer);this.dom.root.appendChild(this.dom.rightContainer);this.dom.root.appendChild(this.dom.top);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.bottom);this.dom.root.appendChild(this.dom.rollingModeBtn);this.dom.centerContainer.appendChild(this.dom.center);this.dom.leftContainer.appendChild(this.dom.left);this.dom.rightContainer.appendChild(this.dom.right);this.dom.centerContainer.appendChild(this.dom.shadowTop);this.dom.centerContainer.appendChild(this.dom.shadowBottom);this.dom.leftContainer.appendChild(this.dom.shadowTopLeft);this.dom.leftContainer.appendChild(this.dom.shadowBottomLeft);this.dom.rightContainer.appendChild(this.dom.shadowTopRight);this.dom.rightContainer.appendChild(this.dom.shadowBottomRight);this.props={root:{},background:{},centerContainer:{},leftContainer:{},rightContainer:{},center:{},left:{},right:{},top:{},bottom:{},border:{},scrollTop:0,scrollTopMin:0};this.on(\"rangechange\",function(){if(this.initialDrawDone===true){this._redraw()}}.bind(this));this.on(\"rangechanged\",function(){if(!this.initialRangeChangeDone){this.initialRangeChangeDone=true}}.bind(this));this.on(\"touch\",this._onTouch.bind(this));this.on(\"panmove\",this._onDrag.bind(this));var me=this;this._origRedraw=this._redraw.bind(this);this._redraw=util.throttle(this._origRedraw);this.on(\"_change\",function(properties){if(me.itemSet&&me.itemSet.initialItemSetDrawn&&properties&&properties.queue==true){me._redraw()}else{me._origRedraw()}});this.hammer=new Hammer(this.dom.root);var pinchRecognizer=this.hammer.get(\"pinch\").set({enable:true});hammerUtil.disablePreventDefaultVertically(pinchRecognizer);this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.listeners={};var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(type){var listener=function listener(event){if(me.isActive()){me.emit(type,event)}};me.hammer.on(type,listener);me.listeners[type]=listener});hammerUtil.onTouch(this.hammer,function(event){me.emit(\"touch\",event)}.bind(this));hammerUtil.onRelease(this.hammer,function(event){me.emit(\"release\",event)}.bind(this));function onMouseWheel(event){if(this.isActive()){this.emit(\"mousewheel\",event)}var deltaX=0;var deltaY=0;if(\"detail\"in event){deltaY=event.detail*-1}if(\"wheelDelta\"in event){deltaY=event.wheelDelta}if(\"wheelDeltaY\"in event){deltaY=event.wheelDeltaY}if(\"wheelDeltaX\"in event){deltaX=event.wheelDeltaX*-1}if(\"axis\"in event&&event.axis===event.HORIZONTAL_AXIS){deltaX=deltaY*-1;deltaY=0}if(\"deltaY\"in event){deltaY=event.deltaY*-1}if(\"deltaX\"in event){deltaX=event.deltaX}if(!this.options.zoomKey||event[this.options.zoomKey])return;event.preventDefault();if(this.options.verticalScroll&&Math.abs(deltaY)>=Math.abs(deltaX)){var current=this.props.scrollTop;var adjusted=current+deltaY;if(this.isActive()){this._setScrollTop(adjusted);this._redraw();this.emit(\"scroll\",event)}}else if(this.options.horizontalScroll){var delta=Math.abs(deltaX)>=Math.abs(deltaY)?deltaX:deltaY;var diff=delta/120*(this.range.end-this.range.start)/20;var newStart=this.range.start+diff;var newEnd=this.range.end+diff;var options={animation:false,byUser:true,event:event};this.range.setRange(newStart,newEnd,options)}}if(this.dom.centerContainer.addEventListener){this.dom.centerContainer.addEventListener(\"mousewheel\",onMouseWheel.bind(this),false);this.dom.centerContainer.addEventListener(\"DOMMouseScroll\",onMouseWheel.bind(this),false)}else{this.dom.centerContainer.attachEvent(\"onmousewheel\",onMouseWheel.bind(this))}function onMouseScrollSide(event){if(!me.options.verticalScroll)return;event.preventDefault();if(me.isActive()){var adjusted=-event.target.scrollTop;me._setScrollTop(adjusted);me._redraw();me.emit(\"scrollSide\",event)}}this.dom.left.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));this.dom.right.parentNode.addEventListener(\"scroll\",onMouseScrollSide.bind(this));var itemAddedToTimeline=false;function handleDragOver(event){if(event.preventDefault){event.preventDefault()}if(!event.target.className.indexOf(\"vis\")>-1)return;if(itemAddedToTimeline)return;event.dataTransfer.dropEffect=\"move\";itemAddedToTimeline=true;return false}function handleDrop(event){if(event.preventDefault){event.preventDefault()}if(event.stopPropagation){event.stopPropagation()}try{var itemData=JSON.parse(event.dataTransfer.getData(\"text\"));if(!itemData||!itemData.content)return}catch(err){return false}itemAddedToTimeline=false;event.center={x:event.clientX,y:event.clientY};if(itemData.target!==\"item\"){me.itemSet._onAddItem(event)}else{me.itemSet._onDropObjectOnItem(event)}me.emit(\"drop\",me.getEventProperties(event));return false}this.dom.center.addEventListener(\"dragover\",handleDragOver.bind(this),false);this.dom.center.addEventListener(\"drop\",handleDrop.bind(this),false);this.customTimes=[];this.touch={};this.redrawCount=0;this.initialDrawDone=false;this.initialRangeChangeDone=false;if(!container)throw new Error(\"No container provided\");container.appendChild(this.dom.root)};Core.prototype.setOptions=function(options){if(options){var fields=[\"width\",\"height\",\"minHeight\",\"maxHeight\",\"autoResize\",\"start\",\"end\",\"clickToUse\",\"dataAttributes\",\"hiddenDates\",\"locale\",\"locales\",\"moment\",\"rtl\",\"zoomKey\",\"horizontalScroll\",\"verticalScroll\"];util.selectiveExtend(fields,this.options,options);this.dom.rollingModeBtn.style.visibility=\"hidden\";if(this.options.rtl){this.dom.container.style.direction=\"rtl\";this.dom.backgroundVertical.className=\"vis-panel vis-background vis-vertical-rtl\"}if(this.options.verticalScroll){if(this.options.rtl){this.dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\"}else{this.dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\"}}if((0,_typeof3[\"default\"])(this.options.orientation)!==\"object\"){this.options.orientation={item:undefined,axis:undefined}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation={item:options.orientation,axis:options.orientation}}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"){if(\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}if(\"axis\"in options.orientation){this.options.orientation.axis=options.orientation.axis}}}if(this.options.orientation.axis===\"both\"){if(!this.timeAxis2){var timeAxis2=this.timeAxis2=new TimeAxis(this.body);timeAxis2.setOptions=function(options){var _options=options?util.extend({},options):{};_options.orientation=\"top\";TimeAxis.prototype.setOptions.call(timeAxis2,_options)};this.components.push(timeAxis2)}}else{if(this.timeAxis2){var index=this.components.indexOf(this.timeAxis2);if(index!==-1){this.components.splice(index,1)}this.timeAxis2.destroy();this.timeAxis2=null}}if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}if(\"hiddenDates\"in this.options){DateUtil.convertHiddenOptions(this.options.moment,this.body,this.options.hiddenDates)}if(\"clickToUse\"in options){if(options.clickToUse){if(!this.activator){this.activator=new Activator(this.dom.root)}}else{if(this.activator){this.activator.destroy();delete this.activator}}}if(\"showCustomTime\"in options){throw new Error(\"Option `showCustomTime` is deprecated. Create a custom time bar via timeline.addCustomTime(time [, id])\")}this._initAutoResize()}this.components.forEach(function(component){return component.setOptions(options)});if(\"configure\"in options){if(!this.configurator){this.configurator=this._createConfigurator()}this.configurator.setOptions(options.configure);var appliedOptions=util.deepExtend({},this.options);this.components.forEach(function(component){util.deepExtend(appliedOptions,component.options)});this.configurator.setModuleOptions({global:appliedOptions})}this._redraw()};Core.prototype.isActive=function(){return!this.activator||this.activator.active};Core.prototype.destroy=function(){this.setItems(null);this.setGroups(null);this.off();this._stopAutoResize();if(this.dom.root.parentNode){this.dom.root.parentNode.removeChild(this.dom.root)}this.dom=null;if(this.activator){this.activator.destroy();delete this.activator}for(var event in this.listeners){if(this.listeners.hasOwnProperty(event)){delete this.listeners[event]}}this.listeners=null;this.hammer=null;this.components.forEach(function(component){return component.destroy()});this.body=null};Core.prototype.setCustomTime=function(time,id){var customTimes=this.customTimes.filter(function(component){return id===component.options.id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){customTimes[0].setCustomTime(time)}};Core.prototype.getCustomTime=function(id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}return customTimes[0].getCustomTime()};Core.prototype.setCustomTimeTitle=function(title,id){var customTimes=this.customTimes.filter(function(component){return component.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}if(customTimes.length>0){return customTimes[0].setCustomTitle(title)}};Core.prototype.getEventProperties=function(event){return{event:event}};Core.prototype.addCustomTime=function(time,id){var timestamp=time!==undefined?util.convert(time,\"Date\").valueOf():new Date;var exists=this.customTimes.some(function(customTime){return customTime.options.id===id});if(exists){throw new Error(\"A custom time with id \"+(0,_stringify2[\"default\"])(id)+\" already exists\")}var customTime=new CustomTime(this.body,util.extend({},this.options,{time:timestamp,id:id}));this.customTimes.push(customTime);this.components.push(customTime);this._redraw();return id};Core.prototype.removeCustomTime=function(id){var customTimes=this.customTimes.filter(function(bar){return bar.options.id===id});if(customTimes.length===0){throw new Error(\"No custom time bar found with id \"+(0,_stringify2[\"default\"])(id))}customTimes.forEach(function(customTime){this.customTimes.splice(this.customTimes.indexOf(customTime),1);this.components.splice(this.components.indexOf(customTime),1);customTime.destroy()}.bind(this))};Core.prototype.getVisibleItems=function(){return this.itemSet&&this.itemSet.getVisibleItems()||[]};Core.prototype.fit=function(options,callback){var range=this.getDataRange();if(range.min===null&&range.max===null){return}var interval=range.max-range.min;var min=new Date(range.min.valueOf()-interval*.01);var max=new Date(range.max.valueOf()+interval*.01);var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(min,max,{animation:animation},callback)};Core.prototype.getDataRange=function(){throw new Error(\"Cannot invoke abstract method getDataRange\")};Core.prototype.setWindow=function(start,end,options,callback){if(typeof arguments[2]==\"function\"){callback=arguments[2];options={}}var animation;var range;if(arguments.length==1){range=arguments[0];animation=range.animation!==undefined?range.animation:true;this.range.setRange(range.start,range.end,{animation:animation})}else if(arguments.length==2&&typeof arguments[1]==\"function\"){range=arguments[0];callback=arguments[1];animation=range.animation!==undefined?range.animation:true\n;this.range.setRange(range.start,range.end,{animation:animation},callback)}else{animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)}};Core.prototype.moveTo=function(time,options,callback){if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var interval=this.range.end-this.range.start;var t=util.convert(time,\"Date\").valueOf();var start=t-interval/2;var end=t+interval/2;var animation=options&&options.animation!==undefined?options.animation:true;this.range.setRange(start,end,{animation:animation},callback)};Core.prototype.getWindow=function(){var range=this.range.getRange();return{start:new Date(range.start),end:new Date(range.end)}};Core.prototype.zoomIn=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newInterval=interval/(1+percentage);var distance=(interval-newInterval)/2;var newStart=start+distance;var newEnd=end-distance;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.zoomOut=function(percentage,options,callback){if(!percentage||percentage<0||percentage>1)return;if(typeof arguments[1]==\"function\"){callback=arguments[1];options={}}var range=this.getWindow();var start=range.start.valueOf();var end=range.end.valueOf();var interval=end-start;var newStart=start-interval*percentage/2;var newEnd=end+interval*percentage/2;this.setWindow(newStart,newEnd,options,callback)};Core.prototype.redraw=function(){this._redraw()};Core.prototype._redraw=function(){this.redrawCount++;var resized=false;var options=this.options;var props=this.props;var dom=this.dom;if(!dom||!dom.container||dom.root.offsetWidth==0)return;DateUtil.updateHiddenDates(this.options.moment,this.body,this.options.hiddenDates);if(options.orientation==\"top\"){util.addClassName(dom.root,\"vis-top\");util.removeClassName(dom.root,\"vis-bottom\")}else{util.removeClassName(dom.root,\"vis-top\");util.addClassName(dom.root,\"vis-bottom\")}dom.root.style.maxHeight=util.option.asSize(options.maxHeight,\"\");dom.root.style.minHeight=util.option.asSize(options.minHeight,\"\");dom.root.style.width=util.option.asSize(options.width,\"\");props.border.left=(dom.centerContainer.offsetWidth-dom.centerContainer.clientWidth)/2;props.border.right=props.border.left;props.border.top=(dom.centerContainer.offsetHeight-dom.centerContainer.clientHeight)/2;props.border.bottom=props.border.top;props.borderRootHeight=dom.root.offsetHeight-dom.root.clientHeight;props.borderRootWidth=dom.root.offsetWidth-dom.root.clientWidth;if(dom.centerContainer.clientHeight===0){props.border.left=props.border.top;props.border.right=props.border.left}if(dom.root.clientHeight===0){props.borderRootWidth=props.borderRootHeight}props.center.height=dom.center.offsetHeight;props.left.height=dom.left.offsetHeight;props.right.height=dom.right.offsetHeight;props.top.height=dom.top.clientHeight||-props.border.top;props.bottom.height=dom.bottom.clientHeight||-props.border.bottom;var contentHeight=Math.max(props.left.height,props.center.height,props.right.height);var autoHeight=props.top.height+contentHeight+props.bottom.height+props.borderRootHeight+props.border.top+props.border.bottom;dom.root.style.height=util.option.asSize(options.height,autoHeight+\"px\");props.root.height=dom.root.offsetHeight;props.background.height=props.root.height-props.borderRootHeight;var containerHeight=props.root.height-props.top.height-props.bottom.height-props.borderRootHeight;props.centerContainer.height=containerHeight;props.leftContainer.height=containerHeight;props.rightContainer.height=props.leftContainer.height;props.root.width=dom.root.offsetWidth;props.background.width=props.root.width-props.borderRootWidth;if(!this.initialDrawDone){props.scrollbarWidth=util.getScrollBarWidth()}if(options.verticalScroll){if(options.rtl){props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth+props.scrollbarWidth||-props.border.right}else{props.left.width=dom.leftContainer.clientWidth+props.scrollbarWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}}else{props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right}this._setDOM();var offset=this._updateScrollTop();if(options.orientation.item!=\"top\"){offset+=Math.max(props.centerContainer.height-props.center.height-props.border.top-props.border.bottom,0)}dom.center.style.top=offset+\"px\";var visibilityTop=props.scrollTop==0?\"hidden\":\"\";var visibilityBottom=props.scrollTop==props.scrollTopMin?\"hidden\":\"\";dom.shadowTop.style.visibility=visibilityTop;dom.shadowBottom.style.visibility=visibilityBottom;dom.shadowTopLeft.style.visibility=visibilityTop;dom.shadowBottomLeft.style.visibility=visibilityBottom;dom.shadowTopRight.style.visibility=visibilityTop;dom.shadowBottomRight.style.visibility=visibilityBottom;if(options.verticalScroll){dom.rightContainer.className=\"vis-panel vis-right vis-vertical-scroll\";dom.leftContainer.className=\"vis-panel vis-left vis-vertical-scroll\";dom.shadowTopRight.style.visibility=\"hidden\";dom.shadowBottomRight.style.visibility=\"hidden\";dom.shadowTopLeft.style.visibility=\"hidden\";dom.shadowBottomLeft.style.visibility=\"hidden\";dom.left.style.top=\"0px\";dom.right.style.top=\"0px\"}if(!options.verticalScroll||props.center.height<props.centerContainer.height){dom.left.style.top=offset+\"px\";dom.right.style.top=offset+\"px\";dom.rightContainer.className=dom.rightContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");dom.leftContainer.className=dom.leftContainer.className.replace(new RegExp(\"(?:^|\\\\s)\"+\"vis-vertical-scroll\"+\"(?:\\\\s|$)\"),\" \");props.left.width=dom.leftContainer.clientWidth||-props.border.left;props.right.width=dom.rightContainer.clientWidth||-props.border.right;this._setDOM()}var contentsOverflow=props.center.height>props.centerContainer.height;this.hammer.get(\"pan\").set({direction:contentsOverflow?Hammer.DIRECTION_ALL:Hammer.DIRECTION_HORIZONTAL});this.components.forEach(function(component){resized=component.redraw()||resized});var MAX_REDRAW=5;if(resized){if(this.redrawCount<MAX_REDRAW){this.body.emitter.emit(\"_change\");return}else{console.log(\"WARNING: infinite loop in redraw?\")}}else{this.redrawCount=0}this.body.emitter.emit(\"changed\")};Core.prototype._setDOM=function(){var props=this.props;var dom=this.dom;props.leftContainer.width=props.left.width;props.rightContainer.width=props.right.width;var centerWidth=props.root.width-props.left.width-props.right.width-props.borderRootWidth;props.center.width=centerWidth;props.centerContainer.width=centerWidth;props.top.width=centerWidth;props.bottom.width=centerWidth;dom.background.style.height=props.background.height+\"px\";dom.backgroundVertical.style.height=props.background.height+\"px\";dom.backgroundHorizontal.style.height=props.centerContainer.height+\"px\";dom.centerContainer.style.height=props.centerContainer.height+\"px\";dom.leftContainer.style.height=props.leftContainer.height+\"px\";dom.rightContainer.style.height=props.rightContainer.height+\"px\";dom.background.style.width=props.background.width+\"px\";dom.backgroundVertical.style.width=props.centerContainer.width+\"px\";dom.backgroundHorizontal.style.width=props.background.width+\"px\";dom.centerContainer.style.width=props.center.width+\"px\";dom.top.style.width=props.top.width+\"px\";dom.bottom.style.width=props.bottom.width+\"px\";dom.background.style.left=\"0\";dom.background.style.top=\"0\";dom.backgroundVertical.style.left=props.left.width+props.border.left+\"px\";dom.backgroundVertical.style.top=\"0\";dom.backgroundHorizontal.style.left=\"0\";dom.backgroundHorizontal.style.top=props.top.height+\"px\";dom.centerContainer.style.left=props.left.width+\"px\";dom.centerContainer.style.top=props.top.height+\"px\";dom.leftContainer.style.left=\"0\";dom.leftContainer.style.top=props.top.height+\"px\";dom.rightContainer.style.left=props.left.width+props.center.width+\"px\";dom.rightContainer.style.top=props.top.height+\"px\";dom.top.style.left=props.left.width+\"px\";dom.top.style.top=\"0\";dom.bottom.style.left=props.left.width+\"px\";dom.bottom.style.top=props.top.height+props.centerContainer.height+\"px\";dom.center.style.left=\"0\";dom.left.style.left=\"0\";dom.right.style.left=\"0\"};Core.prototype.repaint=function(){throw new Error(\"Function repaint is deprecated. Use redraw instead.\")};Core.prototype.setCurrentTime=function(time){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}this.currentTime.setCurrentTime(time)};Core.prototype.getCurrentTime=function(){if(!this.currentTime){throw new Error(\"Option showCurrentTime must be true\")}return this.currentTime.getCurrentTime()};Core.prototype._toTime=function(x){return DateUtil.toTime(this,x,this.props.center.width)};Core.prototype._toGlobalTime=function(x){return DateUtil.toTime(this,x,this.props.root.width)};Core.prototype._toScreen=function(time){return DateUtil.toScreen(this,time,this.props.center.width)};Core.prototype._toGlobalScreen=function(time){return DateUtil.toScreen(this,time,this.props.root.width)};Core.prototype._initAutoResize=function(){if(this.options.autoResize==true){this._startAutoResize()}else{this._stopAutoResize()}};Core.prototype._startAutoResize=function(){var me=this;this._stopAutoResize();this._onResize=function(){if(me.options.autoResize!=true){me._stopAutoResize();return}if(me.dom.root){if(me.dom.root.offsetWidth!=me.props.lastWidth||me.dom.root.offsetHeight!=me.props.lastHeight){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight;me.props.scrollbarWidth=util.getScrollBarWidth();me.body.emitter.emit(\"_change\")}}};util.addEventListener(window,\"resize\",this._onResize);if(me.dom.root){me.props.lastWidth=me.dom.root.offsetWidth;me.props.lastHeight=me.dom.root.offsetHeight}this.watchTimer=setInterval(this._onResize,1e3)};Core.prototype._stopAutoResize=function(){if(this.watchTimer){clearInterval(this.watchTimer);this.watchTimer=undefined}if(this._onResize){util.removeEventListener(window,\"resize\",this._onResize);this._onResize=null}};Core.prototype._onTouch=function(event){this.touch.allowDragging=true;this.touch.initialScrollTop=this.props.scrollTop};Core.prototype._onPinch=function(event){this.touch.allowDragging=false};Core.prototype._onDrag=function(event){if(!event)return;if(!this.touch.allowDragging)return;var delta=event.deltaY;var oldScrollTop=this._getScrollTop();var newScrollTop=this._setScrollTop(this.touch.initialScrollTop+delta);if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}if(newScrollTop!=oldScrollTop){this.emit(\"verticalDrag\")}};Core.prototype._setScrollTop=function(scrollTop){this.props.scrollTop=scrollTop;this._updateScrollTop();return this.props.scrollTop};Core.prototype._updateScrollTop=function(){var scrollTopMin=Math.min(this.props.centerContainer.height-this.props.center.height,0);if(scrollTopMin!=this.props.scrollTopMin){if(this.options.orientation.item!=\"top\"){this.props.scrollTop+=scrollTopMin-this.props.scrollTopMin}this.props.scrollTopMin=scrollTopMin}if(this.props.scrollTop>0)this.props.scrollTop=0;if(this.props.scrollTop<scrollTopMin)this.props.scrollTop=scrollTopMin;if(this.options.verticalScroll){this.dom.left.parentNode.scrollTop=-this.props.scrollTop;this.dom.right.parentNode.scrollTop=-this.props.scrollTop}return this.props.scrollTop};Core.prototype._getScrollTop=function(){return this.props.scrollTop};Core.prototype._createConfigurator=function(){throw new Error(\"Cannot invoke abstract method _createConfigurator\")};module.exports=Core},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var DateUtil=__webpack_require__(36);var util=__webpack_require__(2);function TimeStep(start,end,minimumStep,hiddenDates,options){this.moment=moment;this.current=this.moment();this._start=this.moment();this._end=this.moment();this.autoScale=true;this.scale=\"day\";this.step=1;this.setRange(start,end,minimumStep);this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;if(Array.isArray(hiddenDates)){this.hiddenDates=hiddenDates}else if(hiddenDates!=undefined){this.hiddenDates=[hiddenDates]}else{this.hiddenDates=[]}this.format=TimeStep.FORMAT;this.options=options?options:{}}TimeStep.FORMAT={minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}};TimeStep.prototype.setMoment=function(moment){this.moment=moment;this.current=this.moment(this.current.valueOf());this._start=this.moment(this._start.valueOf());this._end=this.moment(this._end.valueOf())};TimeStep.prototype.setFormat=function(format){var defaultFormat=util.deepExtend({},TimeStep.FORMAT);this.format=util.deepExtend(defaultFormat,format)};TimeStep.prototype.setRange=function(start,end,minimumStep){if(!(start instanceof Date)||!(end instanceof Date)){throw\"No legal start or end date in method setRange\"}this._start=start!=undefined?this.moment(start.valueOf()):new Date;this._end=end!=undefined?this.moment(end.valueOf()):new Date;if(this.autoScale){this.setMinimumStep(minimumStep)}};TimeStep.prototype.start=function(){this.current=this._start.clone();this.roundToMinor()};TimeStep.prototype.roundToMinor=function(){if(this.scale==\"week\"){this.current.weekday(0)}switch(this.scale){case\"year\":this.current.year(this.step*Math.floor(this.current.year()/this.step));this.current.month(0);case\"month\":this.current.date(1);case\"week\":case\"day\":case\"weekday\":this.current.hours(0);case\"hour\":this.current.minutes(0);case\"minute\":this.current.seconds(0);case\"second\":this.current.milliseconds(0)}if(this.step!=1){switch(this.scale){case\"millisecond\":this.current.subtract(this.current.milliseconds()%this.step,\"milliseconds\");break;case\"second\":this.current.subtract(this.current.seconds()%this.step,\"seconds\");break;case\"minute\":this.current.subtract(this.current.minutes()%this.step,\"minutes\");break;case\"hour\":this.current.subtract(this.current.hours()%this.step,\"hours\");break;case\"weekday\":case\"day\":this.current.subtract((this.current.date()-1)%this.step,\"day\");break;case\"week\":this.current.subtract(this.current.week()%this.step,\"week\");break;case\"month\":this.current.subtract(this.current.month()%this.step,\"month\");break;case\"year\":this.current.subtract(this.current.year()%this.step,\"year\");break;default:break}}};TimeStep.prototype.hasNext=function(){return this.current.valueOf()<=this._end.valueOf()};TimeStep.prototype.next=function(){var prev=this.current.valueOf();switch(this.scale){case\"millisecond\":this.current.add(this.step,\"millisecond\");break;case\"second\":this.current.add(this.step,\"second\");break;case\"minute\":this.current.add(this.step,\"minute\");break;case\"hour\":this.current.add(this.step,\"hour\");if(this.current.month()<6){this.current.subtract(this.current.hours()%this.step,\"hour\")}else{if(this.current.hours()%this.step!==0){this.current.add(this.step-this.current.hours()%this.step,\"hour\")}}break;case\"weekday\":case\"day\":this.current.add(this.step,\"day\");break;case\"week\":if(this.current.weekday()!==0){this.current.weekday(0);this.current.add(this.step,\"week\")}else if(this.options.showMajorLabels===false){this.current.add(this.step,\"week\")}else{var nextWeek=this.current.clone();nextWeek.add(1,\"week\");if(nextWeek.isSame(this.current,\"month\")){this.current.add(this.step,\"week\")}else{this.current.add(this.step,\"week\");this.current.date(1)}}break;case\"month\":this.current.add(this.step,\"month\");break;case\"year\":this.current.add(this.step,\"year\");break;default:break}if(this.step!=1){switch(this.scale){case\"millisecond\":if(this.current.milliseconds()>0&&this.current.milliseconds()<this.step)this.current.milliseconds(0);break;case\"second\":if(this.current.seconds()>0&&this.current.seconds()<this.step)this.current.seconds(0);break;case\"minute\":if(this.current.minutes()>0&&this.current.minutes()<this.step)this.current.minutes(0);break;case\"hour\":if(this.current.hours()>0&&this.current.hours()<this.step)this.current.hours(0);break;case\"weekday\":case\"day\":if(this.current.date()<this.step+1)this.current.date(1);break;case\"week\":if(this.current.week()<this.step)this.current.week(1);break;case\"month\":if(this.current.month()<this.step)this.current.month(0);break;case\"year\":break;default:break}}if(this.current.valueOf()==prev){this.current=this._end.clone()}this.switchedDay=false;this.switchedMonth=false;this.switchedYear=false;DateUtil.stepOverHiddenDates(this.moment,this,prev)};TimeStep.prototype.getCurrent=function(){return this.current};TimeStep.prototype.setScale=function(params){if(params&&typeof params.scale==\"string\"){this.scale=params.scale;this.step=params.step>0?params.step:1;this.autoScale=false}};TimeStep.prototype.setAutoScale=function(enable){this.autoScale=enable};TimeStep.prototype.setMinimumStep=function(minimumStep){if(minimumStep==undefined){return}var stepYear=1e3*60*60*24*30*12;var stepMonth=1e3*60*60*24*30;var stepDay=1e3*60*60*24;var stepHour=1e3*60*60;var stepMinute=1e3*60;var stepSecond=1e3;var stepMillisecond=1;if(stepYear*1e3>minimumStep){this.scale=\"year\";this.step=1e3}if(stepYear*500>minimumStep){this.scale=\"year\";this.step=500}if(stepYear*100>minimumStep){this.scale=\"year\";this.step=100}if(stepYear*50>minimumStep){this.scale=\"year\";this.step=50}if(stepYear*10>minimumStep){this.scale=\"year\";this.step=10}if(stepYear*5>minimumStep){this.scale=\"year\";this.step=5}if(stepYear>minimumStep){this.scale=\"year\";this.step=1}if(stepMonth*3>minimumStep){this.scale=\"month\";this.step=3}if(stepMonth>minimumStep){this.scale=\"month\";this.step=1}if(stepDay*5>minimumStep){this.scale=\"day\";this.step=5}if(stepDay*2>minimumStep){this.scale=\"day\";this.step=2}if(stepDay>minimumStep){this.scale=\"day\";this.step=1}if(stepDay/2>minimumStep){this.scale=\"weekday\";this.step=1}if(stepHour*4>minimumStep){this.scale=\"hour\";this.step=4}if(stepHour>minimumStep){this.scale=\"hour\";this.step=1}if(stepMinute*15>minimumStep){this.scale=\"minute\";this.step=15}if(stepMinute*10>minimumStep){this.scale=\"minute\";this.step=10}if(stepMinute*5>minimumStep){this.scale=\"minute\";this.step=5}if(stepMinute>minimumStep){this.scale=\"minute\";this.step=1}if(stepSecond*15>minimumStep){this.scale=\"second\";this.step=15}if(stepSecond*10>minimumStep){this.scale=\"second\";this.step=10}if(stepSecond*5>minimumStep){this.scale=\"second\";this.step=5}if(stepSecond>minimumStep){this.scale=\"second\";this.step=1}if(stepMillisecond*200>minimumStep){this.scale=\"millisecond\";this.step=200}if(stepMillisecond*100>minimumStep){this.scale=\"millisecond\";this.step=100}if(stepMillisecond*50>minimumStep){this.scale=\"millisecond\";this.step=50}if(stepMillisecond*10>minimumStep){this.scale=\"millisecond\";this.step=10}if(stepMillisecond*5>minimumStep){this.scale=\"millisecond\";this.step=5}if(stepMillisecond>minimumStep){this.scale=\"millisecond\";this.step=1}};TimeStep.snap=function(date,scale,step){var clone=moment(date);if(scale==\"year\"){var year=clone.year()+Math.round(clone.month()/12);clone.year(Math.round(year/step)*step);clone.month(0);clone.date(0);clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"month\"){if(clone.date()>15){clone.date(1);clone.add(1,\"month\")}else{clone.date(1)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"week\"){if(clone.weekday()>2){clone.weekday(0);clone.add(1,\"week\")}else{clone.weekday(0)}clone.hours(0);clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"day\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/24)*24);break;default:clone.hours(Math.round(clone.hours()/12)*12);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"weekday\"){switch(step){case 5:case 2:clone.hours(Math.round(clone.hours()/12)*12);break;default:clone.hours(Math.round(clone.hours()/6)*6);break}clone.minutes(0);clone.seconds(0);clone.milliseconds(0)}else if(scale==\"hour\"){switch(step){case 4:clone.minutes(Math.round(clone.minutes()/60)*60);break;default:clone.minutes(Math.round(clone.minutes()/30)*30);break}clone.seconds(0);clone.milliseconds(0)}else if(scale==\"minute\"){switch(step){case 15:case 10:clone.minutes(Math.round(clone.minutes()/5)*5);clone.seconds(0);break;case 5:clone.seconds(Math.round(clone.seconds()/60)*60);break;default:clone.seconds(Math.round(clone.seconds()/30)*30);break}clone.milliseconds(0)}else if(scale==\"second\"){switch(step){case 15:case 10:clone.seconds(Math.round(clone.seconds()/5)*5);clone.milliseconds(0);break;case 5:clone.milliseconds(Math.round(clone.milliseconds()/1e3)*1e3);break;default:clone.milliseconds(Math.round(clone.milliseconds()/500)*500);break}}else if(scale==\"millisecond\"){var _step=step>5?step/2:1;clone.milliseconds(Math.round(clone.milliseconds()/_step)*_step)}return clone};TimeStep.prototype.isMajor=function(){if(this.switchedYear==true){switch(this.scale){case\"year\":case\"month\":case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedMonth==true){switch(this.scale){case\"week\":case\"weekday\":case\"day\":case\"hour\":case\"minute\":case\"second\":case\"millisecond\":return true;default:return false}}else if(this.switchedDay==true){switch(this.scale){case\"millisecond\":case\"second\":case\"minute\":case\"hour\":return true;default:return false}}var date=this.moment(this.current);switch(this.scale){case\"millisecond\":return date.milliseconds()==0;case\"second\":return date.seconds()==0;case\"minute\":return date.hours()==0&&date.minutes()==0;case\"hour\":return date.hours()==0;case\"weekday\":case\"day\":return date.date()==1;case\"week\":return date.date()==1;case\"month\":return date.month()==0;case\"year\":return false;default:return false}};TimeStep.prototype.getLabelMinor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.minorLabels===\"function\"){return this.format.minorLabels(date,this.scale,this.step)}var format=this.format.minorLabels[this.scale];switch(this.scale){case\"week\":if(this.isMajor()&&date.weekday()!==0){return\"\"}default:return format&&format.length>0?this.moment(date).format(format):\"\"}};TimeStep.prototype.getLabelMajor=function(date){if(date==undefined){date=this.current}if(date instanceof Date){date=this.moment(date)}if(typeof this.format.majorLabels===\"function\"){return this.format.majorLabels(date,this.scale,this.step)}var format=this.format.majorLabels[this.scale];return format&&format.length>0?this.moment(date).format(format):\"\"};TimeStep.prototype.getClassName=function(){var _moment=this.moment;var m=this.moment(this.current);var current=m.locale?m.locale(\"en\"):m.lang(\"en\");var step=this.step;var classNames=[];function even(value){return value/step%2==0?\" vis-even\":\" vis-odd\"}function today(date){if(date.isSame(new Date,\"day\")){return\" vis-today\"}if(date.isSame(_moment().add(1,\"day\"),\"day\")){return\" vis-tomorrow\"}if(date.isSame(_moment().add(-1,\"day\"),\"day\")){return\" vis-yesterday\"}return\"\"}function currentWeek(date){return date.isSame(new Date,\"week\")?\" vis-current-week\":\"\"}function currentMonth(date){return date.isSame(new Date,\"month\")?\" vis-current-month\":\"\"}function currentYear(date){return date.isSame(new Date,\"year\")?\" vis-current-year\":\"\"}switch(this.scale){case\"millisecond\":classNames.push(today(current));classNames.push(even(current.milliseconds()));break;case\"second\":classNames.push(today(current));classNames.push(even(current.seconds()));break;case\"minute\":classNames.push(today(current));classNames.push(even(current.minutes()));break;case\"hour\":classNames.push(\"vis-h\"+current.hours()+(this.step==4?\"-h\"+(current.hours()+4):\"\"));classNames.push(today(current));classNames.push(even(current.hours()));break;case\"weekday\":classNames.push(\"vis-\"+current.format(\"dddd\").toLowerCase());classNames.push(today(current));classNames.push(currentWeek(current));classNames.push(even(current.date()));break;case\"day\":classNames.push(\"vis-day\"+current.date());classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(today(current));classNames.push(currentMonth(current));classNames.push(this.step<=2?today(current):\"\");classNames.push(this.step<=2?\"vis-\"+current.format(\"dddd\").toLowerCase():\"\");classNames.push(even(current.date()-1));break;case\"week\":classNames.push(\"vis-week\"+current.format(\"w\"));classNames.push(currentWeek(current));classNames.push(even(current.week()));break;case\"month\":classNames.push(\"vis-\"+current.format(\"MMMM\").toLowerCase());classNames.push(currentMonth(current));classNames.push(even(current.month()));break;case\"year\":classNames.push(\"vis-year\"+current.year());classNames.push(currentYear(current));classNames.push(even(current.year()));break}return classNames.filter(String).join(\" \")};module.exports=TimeStep},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);var Component=__webpack_require__(16);var moment=__webpack_require__(9);var locales=__webpack_require__(98);function CurrentTime(body,options){this.body=body;this.defaultOptions={rtl:false,showCurrentTime:true,moment:moment,locales:locales,locale:\"en\"};this.options=util.extend({},this.defaultOptions);this.offset=0;this._create();this.setOptions(options)}CurrentTime.prototype=new Component;CurrentTime.prototype._create=function(){var bar=document.createElement(\"div\");bar.className=\"vis-current-time\";bar.style.position=\"absolute\";bar.style.top=\"0px\";bar.style.height=\"100%\";this.bar=bar};CurrentTime.prototype.destroy=function(){this.options.showCurrentTime=false;this.redraw();this.body=null};CurrentTime.prototype.setOptions=function(options){if(options){util.selectiveExtend([\"rtl\",\"showCurrentTime\",\"moment\",\"locale\",\"locales\"],this.options,options)}};CurrentTime.prototype.redraw=function(){if(this.options.showCurrentTime){var parent=this.body.dom.backgroundVertical;if(this.bar.parentNode!=parent){if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}parent.appendChild(this.bar);this.start()}var now=this.options.moment((new Date).valueOf()+this.offset);var x=this.body.util.toScreen(now);var locale=this.options.locales[this.options.locale];if(!locale){if(!this.warned){console.log(\"WARNING: options.locales['\"+this.options.locale+\"'] not found. See http://visjs.org/docs/timeline/#Localization\");this.warned=true}locale=this.options.locales[\"en\"]}var title=locale.current+\" \"+locale.time+\": \"+now.format(\"dddd, MMMM Do YYYY, H:mm:ss\");title=title.charAt(0).toUpperCase()+title.substring(1);if(this.options.rtl){this.bar.style.right=x+\"px\"}else{this.bar.style.left=x+\"px\"}this.bar.title=title}else{if(this.bar.parentNode){this.bar.parentNode.removeChild(this.bar)}this.stop()}return false};CurrentTime.prototype.start=function(){var me=this;function update(){me.stop();var scale=me.body.range.conversion(me.body.domProps.center.width).scale;var interval=1/scale/10;if(interval<30)interval=30;if(interval>1e3)interval=1e3;me.redraw();me.body.emitter.emit(\"currentTimeTick\");me.currentTimeTimer=setTimeout(update,interval)}update()};CurrentTime.prototype.stop=function(){if(this.currentTimeTimer!==undefined){clearTimeout(this.currentTimeTimer);delete this.currentTimeTimer}};CurrentTime.prototype.setCurrentTime=function(time){var t=util.convert(time,\"Date\").valueOf();var now=(new Date).valueOf();this.offset=t-now;this.redraw()};CurrentTime.prototype.getCurrentTime=function(){return new Date((new Date).valueOf()+this.offset)};module.exports=CurrentTime},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var stack=__webpack_require__(100);function Group(groupId,data,itemSet){this.groupId=groupId;this.subgroups={};this.subgroupStack={};this.subgroupStackAll=false;this.doInnerStack=false;this.subgroupIndex=0;this.subgroupOrderer=data&&data.subgroupOrder;this.itemSet=itemSet;this.isVisible=null;this.stackDirty=true;if(data&&data.nestedGroups){this.nestedGroups=data.nestedGroups;if(data.showNested==false){this.showNested=false}else{this.showNested=true}}if(data&&data.subgroupStack){if(typeof data.subgroupStack===\"boolean\"){this.doInnerStack=data.subgroupStack;this.subgroupStackAll=data.subgroupStack}else{for(var key in data.subgroupStack){this.subgroupStack[key]=data.subgroupStack[key];this.doInnerStack=this.doInnerStack||data.subgroupStack[key]}}}this.nestedInGroup=null;this.dom={};this.props={label:{width:0,height:0}};this.className=null;this.items={};this.visibleItems=[];this.itemsInRange=[];this.orderedItems={byStart:[],byEnd:[]};this.checkRangedItems=false;var me=this;this.itemSet.body.emitter.on(\"checkRangedItems\",function(){me.checkRangedItems=true});this._create();this.setData(data)}Group.prototype._create=function(){var label=document.createElement(\"div\");if(this.itemSet.options.groupEditable.order){label.className=\"vis-label draggable\"}else{label.className=\"vis-label\"}this.dom.label=label;var inner=document.createElement(\"div\");inner.className=\"vis-inner\";label.appendChild(inner);this.dom.inner=inner;var foreground=document.createElement(\"div\");foreground.className=\"vis-group\";foreground[\"timeline-group\"]=this;this.dom.foreground=foreground;this.dom.background=document.createElement(\"div\");this.dom.background.className=\"vis-group\";this.dom.axis=document.createElement(\"div\");this.dom.axis.className=\"vis-group\";this.dom.marker=document.createElement(\"div\");this.dom.marker.style.visibility=\"hidden\";this.dom.marker.style.position=\"absolute\";this.dom.marker.innerHTML=\"\";this.dom.background.appendChild(this.dom.marker)};Group.prototype.setData=function(data){var content;var templateFunction;if(this.itemSet.options&&this.itemSet.options.groupTemplate){templateFunction=this.itemSet.options.groupTemplate.bind(this);content=templateFunction(data,this.dom.inner)}else{content=data&&data.content}if(content instanceof Element){this.dom.inner.appendChild(content);while(this.dom.inner.firstChild){this.dom.inner.removeChild(this.dom.inner.firstChild)}this.dom.inner.appendChild(content)}else if(content instanceof Object){templateFunction(data,this.dom.inner)}else if(content!==undefined&&content!==null){this.dom.inner.innerHTML=content}else{this.dom.inner.innerHTML=this.groupId||\"\"}this.dom.label.title=data&&data.title||\"\";if(!this.dom.inner.firstChild){util.addClassName(this.dom.inner,\"vis-hidden\")}else{util.removeClassName(this.dom.inner,\"vis-hidden\")}if(data&&data.nestedGroups){if(!this.nestedGroups||this.nestedGroups!=data.nestedGroups){this.nestedGroups=data.nestedGroups}if(data.showNested!==undefined||this.showNested===undefined){if(data.showNested==false){this.showNested=false}else{this.showNested=true}}util.addClassName(this.dom.label,\"vis-nesting-group\");var collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";if(this.showNested){util.removeClassName(this.dom.label,collapsedDirClassName);util.addClassName(this.dom.label,\"expanded\")}else{util.removeClassName(this.dom.label,\"expanded\");util.addClassName(this.dom.label,collapsedDirClassName)}}else if(this.nestedGroups){this.nestedGroups=null;collapsedDirClassName=this.itemSet.options.rtl?\"collapsed-rtl\":\"collapsed\";util.removeClassName(this.dom.label,collapsedDirClassName);util.removeClassName(this.dom.label,\"expanded\");util.removeClassName(this.dom.label,\"vis-nesting-group\")}if(data&&data.nestedInGroup){util.addClassName(this.dom.label,\"vis-nested-group\");if(this.itemSet.options&&this.itemSet.options.rtl){this.dom.inner.style.paddingRight=\"30px\"}else{\nthis.dom.inner.style.paddingLeft=\"30px\"}}var className=data&&data.className||null;if(className!=this.className){if(this.className){util.removeClassName(this.dom.label,this.className);util.removeClassName(this.dom.foreground,this.className);util.removeClassName(this.dom.background,this.className);util.removeClassName(this.dom.axis,this.className)}util.addClassName(this.dom.label,className);util.addClassName(this.dom.foreground,className);util.addClassName(this.dom.background,className);util.addClassName(this.dom.axis,className);this.className=className}if(this.style){util.removeCssText(this.dom.label,this.style);this.style=null}if(data&&data.style){util.addCssText(this.dom.label,data.style);this.style=data.style}};Group.prototype.getLabelWidth=function(){return this.props.label.width};Group.prototype._didMarkerHeightChange=function(){var markerHeight=this.dom.marker.clientHeight;if(markerHeight!=this.lastMarkerHeight){this.lastMarkerHeight=markerHeight;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){item.dirty=true;if(item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}return true}};Group.prototype._calculateGroupSizeAndPosition=function(){var offsetTop=this.dom.foreground.offsetTop;var offsetLeft=this.dom.foreground.offsetLeft;var offsetWidth=this.dom.foreground.offsetWidth;this.top=offsetTop;this.right=offsetLeft;this.width=offsetWidth};Group.prototype._redrawItems=function(forceRestack,lastIsVisible,margin,range){var restack=forceRestack||this.stackDirty||this.isVisible&&!lastIsVisible;if(restack){var visibleSubgroups={};var subgroup=null;if(typeof this.itemSet.options.order===\"function\"){var me=this;var limitSize=false;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.items,function(item,key){if(!item.displayed){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length;me.visibleItems.push(item)}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.items,function(item){item.repositionX(limitSize)});if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)})}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{var customOrderedItems=this.orderedItems.byStart.slice().sort(function(a,b){return me.itemSet.options.order(a.data,b.data)});stack.stack(customOrderedItems,margin,true)}this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range)}else{this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);if(this.itemSet.options.stack){if(this.doInnerStack&&this.itemSet.options.stackSubgroups){for(subgroup in this.subgroups){visibleSubgroups[subgroup]=this.subgroups[subgroup].items}stack.stackSubgroupsWithInnerStack(visibleSubgroups,margin,this.subgroups)}else{stack.stack(this.visibleItems,margin,true)}}else{stack.nostack(this.visibleItems,margin,this.subgroups,this.itemSet.options.stackSubgroups)}}this.stackDirty=false}};Group.prototype._didResize=function(resized,height){resized=util.updateProperty(this,\"height\",height)||resized;var labelWidth=this.dom.inner.clientWidth;var labelHeight=this.dom.inner.clientHeight;resized=util.updateProperty(this.props.label,\"width\",labelWidth)||resized;resized=util.updateProperty(this.props.label,\"height\",labelHeight)||resized;return resized};Group.prototype._applyGroupHeight=function(height){this.dom.background.style.height=height+\"px\";this.dom.foreground.style.height=height+\"px\";this.dom.label.style.height=height+\"px\"};Group.prototype._updateItemsVerticalPosition=function(margin){for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin);if(!this.isVisible&&this.groupId!=\"__background__\"){if(item.displayed)item.hide()}}};Group.prototype.redraw=function(range,margin,forceRestack,returnQueue){var resized=false;var lastIsVisible=this.isVisible;var height;var queue=[function(){forceRestack=this._didMarkerHeightChange.bind(this)}.bind(this),this._updateSubGroupHeights.bind(this,margin),this._calculateGroupSizeAndPosition.bind(this),function(){this.isVisible=this._isGroupVisible.bind(this)(range,margin)}.bind(this),function(){this._redrawItems.bind(this)(forceRestack,lastIsVisible,margin,range)}.bind(this),this._updateSubgroupsSizes.bind(this),function(){height=this._calculateHeight.bind(this)(margin)}.bind(this),this._calculateGroupSizeAndPosition.bind(this),function(){resized=this._didResize.bind(this)(resized,height)}.bind(this),function(){this._applyGroupHeight.bind(this)(height)}.bind(this),function(){this._updateItemsVerticalPosition.bind(this)(margin)}.bind(this),function(){if(!this.isVisible&&this.height){resized=false}return resized}];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};Group.prototype._updateSubGroupHeights=function(margin){if((0,_keys2[\"default\"])(this.subgroups).length>0){var me=this;this.resetSubgroups();util.forEach(this.visibleItems,function(item){if(item.data.subgroup!==undefined){me.subgroups[item.data.subgroup].height=Math.max(me.subgroups[item.data.subgroup].height,item.height+margin.item.vertical);me.subgroups[item.data.subgroup].visible=true}})}};Group.prototype._isGroupVisible=function(range,margin){return this.top<=range.body.domProps.centerContainer.height-range.body.domProps.scrollTop+margin.axis&&this.top+this.height+margin.axis>=-range.body.domProps.scrollTop};Group.prototype._calculateHeight=function(margin){var height;var itemsInRange=this.visibleItems;if(itemsInRange.length>0){var min=itemsInRange[0].top;var max=itemsInRange[0].top+itemsInRange[0].height;util.forEach(itemsInRange,function(item){min=Math.min(min,item.top);max=Math.max(max,item.top+item.height)});if(min>margin.axis){var offset=min-margin.axis;max-=offset;util.forEach(itemsInRange,function(item){item.top-=offset})}height=max+margin.item.vertical/2}else{height=0}height=Math.max(height,this.props.label.height);return height};Group.prototype.show=function(){if(!this.dom.label.parentNode){this.itemSet.dom.labelSet.appendChild(this.dom.label)}if(!this.dom.foreground.parentNode){this.itemSet.dom.foreground.appendChild(this.dom.foreground)}if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}if(!this.dom.axis.parentNode){this.itemSet.dom.axis.appendChild(this.dom.axis)}};Group.prototype.hide=function(){var label=this.dom.label;if(label.parentNode){label.parentNode.removeChild(label)}var foreground=this.dom.foreground;if(foreground.parentNode){foreground.parentNode.removeChild(foreground)}var background=this.dom.background;if(background.parentNode){background.parentNode.removeChild(background)}var axis=this.dom.axis;if(axis.parentNode){axis.parentNode.removeChild(axis)}};Group.prototype.add=function(item){this.items[item.id]=item;item.setParent(this);this.stackDirty=true;if(item.data.subgroup!==undefined){this._addToSubgroup(item);this.orderSubgroups()}if(this.visibleItems.indexOf(item)==-1){var range=this.itemSet.body.range;this._checkIfVisible(item,this.visibleItems,range)}};Group.prototype._addToSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined&&this.subgroups[subgroupId]===undefined){this.subgroups[subgroupId]={height:0,top:0,start:item.data.start,end:item.data.end||item.data.start,visible:false,index:this.subgroupIndex,items:[],stack:this.subgroupStackAll||this.subgroupStack[subgroupId]||false};this.subgroupIndex++}if(new Date(item.data.start)<new Date(this.subgroups[subgroupId].start)){this.subgroups[subgroupId].start=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(this.subgroups[subgroupId].end)){this.subgroups[subgroupId].end=itemEnd}this.subgroups[subgroupId].items.push(item)};Group.prototype._updateSubgroupsSizes=function(){var me=this;if(me.subgroups){for(var subgroup in me.subgroups){var initialEnd=me.subgroups[subgroup].items[0].data.end||me.subgroups[subgroup].items[0].data.start;var newStart=me.subgroups[subgroup].items[0].data.start;var newEnd=initialEnd-1;me.subgroups[subgroup].items.forEach(function(item){if(new Date(item.data.start)<new Date(newStart)){newStart=item.data.start}var itemEnd=item.data.end||item.data.start;if(new Date(itemEnd)>new Date(newEnd)){newEnd=itemEnd}});me.subgroups[subgroup].start=newStart;me.subgroups[subgroup].end=new Date(newEnd-1)}}};Group.prototype.orderSubgroups=function(){if(this.subgroupOrderer!==undefined){var sortArray=[];var subgroup;if(typeof this.subgroupOrderer==\"string\"){for(subgroup in this.subgroups){sortArray.push({subgroup:subgroup,sortField:this.subgroups[subgroup].items[0].data[this.subgroupOrderer]})}sortArray.sort(function(a,b){return a.sortField-b.sortField})}else if(typeof this.subgroupOrderer==\"function\"){for(subgroup in this.subgroups){sortArray.push(this.subgroups[subgroup].items[0].data)}sortArray.sort(this.subgroupOrderer)}if(sortArray.length>0){for(var i=0;i<sortArray.length;i++){this.subgroups[sortArray[i].subgroup].index=i}}}};Group.prototype.resetSubgroups=function(){for(var subgroup in this.subgroups){if(this.subgroups.hasOwnProperty(subgroup)){this.subgroups[subgroup].visible=false;this.subgroups[subgroup].height=0}}};Group.prototype.remove=function(item){delete this.items[item.id];item.setParent(null);this.stackDirty=true;var index=this.visibleItems.indexOf(item);if(index!=-1)this.visibleItems.splice(index,1);if(item.data.subgroup!==undefined){this._removeFromSubgroup(item);this.orderSubgroups()}};Group.prototype._removeFromSubgroup=function(item,subgroupId){subgroupId=subgroupId||item.data.subgroup;if(subgroupId!=undefined){var subgroup=this.subgroups[subgroupId];if(subgroup){var itemIndex=subgroup.items.indexOf(item);if(itemIndex>=0){subgroup.items.splice(itemIndex,1);if(!subgroup.items.length){delete this.subgroups[subgroupId]}else{this._updateSubgroupsSizes()}}}}};Group.prototype.removeFromDataSet=function(item){this.itemSet.removeItem(item.id)};Group.prototype.order=function(){var array=util.toArray(this.items);var startArray=[];var endArray=[];for(var i=0;i<array.length;i++){if(array[i].data.end!==undefined){endArray.push(array[i])}startArray.push(array[i])}this.orderedItems={byStart:startArray,byEnd:endArray};stack.orderByStart(this.orderedItems.byStart);stack.orderByEnd(this.orderedItems.byEnd)};Group.prototype._updateItemsInRange=function(orderedItems,oldVisibleItems,range){var visibleItems=[];var visibleItemsLookup={};var interval=(range.end-range.start)/4;var lowerBound=range.start-interval;var upperBound=range.end+interval;var searchFunction=function searchFunction(value){if(value<lowerBound){return-1}else if(value<=upperBound){return 0}else{return 1}};if(oldVisibleItems.length>0){for(var i=0;i<oldVisibleItems.length;i++){this._checkIfVisibleWithReference(oldVisibleItems[i],visibleItems,visibleItemsLookup,range)}}var initialPosByStart=util.binarySearchCustom(orderedItems.byStart,searchFunction,\"data\",\"start\");this._traceVisible(initialPosByStart,orderedItems.byStart,visibleItems,visibleItemsLookup,function(item){return item.data.start<lowerBound||item.data.start>upperBound});if(this.checkRangedItems==true){this.checkRangedItems=false;for(i=0;i<orderedItems.byEnd.length;i++){this._checkIfVisibleWithReference(orderedItems.byEnd[i],visibleItems,visibleItemsLookup,range)}}else{var initialPosByEnd=util.binarySearchCustom(orderedItems.byEnd,searchFunction,\"data\",\"end\");this._traceVisible(initialPosByEnd,orderedItems.byEnd,visibleItems,visibleItemsLookup,function(item){return item.data.end<lowerBound||item.data.end>upperBound})}var redrawQueue={};var redrawQueueLength=0;for(i=0;i<visibleItems.length;i++){var item=visibleItems[i];if(!item.displayed){var returnQueue=true;redrawQueue[i]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[i].length}}var needRedraw=redrawQueueLength>0;if(needRedraw){for(var j=0;j<redrawQueueLength;j++){util.forEach(redrawQueue,function(fns){fns[j]()})}}for(i=0;i<visibleItems.length;i++){visibleItems[i].repositionX()}return visibleItems};Group.prototype._traceVisible=function(initialPos,items,visibleItems,visibleItemsLookup,breakCondition){if(initialPos!=-1){var i,item;for(i=initialPos;i>=0;i--){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}for(i=initialPos+1;i<items.length;i++){item=items[i];if(breakCondition(item)){break}else{if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}}}};Group.prototype._checkIfVisible=function(item,visibleItems,range){if(item.isVisible(range)){if(!item.displayed)item.show();item.repositionX();visibleItems.push(item)}else{if(item.displayed)item.hide()}};Group.prototype._checkIfVisibleWithReference=function(item,visibleItems,visibleItemsLookup,range){if(item.isVisible(range)){if(visibleItemsLookup[item.id]===undefined){visibleItemsLookup[item.id]=true;visibleItems.push(item)}}else{if(item.displayed)item.hide()}};Group.prototype.changeSubgroup=function(item,oldSubgroup,newSubgroup){this._removeFromSubgroup(item,oldSubgroup);this._addToSubgroup(item,newSubgroup);this.orderSubgroups()};module.exports=Group},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Group=__webpack_require__(68);function BackgroundGroup(groupId,data,itemSet){Group.call(this,groupId,data,itemSet);this.width=0;this.height=0;this.top=0;this.left=0}BackgroundGroup.prototype=(0,_create2[\"default\"])(Group.prototype);BackgroundGroup.prototype.redraw=function(range,margin,forceRestack){var resized=false;this.visibleItems=this._updateItemsInRange(this.orderedItems,this.visibleItems,range);this.width=this.dom.background.offsetWidth;this.dom.background.style.height=\"0\";for(var i=0,ii=this.visibleItems.length;i<ii;i++){var item=this.visibleItems[i];item.repositionY(margin)}return resized};BackgroundGroup.prototype.show=function(){if(!this.dom.background.parentNode){this.itemSet.dom.background.appendChild(this.dom.background)}};module.exports=BackgroundGroup},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function RangeItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}RangeItem.prototype=new Item(null,null,null);RangeItem.prototype.baseClassName=\"vis-item vis-range\";RangeItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};RangeItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.visibleFrame=document.createElement(\"div\");this.dom.visibleFrame.className=\"vis-item-visible-frame\";this.dom.box.appendChild(this.dom.visibleFrame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dom.box[\"timeline-item\"]=this;this.dirty=true}};RangeItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.box)}this.displayed=true};RangeItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=this.baseClassName+className;this.dom.content.style.maxWidth=\"none\"}};RangeItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.frame).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth},box:{height:this.dom.box.offsetHeight}}};RangeItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=sizes.box.height;this.dom.content.style.maxWidth=\"\";this.dirty=false};RangeItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDeleteButton(this.dom.box);this._repaintDragCenter();this._repaintDragLeft();this._repaintDragRight()};RangeItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};RangeItem.prototype.show=function(){if(!this.displayed){this.redraw()}};RangeItem.prototype.hide=function(){if(this.displayed){var box=this.dom.box;if(box.parentNode){box.parentNode.removeChild(box)}this.displayed=false}};RangeItem.prototype.repositionX=function(limitSize){var parentWidth=this.parent.width;var start=this.conversion.toScreen(this.data.start);var end=this.conversion.toScreen(this.data.end);var align=this.data.align===undefined?this.options.align:this.data.align;var contentStartPosition;var contentWidth;if(this.data.limitSize!==false&&(limitSize===undefined||limitSize===true)){if(start<-parentWidth){start=-parentWidth}if(end>2*parentWidth){end=2*parentWidth}}var boxWidth=Math.max(end-start+.5,1);if(this.overflow){if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth+this.props.content.width;contentWidth=this.props.content.width}else{if(this.options.rtl){this.right=start}else{this.left=start}this.width=boxWidth;contentWidth=Math.min(end-start,this.props.content.width)}if(this.options.rtl){this.dom.box.style.right=this.right+\"px\"}else{this.dom.box.style.left=this.left+\"px\"}this.dom.box.style.width=boxWidth+\"px\";switch(align){case\"left\":if(this.options.rtl){this.dom.content.style.right=\"0\"}else{this.dom.content.style.left=\"0\"}break;case\"right\":if(this.options.rtl){this.dom.content.style.right=Math.max(boxWidth-contentWidth,0)+\"px\"}else{this.dom.content.style.left=Math.max(boxWidth-contentWidth,0)+\"px\"}break;case\"center\":if(this.options.rtl){this.dom.content.style.right=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}else{this.dom.content.style.left=Math.max((boxWidth-contentWidth)/2,0)+\"px\"}break;default:if(this.overflow){if(end>0){contentStartPosition=Math.max(-start,0)}else{contentStartPosition=-contentWidth}}else{if(start<0){contentStartPosition=-start}else{contentStartPosition=0}}if(this.options.rtl){this.dom.content.style.right=contentStartPosition+\"px\"}else{this.dom.content.style.left=contentStartPosition+\"px\";this.dom.content.style.width=\"calc(100% - \"+contentStartPosition+\"px)\"}}};RangeItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;if(orientation==\"top\"){box.style.top=this.top+\"px\"}else{box.style.top=this.parent.height-this.top-this.height+\"px\"}};RangeItem.prototype._repaintDragLeft=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragLeft){var dragLeft=document.createElement(\"div\");dragLeft.className=\"vis-drag-left\";dragLeft.dragLeftItem=this;this.dom.box.appendChild(dragLeft);this.dom.dragLeft=dragLeft}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragLeft){if(this.dom.dragLeft.parentNode){this.dom.dragLeft.parentNode.removeChild(this.dom.dragLeft)}this.dom.dragLeft=null}};RangeItem.prototype._repaintDragRight=function(){if((this.selected||this.options.itemsAlwaysDraggable.range)&&this.options.editable.updateTime&&!this.dom.dragRight){var dragRight=document.createElement(\"div\");dragRight.className=\"vis-drag-right\";dragRight.dragRightItem=this;this.dom.box.appendChild(dragRight);this.dom.dragRight=dragRight}else if(!this.selected&&!this.options.itemsAlwaysDraggable.range&&this.dom.dragRight){if(this.dom.dragRight.parentNode){this.dom.dragRight.parentNode.removeChild(this.dom.dragRight)}this.dom.dragRight=null}};module.exports=RangeItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ColorPicker=__webpack_require__(179)[\"default\"];var Configurator=function(){function Configurator(parentModule,defaultContainer,configureOptions){var pixelRatio=arguments.length>3&&arguments[3]!==undefined?arguments[3]:1;(0,_classCallCheck3[\"default\"])(this,Configurator);this.parent=parentModule;this.changedOptions=[];this.container=defaultContainer;this.allowCreation=false;this.options={};this.initialized=false;this.popupCounter=0;this.defaultOptions={enabled:false,filter:true,container:undefined,showButton:true};util.extend(this.options,this.defaultOptions);this.configureOptions=configureOptions;this.moduleOptions={};this.domElements=[];this.popupDiv={};this.popupLimit=5;this.popupHistory={};this.colorPicker=new ColorPicker(pixelRatio);this.wrapper=undefined}(0,_createClass3[\"default\"])(Configurator,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.popupHistory={};this._removePopup();var enabled=true;if(typeof options===\"string\"){this.options.filter=options}else if(options instanceof Array){this.options.filter=options.join()}else if((typeof options===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(options))===\"object\"){if(options.container!==undefined){this.options.container=options.container}if(options.filter!==undefined){this.options.filter=options.filter}if(options.showButton!==undefined){this.options.showButton=options.showButton}if(options.enabled!==undefined){enabled=options.enabled}}else if(typeof options===\"boolean\"){this.options.filter=true;enabled=options}else if(typeof options===\"function\"){this.options.filter=options;enabled=true}if(this.options.filter===false){enabled=false}this.options.enabled=enabled}this._clean()}},{key:\"setModuleOptions\",value:function setModuleOptions(moduleOptions){this.moduleOptions=moduleOptions;if(this.options.enabled===true){this._clean();if(this.options.container!==undefined){this.container=this.options.container}this._create()}}},{key:\"_create\",value:function _create(){var _this=this;this._clean();this.changedOptions=[];var filter=this.options.filter;var counter=0;var show=false;for(var option in this.configureOptions){if(this.configureOptions.hasOwnProperty(option)){this.allowCreation=false;show=false;if(typeof filter===\"function\"){show=filter(option,[]);show=show||this._handleObject(this.configureOptions[option],[option],true)}else if(filter===true||filter.indexOf(option)!==-1){show=true}if(show!==false){this.allowCreation=true;if(counter>0){this._makeItem([])}this._makeHeader(option);this._handleObject(this.configureOptions[option],[option])}counter++}}if(this.options.showButton===true){var generateButton=document.createElement(\"div\");generateButton.className=\"vis-configuration vis-config-button\";generateButton.innerHTML=\"generate options\";generateButton.onclick=function(){_this._printOptions()};generateButton.onmouseover=function(){generateButton.className=\"vis-configuration vis-config-button hover\"};generateButton.onmouseout=function(){generateButton.className=\"vis-configuration vis-config-button\"};this.optionsContainer=document.createElement(\"div\");this.optionsContainer.className=\"vis-configuration vis-config-option-container\";this.domElements.push(this.optionsContainer);this.domElements.push(generateButton)}this._push()}},{key:\"_push\",value:function _push(){this.wrapper=document.createElement(\"div\");this.wrapper.className=\"vis-configuration-wrapper\";this.container.appendChild(this.wrapper);for(var i=0;i<this.domElements.length;i++){this.wrapper.appendChild(this.domElements[i])}this._showPopupIfNeeded()}},{key:\"_clean\",value:function _clean(){for(var i=0;i<this.domElements.length;i++){this.wrapper.removeChild(this.domElements[i])}if(this.wrapper!==undefined){this.container.removeChild(this.wrapper);this.wrapper=undefined}this.domElements=[];this._removePopup()}},{key:\"_getValue\",value:function _getValue(path){var base=this.moduleOptions;for(var i=0;i<path.length;i++){if(base[path[i]]!==undefined){base=base[path[i]]}else{base=undefined;break}}return base}},{key:\"_makeItem\",value:function _makeItem(path){if(this.allowCreation===true){var item=document.createElement(\"div\");item.className=\"vis-configuration vis-config-item vis-config-s\"+path.length;for(var _len=arguments.length,domElements=Array(_len>1?_len-1:0),_key=1;_key<_len;_key++){domElements[_key-1]=arguments[_key]}domElements.forEach(function(element){item.appendChild(element)});this.domElements.push(item);return this.domElements.length}return 0}},{key:\"_makeHeader\",value:function _makeHeader(name){var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-header\";div.innerHTML=name;this._makeItem([],div)}},{key:\"_makeLabel\",value:function _makeLabel(name,path){var objectLabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var div=document.createElement(\"div\");div.className=\"vis-configuration vis-config-label vis-config-s\"+path.length;if(objectLabel===true){div.innerHTML=\"<i><b>\"+name+\":</b></i>\"}else{div.innerHTML=name+\":\"}return div}},{key:\"_makeDropdown\",value:function _makeDropdown(arr,value,path){var select=document.createElement(\"select\");select.className=\"vis-configuration vis-config-select\";var selectedValue=0;if(value!==undefined){if(arr.indexOf(value)!==-1){selectedValue=arr.indexOf(value)}}for(var i=0;i<arr.length;i++){var option=document.createElement(\"option\");option.value=arr[i];if(i===selectedValue){option.selected=\"selected\"}option.innerHTML=arr[i];select.appendChild(option)}var me=this;select.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,select)}},{key:\"_makeRange\",value:function _makeRange(arr,value,path){var defaultValue=arr[0];var min=arr[1];var max=arr[2];var step=arr[3];var range=document.createElement(\"input\");range.className=\"vis-configuration vis-config-range\";try{range.type=\"range\";range.min=min;range.max=max}catch(err){}range.step=step;var popupString=\"\";var popupValue=0;if(value!==undefined){var factor=1.2;if(value<0&&value*factor<min){range.min=Math.ceil(value*factor);popupValue=range.min;popupString=\"range increased\"}else if(value/factor<min){range.min=Math.ceil(value/factor);popupValue=range.min;popupString=\"range increased\"}if(value*factor>max&&max!==1){range.max=Math.ceil(value*factor);popupValue=range.max;popupString=\"range increased\"}range.value=value}else{range.value=defaultValue}var input=document.createElement(\"input\");input.className=\"vis-configuration vis-config-rangeinput\";input.value=range.value;var me=this;range.onchange=function(){input.value=this.value;me._update(Number(this.value),path)};range.oninput=function(){input.value=this.value};var label=this._makeLabel(path[path.length-1],path);var itemIndex=this._makeItem(path,label,range,input);if(popupString!==\"\"&&this.popupHistory[itemIndex]!==popupValue){this.popupHistory[itemIndex]=popupValue;this._setupPopup(popupString,itemIndex)}}},{key:\"_setupPopup\",value:function _setupPopup(string,index){var _this2=this;if(this.initialized===true&&this.allowCreation===true&&this.popupCounter<this.popupLimit){var div=document.createElement(\"div\");div.id=\"vis-configuration-popup\";div.className=\"vis-configuration-popup\";div.innerHTML=string;div.onclick=function(){_this2._removePopup()};this.popupCounter+=1;this.popupDiv={html:div,index:index}}}},{key:\"_removePopup\",value:function _removePopup(){if(this.popupDiv.html!==undefined){this.popupDiv.html.parentNode.removeChild(this.popupDiv.html);clearTimeout(this.popupDiv.hideTimeout);clearTimeout(this.popupDiv.deleteTimeout);this.popupDiv={}}}},{key:\"_showPopupIfNeeded\",value:function _showPopupIfNeeded(){var _this3=this;if(this.popupDiv.html!==undefined){var correspondingElement=this.domElements[this.popupDiv.index];var rect=correspondingElement.getBoundingClientRect();this.popupDiv.html.style.left=rect.left+\"px\";this.popupDiv.html.style.top=rect.top-30+\"px\";document.body.appendChild(this.popupDiv.html);this.popupDiv.hideTimeout=setTimeout(function(){_this3.popupDiv.html.style.opacity=0},1500);this.popupDiv.deleteTimeout=setTimeout(function(){_this3._removePopup()},1800)}}},{key:\"_makeCheckbox\",value:function _makeCheckbox(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"checkbox\";checkbox.className=\"vis-configuration vis-config-checkbox\";checkbox.checked=defaultValue;if(value!==undefined){checkbox.checked=value;if(value!==defaultValue){if((typeof defaultValue===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(defaultValue))===\"object\"){if(value!==defaultValue.enabled){this.changedOptions.push({path:path,value:value})}}else{this.changedOptions.push({path:path,value:value})}}}var me=this;checkbox.onchange=function(){me._update(this.checked,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeTextInput\",value:function _makeTextInput(defaultValue,value,path){var checkbox=document.createElement(\"input\");checkbox.type=\"text\";checkbox.className=\"vis-configuration vis-config-text\";checkbox.value=value;if(value!==defaultValue){this.changedOptions.push({path:path,value:value})}var me=this;checkbox.onchange=function(){me._update(this.value,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,checkbox)}},{key:\"_makeColorField\",value:function _makeColorField(arr,value,path){var _this4=this;var defaultColor=arr[1];var div=document.createElement(\"div\");value=value===undefined?defaultColor:value;if(value!==\"none\"){div.className=\"vis-configuration vis-config-colorBlock\";div.style.backgroundColor=value}else{div.className=\"vis-configuration vis-config-colorBlock none\"}value=value===undefined?defaultColor:value;div.onclick=function(){_this4._showColorPicker(value,div,path)};var label=this._makeLabel(path[path.length-1],path);this._makeItem(path,label,div)}},{key:\"_showColorPicker\",value:function _showColorPicker(value,div,path){var _this5=this;div.onclick=function(){};this.colorPicker.insertTo(div);this.colorPicker.show();this.colorPicker.setColor(value);this.colorPicker.setUpdateCallback(function(color){\nvar colorString=\"rgba(\"+color.r+\",\"+color.g+\",\"+color.b+\",\"+color.a+\")\";div.style.backgroundColor=colorString;_this5._update(colorString,path)});this.colorPicker.setCloseCallback(function(){div.onclick=function(){_this5._showColorPicker(value,div,path)}})}},{key:\"_handleObject\",value:function _handleObject(obj){var path=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var checkOnly=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var show=false;var filter=this.options.filter;var visibleInSet=false;for(var subObj in obj){if(obj.hasOwnProperty(subObj)){show=true;var item=obj[subObj];var newPath=util.copyAndExtendArray(path,subObj);if(typeof filter===\"function\"){show=filter(subObj,path);if(show===false){if(!(item instanceof Array)&&typeof item!==\"string\"&&typeof item!==\"boolean\"&&item instanceof Object){this.allowCreation=false;show=this._handleObject(item,newPath,true);this.allowCreation=checkOnly===false}}}if(show!==false){visibleInSet=true;var value=this._getValue(newPath);if(item instanceof Array){this._handleArray(item,value,newPath)}else if(typeof item===\"string\"){this._makeTextInput(item,value,newPath)}else if(typeof item===\"boolean\"){this._makeCheckbox(item,value,newPath)}else if(item instanceof Object){var draw=true;if(path.indexOf(\"physics\")!==-1){if(this.moduleOptions.physics.solver!==subObj){draw=false}}if(draw===true){if(item.enabled!==undefined){var enabledPath=util.copyAndExtendArray(newPath,\"enabled\");var enabledValue=this._getValue(enabledPath);if(enabledValue===true){var label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}else{this._makeCheckbox(item,enabledValue,newPath)}}else{var _label=this._makeLabel(subObj,newPath,true);this._makeItem(newPath,_label);visibleInSet=this._handleObject(item,newPath)||visibleInSet}}}else{console.error(\"dont know how to handle\",item,subObj,newPath)}}}}return visibleInSet}},{key:\"_handleArray\",value:function _handleArray(arr,value,path){if(typeof arr[0]===\"string\"&&arr[0]===\"color\"){this._makeColorField(arr,value,path);if(arr[1]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"string\"){this._makeDropdown(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:value})}}else if(typeof arr[0]===\"number\"){this._makeRange(arr,value,path);if(arr[0]!==value){this.changedOptions.push({path:path,value:Number(value)})}}}},{key:\"_update\",value:function _update(value,path){var options=this._constructOptions(value,path);if(this.parent.body&&this.parent.body.emitter&&this.parent.body.emitter.emit){this.parent.body.emitter.emit(\"configChange\",options)}this.initialized=true;this.parent.setOptions(options)}},{key:\"_constructOptions\",value:function _constructOptions(value,path){var optionsObj=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};var pointer=optionsObj;value=value===\"true\"?true:value;value=value===\"false\"?false:value;for(var i=0;i<path.length;i++){if(path[i]!==\"global\"){if(pointer[path[i]]===undefined){pointer[path[i]]={}}if(i!==path.length-1){pointer=pointer[path[i]]}else{pointer[path[i]]=value}}}return optionsObj}},{key:\"_printOptions\",value:function _printOptions(){var options=this.getOptions();this.optionsContainer.innerHTML=\"<pre>var options = \"+(0,_stringify2[\"default\"])(options,null,2)+\"</pre>\"}},{key:\"getOptions\",value:function getOptions(){var options={};for(var i=0;i<this.changedOptions.length;i++){this._constructOptions(this.changedOptions[i].value,this.changedOptions[i].path,options)}return options}}]);return Configurator}();exports[\"default\"]=Configurator},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DOMutil=__webpack_require__(14);function Points(groupId,options){}Points.draw=function(dataset,group,framework,offset){offset=offset||0;var callback=getCallback(framework,group);for(var i=0;i<dataset.length;i++){if(!callback){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group),framework.svgElements,framework.svg,dataset[i].label)}else{var callbackResult=callback(dataset[i],group);if(callbackResult===true||(typeof callbackResult===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(callbackResult))===\"object\"){DOMutil.drawPoint(dataset[i].screen_x+offset,dataset[i].screen_y,getGroupTemplate(group,callbackResult),framework.svgElements,framework.svg,dataset[i].label)}}}};Points.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");DOMutil.drawPoint(x+.5*iconWidth,y,getGroupTemplate(group),framework.svgElements,framework.svg)};function getGroupTemplate(group,callbackResult){callbackResult=typeof callbackResult===\"undefined\"?{}:callbackResult;return{style:callbackResult.style||group.options.drawPoints.style,styles:callbackResult.styles||group.options.drawPoints.styles,size:callbackResult.size||group.options.drawPoints.size,className:callbackResult.className||group.className}}function getCallback(framework,group){var callback=undefined;if(framework.options&&framework.options.drawPoints&&framework.options.drawPoints.onRender&&typeof framework.options.drawPoints.onRender==\"function\"){callback=framework.options.drawPoints.onRender}if(group.group.options&&group.group.options.drawPoints&&group.group.options.drawPoints.onRender&&typeof group.group.options.drawPoints.onRender==\"function\"){callback=group.group.options.drawPoints.onRender}return callback}module.exports=Points},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircleImageBase=function(_NodeBase){(0,_inherits3[\"default\"])(CircleImageBase,_NodeBase);function CircleImageBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CircleImageBase);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircleImageBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CircleImageBase)).call(this,options,body,labelModule));_this.labelOffset=0;_this.selected=false;return _this}(0,_createClass3[\"default\"])(CircleImageBase,[{key:\"setOptions\",value:function setOptions(options,imageObj,imageObjAlt){this.options=options;if(!(imageObj===undefined&&imageObjAlt===undefined)){this.setImages(imageObj,imageObjAlt)}}},{key:\"setImages\",value:function setImages(imageObj,imageObjAlt){if(imageObjAlt&&this.selected){this.imageObj=imageObjAlt;this.imageObjAlt=imageObj}else{this.imageObj=imageObj;this.imageObjAlt=imageObjAlt}}},{key:\"switchImages\",value:function switchImages(selected){var selection_changed=selected&&!this.selected||!selected&&this.selected;this.selected=selected;if(this.imageObjAlt!==undefined&&selection_changed){var imageTmp=this.imageObj;this.imageObj=this.imageObjAlt;this.imageObjAlt=imageTmp}}},{key:\"_resizeImage\",value:function _resizeImage(){var width,height;if(this.options.shapeProperties.useImageSize===false){var ratio_width=1;var ratio_height=1;if(this.imageObj.width&&this.imageObj.height){if(this.imageObj.width>this.imageObj.height){ratio_width=this.imageObj.width/this.imageObj.height}else{ratio_height=this.imageObj.height/this.imageObj.width}}width=this.options.size*2*ratio_width;height=this.options.size*2*ratio_height}else{width=this.imageObj.width;height=this.imageObj.height}this.width=width;this.height=height;this.radius=.5*this.width}},{key:\"_drawRawCircle\",value:function _drawRawCircle(ctx,x,y,values){this.initContextForDraw(ctx,values);ctx.circle(x,y,values.size);this.performFill(ctx,values)}},{key:\"_drawImageAtPosition\",value:function _drawImageAtPosition(ctx,values){if(this.imageObj.width!=0){ctx.globalAlpha=1;this.enableShadow(ctx,values);var factor=1;if(this.options.shapeProperties.interpolation===true){factor=this.imageObj.width/this.width/this.body.view.scale}this.imageObj.drawImageAtPosition(ctx,factor,this.left,this.top,this.width,this.height);this.disableShadow(ctx,values)}}},{key:\"_drawImageLabel\",value:function _drawImageLabel(ctx,x,y,selected,hover){var yLabel;var offset=0;if(this.height!==undefined){offset=this.height*.5;var labelDimensions=this.labelModule.getTextSize(ctx,selected,hover);if(labelDimensions.lineCount>=1){offset+=labelDimensions.height/2}}yLabel=y+offset;if(this.options.label){this.labelOffset=offset}this.labelModule.draw(ctx,x,yLabel,selected,hover,\"hanging\")}}]);return CircleImageBase}(_NodeBase3[\"default\"]);exports[\"default\"]=CircleImageBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Label=__webpack_require__(117)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var CubicBezierEdge=__webpack_require__(215)[\"default\"];var BezierEdgeDynamic=__webpack_require__(217)[\"default\"];var BezierEdgeStatic=__webpack_require__(218)[\"default\"];var StraightEdge=__webpack_require__(219)[\"default\"];var Edge=function(){function Edge(options,body,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Edge);if(body===undefined){throw new Error(\"No body provided\")}this.options=util.bridgeObject(globalOptions);this.globalOptions=globalOptions;this.defaultOptions=defaultOptions;this.body=body;this.id=undefined;this.fromId=undefined;this.toId=undefined;this.selected=false;this.hover=false;this.labelDirty=true;this.baseWidth=this.options.width;this.baseFontSize=this.options.font.size;this.from=undefined;this.to=undefined;this.edgeType=undefined;this.connected=false;this.labelModule=new Label(this.body,this.options,true);this.setOptions(options)}(0,_createClass3[\"default\"])(Edge,[{key:\"setOptions\",value:function setOptions(options){if(!options){return}Edge.parseOptions(this.options,options,true,this.globalOptions);if(options.id!==undefined){this.id=options.id}if(options.from!==undefined){this.fromId=options.from}if(options.to!==undefined){this.toId=options.to}if(options.title!==undefined){this.title=options.title}if(options.value!==undefined){options.value=parseFloat(options.value)}var pile=[options,this.options,this.defaultOptions];this.chooser=ComponentUtil.choosify(\"edge\",pile);this.updateLabelModule(options);var dataChanged=this.updateEdgeType();this._setInteractionWidths();this.connect();if(options.hidden!==undefined||options.physics!==undefined){dataChanged=true}return dataChanged}},{key:\"getFormattingValues\",value:function getFormattingValues(){var toArrow=this.options.arrows.to===true||this.options.arrows.to.enabled===true;var fromArrow=this.options.arrows.from===true||this.options.arrows.from.enabled===true;var middleArrow=this.options.arrows.middle===true||this.options.arrows.middle.enabled===true;var inheritsColor=this.options.color.inherit;var values={toArrow:toArrow,toArrowScale:this.options.arrows.to.scaleFactor,toArrowType:this.options.arrows.to.type,middleArrow:middleArrow,middleArrowScale:this.options.arrows.middle.scaleFactor,middleArrowType:this.options.arrows.middle.type,fromArrow:fromArrow,fromArrowScale:this.options.arrows.from.scaleFactor,fromArrowType:this.options.arrows.from.type,arrowStrikethrough:this.options.arrowStrikethrough,color:inheritsColor?undefined:this.options.color.color,inheritsColor:inheritsColor,opacity:this.options.color.opacity,hidden:this.options.hidden,length:this.options.length,shadow:this.options.shadow.enabled,shadowColor:this.options.shadow.color,shadowSize:this.options.shadow.size,shadowX:this.options.shadow.x,shadowY:this.options.shadow.y,dashes:this.options.dashes,width:this.options.width};if(this.selected||this.hover){if(this.chooser===true){if(this.selected){var selectedWidth=this.options.selectionWidth;if(typeof selectedWidth===\"function\"){values.width=selectedWidth(values.width)}else if(typeof selectedWidth===\"number\"){values.width+=selectedWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.highlight;values.shadow=this.options.shadow.enabled}else if(this.hover){var hoverWidth=this.options.hoverWidth;if(typeof hoverWidth===\"function\"){values.width=hoverWidth(values.width)}else if(typeof hoverWidth===\"number\"){values.width+=hoverWidth}values.width=Math.max(values.width,.3/this.body.view.scale);values.color=this.options.color.hover;values.shadow=this.options.shadow.enabled}}else if(typeof this.chooser===\"function\"){this.chooser(values,this.options.id,this.selected,this.hover);if(values.color!==undefined){values.inheritsColor=false}if(values.shadow===false){if(values.shadowColor!==this.options.shadow.color||values.shadowSize!==this.options.shadow.size||values.shadowX!==this.options.shadow.x||values.shadowY!==this.options.shadow.y){values.shadow=true}}}}else{values.shadow=this.options.shadow.enabled;values.width=Math.max(values.width,.3/this.body.view.scale)}return values}},{key:\"updateLabelModule\",value:function updateLabelModule(options){var pile=[options,this.options,this.globalOptions,this.defaultOptions];this.labelModule.update(this.options,pile);if(this.labelModule.baseSize!==undefined){this.baseFontSize=this.labelModule.baseSize}}},{key:\"updateEdgeType\",value:function updateEdgeType(){var smooth=this.options.smooth;var dataChanged=false;var changeInType=true;if(this.edgeType!==undefined){if(this.edgeType instanceof BezierEdgeDynamic&&smooth.enabled===true&&smooth.type===\"dynamic\"||this.edgeType instanceof CubicBezierEdge&&smooth.enabled===true&&smooth.type===\"cubicBezier\"||this.edgeType instanceof BezierEdgeStatic&&smooth.enabled===true&&smooth.type!==\"dynamic\"&&smooth.type!==\"cubicBezier\"||this.edgeType instanceof StraightEdge&&smooth.type.enabled===false){changeInType=false}if(changeInType===true){dataChanged=this.cleanup()}}if(changeInType===true){if(smooth.enabled===true){if(smooth.type===\"dynamic\"){dataChanged=true;this.edgeType=new BezierEdgeDynamic(this.options,this.body,this.labelModule)}else if(smooth.type===\"cubicBezier\"){this.edgeType=new CubicBezierEdge(this.options,this.body,this.labelModule)}else{this.edgeType=new BezierEdgeStatic(this.options,this.body,this.labelModule)}}else{this.edgeType=new StraightEdge(this.options,this.body,this.labelModule)}}else{this.edgeType.setOptions(this.options)}return dataChanged}},{key:\"connect\",value:function connect(){this.disconnect();this.from=this.body.nodes[this.fromId]||undefined;this.to=this.body.nodes[this.toId]||undefined;this.connected=this.from!==undefined&&this.to!==undefined;if(this.connected===true){this.from.attachEdge(this);this.to.attachEdge(this)}else{if(this.from){this.from.detachEdge(this)}if(this.to){this.to.detachEdge(this)}}this.edgeType.connect()}},{key:\"disconnect\",value:function disconnect(){if(this.from){this.from.detachEdge(this);this.from=undefined}if(this.to){this.to.detachEdge(this);this.to=undefined}this.connected=false}},{key:\"getTitle\",value:function getTitle(){return this.title}},{key:\"isSelected\",value:function isSelected(){return this.selected}},{key:\"getValue\",value:function getValue(){return this.options.value}},{key:\"setValueRange\",value:function setValueRange(min,max,total){if(this.options.value!==undefined){var scale=this.options.scaling.customScalingFunction(min,max,total,this.options.value);var widthDiff=this.options.scaling.max-this.options.scaling.min;if(this.options.scaling.label.enabled===true){var fontDiff=this.options.scaling.label.max-this.options.scaling.label.min;this.options.font.size=this.options.scaling.label.min+scale*fontDiff}this.options.width=this.options.scaling.min+scale*widthDiff}else{this.options.width=this.baseWidth;this.options.font.size=this.baseFontSize}this._setInteractionWidths();this.updateLabelModule()}},{key:\"_setInteractionWidths\",value:function _setInteractionWidths(){if(typeof this.options.hoverWidth===\"function\"){this.edgeType.hoverWidth=this.options.hoverWidth(this.options.width)}else{this.edgeType.hoverWidth=this.options.hoverWidth+this.options.width}if(typeof this.options.selectionWidth===\"function\"){this.edgeType.selectionWidth=this.options.selectionWidth(this.options.width)}else{this.edgeType.selectionWidth=this.options.selectionWidth+this.options.width}}},{key:\"draw\",value:function draw(ctx){var values=this.getFormattingValues();if(values.hidden){return}var viaNode=this.edgeType.getViaNode();var arrowData={};this.edgeType.fromPoint=this.edgeType.from;this.edgeType.toPoint=this.edgeType.to;if(values.fromArrow){arrowData.from=this.edgeType.getArrowData(ctx,\"from\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.fromPoint=arrowData.from.core}if(values.toArrow){arrowData.to=this.edgeType.getArrowData(ctx,\"to\",viaNode,this.selected,this.hover,values);if(values.arrowStrikethrough===false)this.edgeType.toPoint=arrowData.to.core}if(values.middleArrow){arrowData.middle=this.edgeType.getArrowData(ctx,\"middle\",viaNode,this.selected,this.hover,values)}this.edgeType.drawLine(ctx,values,this.selected,this.hover,viaNode);this.drawArrows(ctx,arrowData,values);this.drawLabel(ctx,viaNode)}},{key:\"drawArrows\",value:function drawArrows(ctx,arrowData,values){if(values.fromArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.from)}if(values.middleArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.middle)}if(values.toArrow){this.edgeType.drawArrowHead(ctx,values,this.selected,this.hover,arrowData.to)}}},{key:\"drawLabel\",value:function drawLabel(ctx,viaNode){if(this.options.label!==undefined){var node1=this.from;var node2=this.to;if(this.labelModule.differentState(this.selected,this.hover)){this.labelModule.getTextSize(ctx,this.selected,this.hover)}if(node1.id!=node2.id){this.labelModule.pointToSelf=false;var point=this.edgeType.getPoint(.5,viaNode);ctx.save();var rotationPoint=this._getRotation(ctx);if(rotationPoint.angle!=0){ctx.translate(rotationPoint.x,rotationPoint.y);ctx.rotate(rotationPoint.angle)}this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover);ctx.restore()}else{this.labelModule.pointToSelf=true;var x,y;var radius=this.options.selfReferenceSize;if(node1.shape.width>node1.shape.height){x=node1.x+node1.shape.width*.5;y=node1.y-radius}else{x=node1.x+radius;y=node1.y-node1.shape.height*.5}point=this._pointOnCircle(x,y,radius,.125);this.labelModule.draw(ctx,point.x,point.y,this.selected,this.hover)}}}},{key:\"getItemsOnPoint\",value:function getItemsOnPoint(point){var ret=[];if(this.labelModule.visible()){var rotationPoint=this._getRotation();if(ComponentUtil.pointInRect(this.labelModule.getSize(),point,rotationPoint)){ret.push({edgeId:this.id,labelId:0})}}var obj={left:point.x,top:point.y};if(this.isOverlappingWith(obj)){ret.push({edgeId:this.id})}return ret}},{key:\"isOverlappingWith\",value:function isOverlappingWith(obj){if(this.connected){var distMax=10;var xFrom=this.from.x;var yFrom=this.from.y;var xTo=this.to.x;var yTo=this.to.y;var xObj=obj.left;var yObj=obj.top;var dist=this.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,xObj,yObj);return dist<distMax}else{return false}}},{key:\"_getRotation\",value:function _getRotation(ctx){var viaNode=this.edgeType.getViaNode();var point=this.edgeType.getPoint(.5,viaNode);if(ctx!==undefined){this.labelModule.calculateLabelSize(ctx,this.selected,this.hover,point.x,point.y)}var ret={x:point.x,y:this.labelModule.size.yLine,angle:0};if(!this.labelModule.visible()){return ret}if(this.options.font.align===\"horizontal\"){return ret}var dy=this.from.y-this.to.y;var dx=this.from.x-this.to.x;var angle=Math.atan2(dy,dx);if(angle<-1&&dx<0||angle>0&&dx<0){angle+=Math.PI}ret.angle=angle;return ret}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"select\",value:function select(){this.selected=true}},{key:\"unselect\",value:function unselect(){this.selected=false}},{key:\"cleanup\",value:function cleanup(){return this.edgeType.cleanup()}},{key:\"remove\",value:function remove(){this.cleanup();this.disconnect();delete this.body.edges[this.id]}},{key:\"endPointsValid\",value:function endPointsValid(){return this.body.nodes[this.fromId]!==undefined&&this.body.nodes[this.toId]!==undefined}}],[{key:\"parseOptions\",value:function parseOptions(parentOptions,newOptions){var allowDeletion=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var globalOptions=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};var copyFromGlobals=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var fields=[\"arrowStrikethrough\",\"id\",\"from\",\"hidden\",\"hoverWidth\",\"labelHighlightBold\",\"length\",\"line\",\"opacity\",\"physics\",\"scaling\",\"selectionWidth\",\"selfReferenceSize\",\"to\",\"title\",\"value\",\"width\",\"font\",\"chosen\",\"widthConstraint\"];util.selectiveDeepExtend(fields,parentOptions,newOptions,allowDeletion);if(ComponentUtil.isValidLabel(newOptions.label)){parentOptions.label=newOptions.label}else{parentOptions.label=undefined}util.mergeOptions(parentOptions,newOptions,\"smooth\",globalOptions);util.mergeOptions(parentOptions,newOptions,\"shadow\",globalOptions);if(newOptions.dashes!==undefined&&newOptions.dashes!==null){parentOptions.dashes=newOptions.dashes}else if(allowDeletion===true&&newOptions.dashes===null){parentOptions.dashes=(0,_create2[\"default\"])(globalOptions.dashes)}if(newOptions.scaling!==undefined&&newOptions.scaling!==null){if(newOptions.scaling.min!==undefined){parentOptions.scaling.min=newOptions.scaling.min}if(newOptions.scaling.max!==undefined){parentOptions.scaling.max=newOptions.scaling.max}util.mergeOptions(parentOptions.scaling,newOptions.scaling,\"label\",globalOptions.scaling)}else if(allowDeletion===true&&newOptions.scaling===null){parentOptions.scaling=(0,_create2[\"default\"])(globalOptions.scaling)}if(newOptions.arrows!==undefined&&newOptions.arrows!==null){if(typeof newOptions.arrows===\"string\"){var arrows=newOptions.arrows.toLowerCase();parentOptions.arrows.to.enabled=arrows.indexOf(\"to\")!=-1;parentOptions.arrows.middle.enabled=arrows.indexOf(\"middle\")!=-1;parentOptions.arrows.from.enabled=arrows.indexOf(\"from\")!=-1}else if((0,_typeof3[\"default\"])(newOptions.arrows)===\"object\"){util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"to\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"middle\",globalOptions.arrows);util.mergeOptions(parentOptions.arrows,newOptions.arrows,\"from\",globalOptions.arrows)}else{throw new Error(\"The arrow newOptions can only be an object or a string. Refer to the documentation. You used:\"+(0,_stringify2[\"default\"])(newOptions.arrows))}}else if(allowDeletion===true&&newOptions.arrows===null){parentOptions.arrows=(0,_create2[\"default\"])(globalOptions.arrows)}if(newOptions.color!==undefined&&newOptions.color!==null){var fromColor=newOptions.color;var toColor=parentOptions.color;if(copyFromGlobals){util.deepExtend(toColor,globalOptions.color,false,allowDeletion)}else{for(var i in toColor){if(toColor.hasOwnProperty(i)){delete toColor[i]}}}if(util.isString(toColor)){toColor.color=toColor;toColor.highlight=toColor;toColor.hover=toColor;toColor.inherit=false;if(fromColor.opacity===undefined){toColor.opacity=1}}else{var colorsDefined=false;if(fromColor.color!==undefined){toColor.color=fromColor.color;colorsDefined=true}if(fromColor.highlight!==undefined){toColor.highlight=fromColor.highlight;colorsDefined=true}if(fromColor.hover!==undefined){toColor.hover=fromColor.hover;colorsDefined=true}if(fromColor.inherit!==undefined){toColor.inherit=fromColor.inherit}if(fromColor.opacity!==undefined){toColor.opacity=Math.min(1,Math.max(0,fromColor.opacity))}if(colorsDefined===true){toColor.inherit=false}else{if(toColor.inherit===undefined){toColor.inherit=\"from\"}}}}else if(allowDeletion===true&&newOptions.color===null){parentOptions.color=util.bridgeObject(globalOptions.color)}if(allowDeletion===true&&newOptions.font===null){parentOptions.font=util.bridgeObject(globalOptions.font)}}}]);return Edge}();exports[\"default\"]=Edge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeBase=function(_EdgeBase){(0,_inherits3[\"default\"])(BezierEdgeBase,_EdgeBase);function BezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeBase,[{key:\"_findBorderPositionBezier\",value:function _findBorderPositionBezier(nearNode,ctx){var viaNode=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this._getViaCoordinates();var maxIterations=10;var iteration=0;var low=0;var high=1;var pos,angle,distanceToBorder,distanceToPoint,difference;var threshold=.2;var node=this.to;var from=false;if(nearNode.id===this.from.id){node=this.from;from=true}while(low<=high&&iteration<maxIterations){var middle=(low+high)*.5;pos=this.getPoint(middle,viaNode);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference<0){if(from===false){low=middle}else{high=middle}}else{if(from===false){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;for(i=1;i<10;i++){t=.1*i;x=Math.pow(1-t,2)*x1+2*t*(1-t)*via.x+Math.pow(t,2)*x2;y=Math.pow(1-t,2)*y1+2*t*(1-t)*via.y+Math.pow(t,2)*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}},{key:\"_bezierCurve\",value:function _bezierCurve(ctx,values,viaNode1,viaNode2){var hasNode1=viaNode1!==undefined&&viaNode1.x!==undefined;var hasNode2=viaNode2!==undefined&&viaNode2.x!==undefined;ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);if(hasNode1&&hasNode2){ctx.bezierCurveTo(viaNode1.x,viaNode1.y,viaNode2.x,viaNode2.y,this.toPoint.x,this.toPoint.y)}else if(hasNode1){ctx.quadraticCurveTo(viaNode1.x,viaNode1.y,this.toPoint.x,this.toPoint.y)}else{ctx.lineTo(this.toPoint.x,this.toPoint.y)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}}]);return BezierEdgeBase}(_EdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=function(){function NetworkUtil(){(0,_classCallCheck3[\"default\"])(this,NetworkUtil)}(0,_createClass3[\"default\"])(NetworkUtil,null,[{key:\"getRange\",value:function getRange(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.shape.boundingBox.left){minX=node.shape.boundingBox.left}if(maxX<node.shape.boundingBox.right){maxX=node.shape.boundingBox.right}if(minY>node.shape.boundingBox.top){minY=node.shape.boundingBox.top}if(maxY<node.shape.boundingBox.bottom){maxY=node.shape.boundingBox.bottom}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"getRangeCore\",value:function getRangeCore(allNodes){var specificNodes=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];var minY=1e9,maxY=-1e9,minX=1e9,maxX=-1e9,node;if(specificNodes.length>0){for(var i=0;i<specificNodes.length;i++){node=allNodes[specificNodes[i]];if(minX>node.x){minX=node.x}if(maxX<node.x){maxX=node.x}if(minY>node.y){minY=node.y}if(maxY<node.y){maxY=node.y}}}if(minX===1e9&&maxX===-1e9&&minY===1e9&&maxY===-1e9){minY=0,maxY=0,minX=0,maxX=0}return{minX:minX,maxX:maxX,minY:minY,maxY:maxY}}},{key:\"findCenter\",value:function findCenter(range){return{x:.5*(range.maxX+range.minX),y:.5*(range.maxY+range.minY)}}},{key:\"cloneOptions\",value:function cloneOptions(item,type){var clonedOptions={};if(type===undefined||type===\"node\"){util.deepExtend(clonedOptions,item.options,true);clonedOptions.x=item.x;clonedOptions.y=item.y;clonedOptions.amountOfConnections=item.edges.length}else{util.deepExtend(clonedOptions,item.options,true)}return clonedOptions}}]);return NetworkUtil}();exports[\"default\"]=NetworkUtil},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(124),__esModule:true}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Object(\"z\").propertyIsEnumerable(0)?Object:function(it){return cof(it)==\"String\"?it.split(\"\"):Object(it)}},function(module,exports,__webpack_require__){\"use strict\";var LIBRARY=__webpack_require__(52);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var hide=__webpack_require__(26);var has=__webpack_require__(22);var Iterators=__webpack_require__(31);var $iterCreate=__webpack_require__(129);var setToStringTag=__webpack_require__(59);var getPrototypeOf=__webpack_require__(85);var ITERATOR=__webpack_require__(13)(\"iterator\");var BUGGY=!([].keys&&\"next\"in[].keys())\n;var FF_ITERATOR=\"@@iterator\";var KEYS=\"keys\";var VALUES=\"values\";var returnThis=function(){return this};module.exports=function(Base,NAME,Constructor,next,DEFAULT,IS_SET,FORCED){$iterCreate(Constructor,NAME,next);var getMethod=function(kind){if(!BUGGY&&kind in proto)return proto[kind];switch(kind){case KEYS:return function keys(){return new Constructor(this,kind)};case VALUES:return function values(){return new Constructor(this,kind)}}return function entries(){return new Constructor(this,kind)}};var TAG=NAME+\" Iterator\";var DEF_VALUES=DEFAULT==VALUES;var VALUES_BUG=false;var proto=Base.prototype;var $native=proto[ITERATOR]||proto[FF_ITERATOR]||DEFAULT&&proto[DEFAULT];var $default=$native||getMethod(DEFAULT);var $entries=DEFAULT?!DEF_VALUES?$default:getMethod(\"entries\"):undefined;var $anyNative=NAME==\"Array\"?proto.entries||$native:$native;var methods,key,IteratorPrototype;if($anyNative){IteratorPrototype=getPrototypeOf($anyNative.call(new Base));if(IteratorPrototype!==Object.prototype&&IteratorPrototype.next){setToStringTag(IteratorPrototype,TAG,true);if(!LIBRARY&&!has(IteratorPrototype,ITERATOR))hide(IteratorPrototype,ITERATOR,returnThis)}}if(DEF_VALUES&&$native&&$native.name!==VALUES){VALUES_BUG=true;$default=function values(){return $native.call(this)}}if((!LIBRARY||FORCED)&&(BUGGY||VALUES_BUG||!proto[ITERATOR])){hide(proto,ITERATOR,$default)}Iterators[NAME]=$default;Iterators[TAG]=returnThis;if(DEFAULT){methods={values:DEF_VALUES?$default:getMethod(VALUES),keys:IS_SET?$default:getMethod(KEYS),entries:$entries};if(FORCED)for(key in methods){if(!(key in proto))redefine(proto,key,methods[key])}else $export($export.P+$export.F*(BUGGY||VALUES_BUG),NAME,methods)}return methods}},function(module,exports,__webpack_require__){var aFunction=__webpack_require__(128);module.exports=function(fn,that,length){aFunction(fn);if(that===undefined)return fn;switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}}},function(module,exports,__webpack_require__){module.exports=!__webpack_require__(21)&&!__webpack_require__(28)(function(){return Object.defineProperty(__webpack_require__(82)(\"div\"),\"a\",{get:function(){return 7}}).a!=7})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var document=__webpack_require__(18).document;var is=isObject(document)&&isObject(document.createElement);module.exports=function(it){return is?document.createElement(it):{}}},function(module,exports,__webpack_require__){module.exports=__webpack_require__(26)},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toIObject=__webpack_require__(25);var arrayIndexOf=__webpack_require__(131)(false);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");module.exports=function(object,names){var O=toIObject(object);var i=0;var result=[];var key;for(key in O)if(key!=IE_PROTO)has(O,key)&&result.push(key);while(names.length>i)if(has(O,key=names[i++])){~arrayIndexOf(result,key)||result.push(key)}return result}},function(module,exports,__webpack_require__){var has=__webpack_require__(22);var toObject=__webpack_require__(41);var IE_PROTO=__webpack_require__(56)(\"IE_PROTO\");var ObjectProto=Object.prototype;module.exports=Object.getPrototypeOf||function(O){O=toObject(O);if(has(O,IE_PROTO))return O[IE_PROTO];if(typeof O.constructor==\"function\"&&O instanceof O.constructor){return O.constructor.prototype}return O instanceof Object?ObjectProto:null}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);var TAG=__webpack_require__(13)(\"toStringTag\");var ARG=cof(function(){return arguments}())==\"Arguments\";var tryGet=function(it,key){try{return it[key]}catch(e){}};module.exports=function(it){var O,T,B;return it===undefined?\"Undefined\":it===null?\"Null\":typeof(T=tryGet(O=Object(it),TAG))==\"string\"?T:ARG?cof(O):(B=cof(O))==\"Object\"&&typeof O.callee==\"function\"?\"Arguments\":B}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);var core=__webpack_require__(7);var fails=__webpack_require__(28);module.exports=function(KEY,exec){var fn=(core.Object||{})[KEY]||Object[KEY];var exp={};exp[KEY]=exec(fn);$export($export.S+$export.F*fails(function(){fn(1)}),\"Object\",exp)}},function(module,exports,__webpack_require__){var $keys=__webpack_require__(84);var hiddenKeys=__webpack_require__(58).concat(\"length\",\"prototype\");exports.f=Object.getOwnPropertyNames||function getOwnPropertyNames(O){return $keys(O,hiddenKeys)}},function(module,exports,__webpack_require__){var pIE=__webpack_require__(42);var createDesc=__webpack_require__(39);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var has=__webpack_require__(22);var IE8_DOM_DEFINE=__webpack_require__(81);var gOPD=Object.getOwnPropertyDescriptor;exports.f=__webpack_require__(21)?gOPD:function getOwnPropertyDescriptor(O,P){O=toIObject(O);P=toPrimitive(P,true);if(IE8_DOM_DEFINE)try{return gOPD(O,P)}catch(e){}if(has(O,P))return createDesc(!pIE.f.call(O,P),O[P])}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(162),__esModule:true}},function(module,exports,__webpack_require__){\"use strict\";function Point2d(x,y){this.x=x!==undefined?x:0;this.y=y!==undefined?y:0}module.exports=Point2d},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);function Slider(container,options){if(container===undefined){throw new Error(\"No container element defined\")}this.container=container;this.visible=options&&options.visible!=undefined?options.visible:true;if(this.visible){this.frame=document.createElement(\"DIV\");this.frame.style.width=\"100%\";this.frame.style.position=\"relative\";this.container.appendChild(this.frame);this.frame.prev=document.createElement(\"INPUT\");this.frame.prev.type=\"BUTTON\";this.frame.prev.value=\"Prev\";this.frame.appendChild(this.frame.prev);this.frame.play=document.createElement(\"INPUT\");this.frame.play.type=\"BUTTON\";this.frame.play.value=\"Play\";this.frame.appendChild(this.frame.play);this.frame.next=document.createElement(\"INPUT\");this.frame.next.type=\"BUTTON\";this.frame.next.value=\"Next\";this.frame.appendChild(this.frame.next);this.frame.bar=document.createElement(\"INPUT\");this.frame.bar.type=\"BUTTON\";this.frame.bar.style.position=\"absolute\";this.frame.bar.style.border=\"1px solid red\";this.frame.bar.style.width=\"100px\";this.frame.bar.style.height=\"6px\";this.frame.bar.style.borderRadius=\"2px\";this.frame.bar.style.MozBorderRadius=\"2px\";this.frame.bar.style.border=\"1px solid #7F7F7F\";this.frame.bar.style.backgroundColor=\"#E5E5E5\";this.frame.appendChild(this.frame.bar);this.frame.slide=document.createElement(\"INPUT\");this.frame.slide.type=\"BUTTON\";this.frame.slide.style.margin=\"0px\";this.frame.slide.value=\" \";this.frame.slide.style.position=\"relative\";this.frame.slide.style.left=\"-100px\";this.frame.appendChild(this.frame.slide);var me=this;this.frame.slide.onmousedown=function(event){me._onMouseDown(event)};this.frame.prev.onclick=function(event){me.prev(event)};this.frame.play.onclick=function(event){me.togglePlay(event)};this.frame.next.onclick=function(event){me.next(event)}}this.onChangeCallback=undefined;this.values=[];this.index=undefined;this.playTimeout=undefined;this.playInterval=1e3;this.playLoop=true}Slider.prototype.prev=function(){var index=this.getIndex();if(index>0){index--;this.setIndex(index)}};Slider.prototype.next=function(){var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}};Slider.prototype.playNext=function(){var start=new Date;var index=this.getIndex();if(index<this.values.length-1){index++;this.setIndex(index)}else if(this.playLoop){index=0;this.setIndex(index)}var end=new Date;var diff=end-start;var interval=Math.max(this.playInterval-diff,0);var me=this;this.playTimeout=setTimeout(function(){me.playNext()},interval)};Slider.prototype.togglePlay=function(){if(this.playTimeout===undefined){this.play()}else{this.stop()}};Slider.prototype.play=function(){if(this.playTimeout)return;this.playNext();if(this.frame){this.frame.play.value=\"Stop\"}};Slider.prototype.stop=function(){clearInterval(this.playTimeout);this.playTimeout=undefined;if(this.frame){this.frame.play.value=\"Play\"}};Slider.prototype.setOnChangeCallback=function(callback){this.onChangeCallback=callback};Slider.prototype.setPlayInterval=function(interval){this.playInterval=interval};Slider.prototype.getPlayInterval=function(){return this.playInterval};Slider.prototype.setPlayLoop=function(doLoop){this.playLoop=doLoop};Slider.prototype.onChange=function(){if(this.onChangeCallback!==undefined){this.onChangeCallback()}};Slider.prototype.redraw=function(){if(this.frame){this.frame.bar.style.top=this.frame.clientHeight/2-this.frame.bar.offsetHeight/2+\"px\";this.frame.bar.style.width=this.frame.clientWidth-this.frame.prev.clientWidth-this.frame.play.clientWidth-this.frame.next.clientWidth-30+\"px\";var left=this.indexToLeft(this.index);this.frame.slide.style.left=left+\"px\"}};Slider.prototype.setValues=function(values){this.values=values;if(this.values.length>0)this.setIndex(0);else this.index=undefined};Slider.prototype.setIndex=function(index){if(index<this.values.length){this.index=index;this.redraw();this.onChange()}else{throw new Error(\"Index out of range\")}};Slider.prototype.getIndex=function(){return this.index};Slider.prototype.get=function(){return this.values[this.index]};Slider.prototype._onMouseDown=function(event){var leftButtonDown=event.which?event.which===1:event.button===1;if(!leftButtonDown)return;this.startClientX=event.clientX;this.startSlideX=parseFloat(this.frame.slide.style.left);this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",this.onmousemove);util.addEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Slider.prototype.leftToIndex=function(left){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=left-3;var index=Math.round(x/width*(this.values.length-1));if(index<0)index=0;if(index>this.values.length-1)index=this.values.length-1;return index};Slider.prototype.indexToLeft=function(index){var width=parseFloat(this.frame.bar.style.width)-this.frame.slide.clientWidth-10;var x=index/(this.values.length-1)*width;var left=x+3;return left};Slider.prototype._onMouseMove=function(event){var diff=event.clientX-this.startClientX;var x=this.startSlideX+diff;var index=this.leftToIndex(x);this.setIndex(index);util.preventDefault()};Slider.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault()};module.exports=Slider},function(module,exports,__webpack_require__){\"use strict\";function StepNumber(start,end,step,prettyStep){this._start=0;this._end=0;this._step=1;this.prettyStep=true;this.precision=5;this._current=0;this.setRange(start,end,step,prettyStep)}StepNumber.prototype.isNumeric=function(n){return!isNaN(parseFloat(n))&&isFinite(n)};StepNumber.prototype.setRange=function(start,end,step,prettyStep){if(!this.isNumeric(start)){throw new Error(\"Parameter 'start' is not numeric; value: \"+start)}if(!this.isNumeric(end)){throw new Error(\"Parameter 'end' is not numeric; value: \"+start)}if(!this.isNumeric(step)){throw new Error(\"Parameter 'step' is not numeric; value: \"+start)}this._start=start?start:0;this._end=end?end:0;this.setStep(step,prettyStep)};StepNumber.prototype.setStep=function(step,prettyStep){if(step===undefined||step<=0)return;if(prettyStep!==undefined)this.prettyStep=prettyStep;if(this.prettyStep===true)this._step=StepNumber.calculatePrettyStep(step);else this._step=step};StepNumber.calculatePrettyStep=function(step){var log10=function log10(x){return Math.log(x)/Math.LN10};var step1=Math.pow(10,Math.round(log10(step))),step2=2*Math.pow(10,Math.round(log10(step/2))),step5=5*Math.pow(10,Math.round(log10(step/5)));var prettyStep=step1;if(Math.abs(step2-step)<=Math.abs(prettyStep-step))prettyStep=step2;if(Math.abs(step5-step)<=Math.abs(prettyStep-step))prettyStep=step5;if(prettyStep<=0){prettyStep=1}return prettyStep};StepNumber.prototype.getCurrent=function(){return parseFloat(this._current.toPrecision(this.precision))};StepNumber.prototype.getStep=function(){return this._step};StepNumber.prototype.start=function(checkFirst){if(checkFirst===undefined){checkFirst=false}this._current=this._start-this._start%this._step;if(checkFirst){if(this.getCurrent()<this._start){this.next()}}};StepNumber.prototype.next=function(){this._current+=this._step};StepNumber.prototype.end=function(){return this._current>this._end};module.exports=StepNumber},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Camera=__webpack_require__(95);var Point3d=__webpack_require__(34);var STYLE={BAR:0,BARCOLOR:1,BARSIZE:2,DOT:3,DOTLINE:4,DOTCOLOR:5,DOTSIZE:6,GRID:7,LINE:8,SURFACE:9};var STYLENAME={dot:STYLE.DOT,\"dot-line\":STYLE.DOTLINE,\"dot-color\":STYLE.DOTCOLOR,\"dot-size\":STYLE.DOTSIZE,line:STYLE.LINE,grid:STYLE.GRID,surface:STYLE.SURFACE,bar:STYLE.BAR,\"bar-color\":STYLE.BARCOLOR,\"bar-size\":STYLE.BARSIZE};var OPTIONKEYS=[\"width\",\"height\",\"filterLabel\",\"legendLabel\",\"xLabel\",\"yLabel\",\"zLabel\",\"xValueLabel\",\"yValueLabel\",\"zValueLabel\",\"showXAxis\",\"showYAxis\",\"showZAxis\",\"showGrid\",\"showPerspective\",\"showShadow\",\"keepAspectRatio\",\"verticalRatio\",\"dotSizeRatio\",\"dotSizeMinFraction\",\"dotSizeMaxFraction\",\"showAnimationControls\",\"animationInterval\",\"animationPreload\",\"animationAutoStart\",\"axisColor\",\"gridColor\",\"xCenter\",\"yCenter\"];var PREFIXEDOPTIONKEYS=[\"xBarWidth\",\"yBarWidth\",\"valueMin\",\"valueMax\",\"xMin\",\"xMax\",\"xStep\",\"yMin\",\"yMax\",\"yStep\",\"zMin\",\"zMax\",\"zStep\"];var DEFAULTS=undefined;function isEmpty(obj){for(var prop in obj){if(obj.hasOwnProperty(prop))return false}return true}function capitalize(str){if(str===undefined||str===\"\"||typeof str!=\"string\"){return str}return str.charAt(0).toUpperCase()+str.slice(1)}function prefixFieldName(prefix,fieldName){if(prefix===undefined||prefix===\"\"){return fieldName}return prefix+capitalize(fieldName)}function forceCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function safeCopy(src,dst,fields,prefix){var srcKey;var dstKey;for(var i=0;i<fields.length;++i){srcKey=fields[i];if(src[srcKey]===undefined)continue;dstKey=prefixFieldName(prefix,srcKey);dst[dstKey]=src[srcKey]}}function setDefaults(src,dst){if(src===undefined||isEmpty(src)){throw new Error(\"No DEFAULTS passed\")}if(dst===undefined){throw new Error(\"No dst passed\")}DEFAULTS=src;forceCopy(src,dst,OPTIONKEYS);forceCopy(src,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(src,dst);dst.margin=10;dst.showGrayBottom=false;dst.showTooltip=false;dst.onclick_callback=null;dst.eye=new Point3d(0,0,-1)}function setOptions(options,dst){if(options===undefined){return}if(dst===undefined){throw new Error(\"No dst passed\")}if(DEFAULTS===undefined||isEmpty(DEFAULTS)){throw new Error(\"DEFAULTS not set for module Settings\")}safeCopy(options,dst,OPTIONKEYS);safeCopy(options,dst,PREFIXEDOPTIONKEYS,\"default\");setSpecialSettings(options,dst)}function setSpecialSettings(src,dst){if(src.backgroundColor!==undefined){setBackgroundColor(src.backgroundColor,dst)}setDataColor(src.dataColor,dst);setStyle(src.style,dst);setShowLegend(src.showLegend,dst);setCameraPosition(src.cameraPosition,dst);if(src.tooltip!==undefined){dst.showTooltip=src.tooltip}if(src.onclick!=undefined){dst.onclick_callback=src.onclick}if(src.tooltipStyle!==undefined){util.selectiveDeepExtend([\"tooltipStyle\"],dst,src)}}function setShowLegend(showLegend,dst){if(showLegend===undefined){var isAutoByDefault=DEFAULTS.showLegend===undefined;if(isAutoByDefault){var isLegendGraphStyle=dst.style===STYLE.DOTCOLOR||dst.style===STYLE.DOTSIZE;dst.showLegend=isLegendGraphStyle}else{}}else{dst.showLegend=showLegend}}function getStyleNumberByName(styleName){var number=STYLENAME[styleName];if(number===undefined){return-1}return number}function checkStyleNumber(style){var valid=false;for(var n in STYLE){if(STYLE[n]===style){valid=true;break}}return valid}function setStyle(style,dst){if(style===undefined){return}var styleNumber;if(typeof style===\"string\"){styleNumber=getStyleNumberByName(style);if(styleNumber===-1){throw new Error(\"Style '\"+style+\"' is invalid\")}}else{if(!checkStyleNumber(style)){throw new Error(\"Style '\"+style+\"' is invalid\")}styleNumber=style}dst.style=styleNumber}function setBackgroundColor(backgroundColor,dst){var fill=\"white\";var stroke=\"gray\";var strokeWidth=1;if(typeof backgroundColor===\"string\"){fill=backgroundColor;stroke=\"none\";strokeWidth=0}else if((typeof backgroundColor===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(backgroundColor))===\"object\"){if(backgroundColor.fill!==undefined)fill=backgroundColor.fill;if(backgroundColor.stroke!==undefined)stroke=backgroundColor.stroke;if(backgroundColor.strokeWidth!==undefined)strokeWidth=backgroundColor.strokeWidth}else{throw new Error(\"Unsupported type of backgroundColor\")}dst.frame.style.backgroundColor=fill;dst.frame.style.borderColor=stroke;dst.frame.style.borderWidth=strokeWidth+\"px\";dst.frame.style.borderStyle=\"solid\"}function setDataColor(dataColor,dst){if(dataColor===undefined){return}if(dst.dataColor===undefined){dst.dataColor={}}if(typeof dataColor===\"string\"){dst.dataColor.fill=dataColor;dst.dataColor.stroke=dataColor}else{if(dataColor.fill){dst.dataColor.fill=dataColor.fill}if(dataColor.stroke){dst.dataColor.stroke=dataColor.stroke}if(dataColor.strokeWidth!==undefined){dst.dataColor.strokeWidth=dataColor.strokeWidth}}}function setCameraPosition(cameraPosition,dst){var camPos=cameraPosition;if(camPos===undefined){return}if(dst.camera===undefined){dst.camera=new Camera}dst.camera.setArmRotation(camPos.horizontal,camPos.vertical);dst.camera.setArmLength(camPos.distance)}module.exports.STYLE=STYLE;module.exports.setDefaults=setDefaults;module.exports.setOptions=setOptions;module.exports.setCameraPosition=setCameraPosition},function(module,exports,__webpack_require__){\"use strict\";var _sign=__webpack_require__(165);var _sign2=_interopRequireDefault(_sign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Point3d=__webpack_require__(34);function Camera(){this.armLocation=new Point3d;this.armRotation={};this.armRotation.horizontal=0;this.armRotation.vertical=0;this.armLength=1.7;this.cameraOffset=new Point3d;this.offsetMultiplier=.6;this.cameraLocation=new Point3d;this.cameraRotation=new Point3d(.5*Math.PI,0,0);this.calculateCameraOrientation()}Camera.prototype.setOffset=function(x,y){var abs=Math.abs,sign=_sign2[\"default\"],mul=this.offsetMultiplier,border=this.armLength*mul;if(abs(x)>border){x=sign(x)*border}if(abs(y)>border){y=sign(y)*border}this.cameraOffset.x=x;this.cameraOffset.y=y;this.calculateCameraOrientation()};Camera.prototype.getOffset=function(){return this.cameraOffset};Camera.prototype.setArmLocation=function(x,y,z){this.armLocation.x=x;this.armLocation.y=y;this.armLocation.z=z;this.calculateCameraOrientation()};Camera.prototype.setArmRotation=function(horizontal,vertical){if(horizontal!==undefined){this.armRotation.horizontal=horizontal}if(vertical!==undefined){this.armRotation.vertical=vertical;if(this.armRotation.vertical<0)this.armRotation.vertical=0;if(this.armRotation.vertical>.5*Math.PI)this.armRotation.vertical=.5*Math.PI}if(horizontal!==undefined||vertical!==undefined){this.calculateCameraOrientation()}};Camera.prototype.getArmRotation=function(){var rot={};rot.horizontal=this.armRotation.horizontal;rot.vertical=this.armRotation.vertical;return rot};Camera.prototype.setArmLength=function(length){if(length===undefined)return;this.armLength=length;if(this.armLength<.71)this.armLength=.71;if(this.armLength>5)this.armLength=5;this.setOffset(this.cameraOffset.x,this.cameraOffset.y);this.calculateCameraOrientation()};Camera.prototype.getArmLength=function(){return this.armLength};Camera.prototype.getCameraLocation=function(){return this.cameraLocation};Camera.prototype.getCameraRotation=function(){return this.cameraRotation};Camera.prototype.calculateCameraOrientation=function(){this.cameraLocation.x=this.armLocation.x-this.armLength*Math.sin(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.y=this.armLocation.y-this.armLength*Math.cos(this.armRotation.horizontal)*Math.cos(this.armRotation.vertical);this.cameraLocation.z=this.armLocation.z+this.armLength*Math.sin(this.armRotation.vertical);this.cameraRotation.x=Math.PI/2-this.armRotation.vertical;this.cameraRotation.y=0;this.cameraRotation.z=-this.armRotation.horizontal;var xa=this.cameraRotation.x;var za=this.cameraRotation.z;var dx=this.cameraOffset.x;var dy=this.cameraOffset.y;var sin=Math.sin,cos=Math.cos;this.cameraLocation.x=this.cameraLocation.x+dx*cos(za)+dy*-sin(za)*cos(xa);this.cameraLocation.y=this.cameraLocation.y+dx*sin(za)+dy*cos(za)*cos(xa);this.cameraLocation.z=this.cameraLocation.z+dy*sin(xa)};module.exports=Camera},function(module,exports,__webpack_require__){\"use strict\";var DataView=__webpack_require__(12);function Filter(dataGroup,column,graph){this.dataGroup=dataGroup;this.column=column;this.graph=graph;this.index=undefined;this.value=undefined;this.values=dataGroup.getDistinctValues(this.column);if(this.values.length>0){this.selectValue(0)}this.dataPoints=[];this.loaded=false;this.onLoadCallback=undefined;if(graph.animationPreload){this.loaded=false;this.loadInBackground()}else{this.loaded=true}}Filter.prototype.isLoaded=function(){return this.loaded};Filter.prototype.getLoadedProgress=function(){var len=this.values.length;var i=0;while(this.dataPoints[i]){i++}return Math.round(i/len*100)};Filter.prototype.getLabel=function(){return this.graph.filterLabel};Filter.prototype.getColumn=function(){return this.column};Filter.prototype.getSelectedValue=function(){if(this.index===undefined)return undefined;return this.values[this.index]};Filter.prototype.getValues=function(){return this.values};Filter.prototype.getValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");return this.values[index]};Filter.prototype._getDataPoints=function(index){if(index===undefined)index=this.index;if(index===undefined)return[];var dataPoints;if(this.dataPoints[index]){dataPoints=this.dataPoints[index]}else{var f={};f.column=this.column;f.value=this.values[index];var dataView=new DataView(this.dataGroup.getDataSet(),{filter:function filter(item){return item[f.column]==f.value}}).get();dataPoints=this.dataGroup._getDataPoints(dataView);this.dataPoints[index]=dataPoints}return dataPoints};Filter.prototype.setOnLoadCallback=function(callback){this.onLoadCallback=callback};Filter.prototype.selectValue=function(index){if(index>=this.values.length)throw new Error(\"Index out of range\");this.index=index;this.value=this.values[index]};Filter.prototype.loadInBackground=function(index){if(index===undefined)index=0;var frame=this.graph.frame;if(index<this.values.length){if(frame.progress===undefined){frame.progress=document.createElement(\"DIV\");frame.progress.style.position=\"absolute\";frame.progress.style.color=\"gray\";frame.appendChild(frame.progress)}var progress=this.getLoadedProgress();frame.progress.innerHTML=\"Loading animation... \"+progress+\"%\";frame.progress.style.bottom=60+\"px\";frame.progress.style.left=10+\"px\";var me=this;setTimeout(function(){me.loadInBackground(index+1)},10);this.loaded=false}else{this.loaded=true;if(frame.progress!==undefined){frame.removeChild(frame.progress);frame.progress=undefined}if(this.onLoadCallback)this.onLoadCallback()}};module.exports=Filter},function(module,exports,__webpack_require__){\"use strict\";var keycharm=__webpack_require__(35);var Emitter=__webpack_require__(44);var Hammer=__webpack_require__(10);var util=__webpack_require__(2);function Activator(container){this.active=false;this.dom={container:container};this.dom.overlay=document.createElement(\"div\");this.dom.overlay.className=\"vis-overlay\";this.dom.container.appendChild(this.dom.overlay);this.hammer=Hammer(this.dom.overlay);this.hammer.on(\"tap\",this._onTapOverlay.bind(this));var me=this;var events=[\"tap\",\"doubletap\",\"press\",\"pinch\",\"pan\",\"panstart\",\"panmove\",\"panend\"];events.forEach(function(event){me.hammer.on(event,function(event){event.stopPropagation()})});if(document&&document.body){this.onClick=function(event){if(!_hasParent(event.target,container)){me.deactivate()}};document.body.addEventListener(\"click\",this.onClick)}if(this.keycharm!==undefined){this.keycharm.destroy()}this.keycharm=keycharm();this.escListener=this.deactivate.bind(this)}Emitter(Activator.prototype);Activator.current=null;Activator.prototype.destroy=function(){this.deactivate();this.dom.overlay.parentNode.removeChild(this.dom.overlay);if(this.onClick){document.body.removeEventListener(\"click\",this.onClick)}this.hammer.destroy();this.hammer=null};Activator.prototype.activate=function(){if(Activator.current){Activator.current.deactivate()}Activator.current=this;this.active=true;this.dom.overlay.style.display=\"none\";util.addClassName(this.dom.container,\"vis-active\");this.emit(\"change\");this.emit(\"activate\");this.keycharm.bind(\"esc\",this.escListener)};Activator.prototype.deactivate=function(){this.active=false;this.dom.overlay.style.display=\"\";util.removeClassName(this.dom.container,\"vis-active\");this.keycharm.unbind(\"esc\",this.escListener);this.emit(\"change\");this.emit(\"deactivate\")};Activator.prototype._onTapOverlay=function(event){this.activate();event.stopPropagation()};function _hasParent(element,parent){while(element){if(element===parent){return true}element=element.parentNode}return false}module.exports=Activator},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={current:\"current\",time:\"time\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"it\"]={current:\"attuale\",time:\"tempo\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"it_CH\"]=exports[\"it\"];exports[\"nl\"]={current:\"huidige\",time:\"tijd\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"de\"]={current:\"Aktuelle\",time:\"Zeit\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"fr\"]={current:\"actuel\",time:\"heure\"};exports[\"fr_FR\"]=exports[\"fr\"];exports[\"fr_CA\"]=exports[\"fr\"];exports[\"fr_BE\"]=exports[\"fr\"];exports[\"es\"]={current:\"corriente\",time:\"hora\"};exports[\"es_ES\"]=exports[\"es\"]},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var TimeStep=__webpack_require__(66);var Component=__webpack_require__(16);var Group=__webpack_require__(68);var BackgroundGroup=__webpack_require__(69);var BoxItem=__webpack_require__(101);var PointItem=__webpack_require__(102);var RangeItem=__webpack_require__(70);var BackgroundItem=__webpack_require__(103);var Popup=__webpack_require__(104)[\"default\"];var UNGROUPED=\"__ungrouped__\";var BACKGROUND=\"__background__\";function ItemSet(body,options){this.body=body;this.defaultOptions={type:null,orientation:{item:\"bottom\"},align:\"auto\",stack:true,stackSubgroups:true,groupOrderSwap:function groupOrderSwap(fromGroup,toGroup,groups){var targetOrder=toGroup.order;toGroup.order=fromGroup.order;fromGroup.order=targetOrder},groupOrder:\"order\",selectable:true,multiselect:false,itemsAlwaysDraggable:{item:false,range:false},editable:{updateTime:false,updateGroup:false,add:false,remove:false,overrideItems:false},groupEditable:{order:false,add:false,remove:false},snap:TimeStep.snap,onDropObjectOnItem:function onDropObjectOnItem(objectData,item,callback){callback(item)},onAdd:function onAdd(item,callback){callback(item)},onUpdate:function onUpdate(item,callback){callback(item)},onMove:function onMove(item,callback){callback(item)},onRemove:function onRemove(item,callback){callback(item)},onMoving:function onMoving(item,callback){callback(item)},onAddGroup:function onAddGroup(item,callback){callback(item)},onMoveGroup:function onMoveGroup(item,callback){callback(item)},onRemoveGroup:function onRemoveGroup(item,callback){callback(item)},margin:{item:{horizontal:10,vertical:10},axis:20},showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false};this.options=util.extend({},this.defaultOptions);this.options.rtl=options.rtl;this.itemOptions={type:{start:\"Date\",end:\"Date\"}};this.conversion={toScreen:body.util.toScreen,toTime:body.util.toTime};this.dom={};this.props={};this.hammer=null;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items);if(me.groupsData&&me.groupsData.length>0){var groupsData=me.groupsData.getDataSet();groupsData.get().forEach(function(groupData){if(groupData.nestedGroups){if(groupData.showNested!=false){groupData.showNested=true}var updatedGroups=[];groupData.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);if(!updatedNestedGroup){return}updatedNestedGroup.nestedInGroup=groupData.id;if(groupData.showNested==false){updatedNestedGroup.visible=false}updatedGroups=updatedGroups.concat(updatedNestedGroup)});groupsData.update(updatedGroups,senderId)}})}},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.groups={};this.groupIds=[];this.selection=[];this.popup=null;this.touchParams={};this.groupTouchParams={};this._create();this.setOptions(options)}ItemSet.prototype=new Component;ItemSet.types={background:BackgroundItem,box:BoxItem,range:RangeItem,point:PointItem};ItemSet.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-itemset\";frame[\"timeline-itemset\"]=this;this.dom.frame=frame;var background=document.createElement(\"div\");background.className=\"vis-background\";frame.appendChild(background);this.dom.background=background;var foreground=document.createElement(\"div\");foreground.className=\"vis-foreground\";frame.appendChild(foreground);this.dom.foreground=foreground;var axis=document.createElement(\"div\");axis.className=\"vis-axis\";this.dom.axis=axis;var labelSet=document.createElement(\"div\");labelSet.className=\"vis-labelset\";this.dom.labelSet=labelSet;this._updateUngrouped();var backgroundGroup=new BackgroundGroup(BACKGROUND,null,this);backgroundGroup.show();this.groups[BACKGROUND]=backgroundGroup;this.hammer=new Hammer(this.body.dom.centerContainer);this.hammer.on(\"hammer.input\",function(event){if(event.isFirst){this._onTouch(event)}}.bind(this));this.hammer.on(\"panstart\",this._onDragStart.bind(this));this.hammer.on(\"panmove\",this._onDrag.bind(this));this.hammer.on(\"panend\",this._onDragEnd.bind(this));this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_HORIZONTAL});this.hammer.on(\"tap\",this._onSelectItem.bind(this));this.hammer.on(\"press\",this._onMultiSelectItem.bind(this));this.hammer.on(\"doubletap\",this._onAddItem.bind(this));if(this.options.rtl){\nthis.groupHammer=new Hammer(this.body.dom.rightContainer)}else{this.groupHammer=new Hammer(this.body.dom.leftContainer)}this.groupHammer.on(\"tap\",this._onGroupClick.bind(this));this.groupHammer.on(\"panstart\",this._onGroupDragStart.bind(this));this.groupHammer.on(\"panmove\",this._onGroupDrag.bind(this));this.groupHammer.on(\"panend\",this._onGroupDragEnd.bind(this));this.groupHammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_VERTICAL});this.body.dom.centerContainer.addEventListener(\"mouseover\",this._onMouseOver.bind(this));this.body.dom.centerContainer.addEventListener(\"mouseout\",this._onMouseOut.bind(this));this.body.dom.centerContainer.addEventListener(\"mousemove\",this._onMouseMove.bind(this));this.body.dom.centerContainer.addEventListener(\"contextmenu\",this._onDragEnd.bind(this));this.body.dom.centerContainer.addEventListener(\"mousewheel\",this._onMouseWheel.bind(this));this.show()};ItemSet.prototype.setOptions=function(options){if(options){var fields=[\"type\",\"rtl\",\"align\",\"order\",\"stack\",\"stackSubgroups\",\"selectable\",\"multiselect\",\"multiselectPerGroup\",\"groupOrder\",\"dataAttributes\",\"template\",\"groupTemplate\",\"visibleFrameTemplate\",\"hide\",\"snap\",\"groupOrderSwap\",\"showTooltips\",\"tooltip\",\"tooltipOnItemUpdateTime\"];util.selectiveExtend(fields,this.options,options);if(\"itemsAlwaysDraggable\"in options){if(typeof options.itemsAlwaysDraggable===\"boolean\"){this.options.itemsAlwaysDraggable.item=options.itemsAlwaysDraggable;this.options.itemsAlwaysDraggable.range=false}else if((0,_typeof3[\"default\"])(options.itemsAlwaysDraggable)===\"object\"){util.selectiveExtend([\"item\",\"range\"],this.options.itemsAlwaysDraggable,options.itemsAlwaysDraggable);if(!this.options.itemsAlwaysDraggable.item){this.options.itemsAlwaysDraggable.range=false}}}if(\"orientation\"in options){if(typeof options.orientation===\"string\"){this.options.orientation.item=options.orientation===\"top\"?\"top\":\"bottom\"}else if((0,_typeof3[\"default\"])(options.orientation)===\"object\"&&\"item\"in options.orientation){this.options.orientation.item=options.orientation.item}}if(\"margin\"in options){if(typeof options.margin===\"number\"){this.options.margin.axis=options.margin;this.options.margin.item.horizontal=options.margin;this.options.margin.item.vertical=options.margin}else if((0,_typeof3[\"default\"])(options.margin)===\"object\"){util.selectiveExtend([\"axis\"],this.options.margin,options.margin);if(\"item\"in options.margin){if(typeof options.margin.item===\"number\"){this.options.margin.item.horizontal=options.margin.item;this.options.margin.item.vertical=options.margin.item}else if((0,_typeof3[\"default\"])(options.margin.item)===\"object\"){util.selectiveExtend([\"horizontal\",\"vertical\"],this.options.margin.item,options.margin.item)}}}}if(\"editable\"in options){if(typeof options.editable===\"boolean\"){this.options.editable.updateTime=options.editable;this.options.editable.updateGroup=options.editable;this.options.editable.add=options.editable;this.options.editable.remove=options.editable;this.options.editable.overrideItems=false}else if((0,_typeof3[\"default\"])(options.editable)===\"object\"){util.selectiveExtend([\"updateTime\",\"updateGroup\",\"add\",\"remove\",\"overrideItems\"],this.options.editable,options.editable)}}if(\"groupEditable\"in options){if(typeof options.groupEditable===\"boolean\"){this.options.groupEditable.order=options.groupEditable;this.options.groupEditable.add=options.groupEditable;this.options.groupEditable.remove=options.groupEditable}else if((0,_typeof3[\"default\"])(options.groupEditable)===\"object\"){util.selectiveExtend([\"order\",\"add\",\"remove\"],this.options.groupEditable,options.groupEditable)}}var addCallback=function(name){var fn=options[name];if(fn){if(!(fn instanceof Function)){throw new Error(\"option \"+name+\" must be a function \"+name+\"(item, callback)\")}this.options[name]=fn}}.bind(this);[\"onDropObjectOnItem\",\"onAdd\",\"onUpdate\",\"onRemove\",\"onMove\",\"onMoving\",\"onAddGroup\",\"onMoveGroup\",\"onRemoveGroup\"].forEach(addCallback);this.markDirty()}};ItemSet.prototype.markDirty=function(options){this.groupIds=[];if(options&&options.refreshItems){util.forEach(this.items,function(item){item.dirty=true;if(item.displayed)item.redraw()})}};ItemSet.prototype.destroy=function(){this.hide();this.setItems(null);this.setGroups(null);this.hammer=null;this.body=null;this.conversion=null};ItemSet.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.axis.parentNode){this.dom.axis.parentNode.removeChild(this.dom.axis)}if(this.dom.labelSet.parentNode){this.dom.labelSet.parentNode.removeChild(this.dom.labelSet)}};ItemSet.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}if(!this.dom.axis.parentNode){this.body.dom.backgroundVertical.appendChild(this.dom.axis)}if(!this.dom.labelSet.parentNode){if(this.options.rtl){this.body.dom.right.appendChild(this.dom.labelSet)}else{this.body.dom.left.appendChild(this.dom.labelSet)}}};ItemSet.prototype.setSelection=function(ids){var i,ii,id,item;if(ids==undefined)ids=[];if(!Array.isArray(ids))ids=[ids];for(i=0,ii=this.selection.length;i<ii;i++){id=this.selection[i];item=this.items[id];if(item)item.unselect()}this.selection=[];for(i=0,ii=ids.length;i<ii;i++){id=ids[i];item=this.items[id];if(item){this.selection.push(id);item.select()}}};ItemSet.prototype.getSelection=function(){return this.selection.concat([])};ItemSet.prototype.getVisibleItems=function(){var range=this.body.range.getRange();var right,left;if(this.options.rtl){right=this.body.util.toScreen(range.start);left=this.body.util.toScreen(range.end)}else{left=this.body.util.toScreen(range.start);right=this.body.util.toScreen(range.end)}var ids=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];var rawVisibleItems=group.isVisible?group.visibleItems:[];for(var i=0;i<rawVisibleItems.length;i++){var item=rawVisibleItems[i];if(this.options.rtl){if(item.right<left&&item.right+item.width>right){ids.push(item.id)}}else{if(item.left<right&&item.left+item.width>left){ids.push(item.id)}}}}}return ids};ItemSet.prototype._deselect=function(id){var selection=this.selection;for(var i=0,ii=selection.length;i<ii;i++){if(selection[i]==id){selection.splice(i,1);break}}};ItemSet.prototype.redraw=function(){var margin=this.options.margin,range=this.body.range,asSize=util.option.asSize,options=this.options,orientation=options.orientation.item,resized=false,frame=this.dom.frame;this.props.top=this.body.domProps.top.height+this.body.domProps.border.top;if(this.options.rtl){this.props.right=this.body.domProps.right.width+this.body.domProps.border.right}else{this.props.left=this.body.domProps.left.width+this.body.domProps.border.left}frame.className=\"vis-itemset\";resized=this._orderGroups()||resized;var visibleInterval=range.end-range.start;var zoomed=visibleInterval!=this.lastVisibleInterval||this.props.width!=this.props.lastWidth;var scrolled=range.start!=this.lastRangeStart;var changedStackOption=options.stack!=this.lastStack;var changedStackSubgroupsOption=options.stackSubgroups!=this.lastStackSubgroups;var forceRestack=zoomed||scrolled||changedStackOption||changedStackSubgroupsOption;this.lastVisibleInterval=visibleInterval;this.lastRangeStart=range.start;this.lastStack=options.stack;this.lastStackSubgroups=options.stackSubgroups;this.props.lastWidth=this.props.width;var firstGroup=this._firstGroup();var firstMargin={item:margin.item,axis:margin.axis};var nonFirstMargin={item:margin.item,axis:margin.item.vertical/2};var height=0;var minHeight=margin.axis+margin.item.vertical;this.groups[BACKGROUND].redraw(range,nonFirstMargin,forceRestack);var redrawQueue={};var redrawQueueLength=0;util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupMargin=group==firstGroup?firstMargin:nonFirstMargin;var returnQueue=true;redrawQueue[key]=group.redraw(range,groupMargin,forceRestack,returnQueue);redrawQueueLength=redrawQueue[key].length});var needRedraw=redrawQueueLength>0;if(needRedraw){var redrawResults={};for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns,key){redrawResults[key]=fns[i]()})}util.forEach(this.groups,function(group,key){if(key===BACKGROUND)return;var groupResized=redrawResults[key];resized=groupResized||resized;height+=group.height});height=Math.max(height,minHeight)}height=Math.max(height,minHeight);frame.style.height=asSize(height);this.props.width=frame.offsetWidth;this.props.height=height;this.dom.axis.style.top=asSize(orientation==\"top\"?this.body.domProps.top.height+this.body.domProps.border.top:this.body.domProps.top.height+this.body.domProps.centerContainer.height);if(this.options.rtl){this.dom.axis.style.right=\"0\"}else{this.dom.axis.style.left=\"0\"}this.initialItemSetDrawn=true;resized=this._isResized()||resized;return resized};ItemSet.prototype._firstGroup=function(){var firstGroupIndex=this.options.orientation.item==\"top\"?0:this.groupIds.length-1;var firstGroupId=this.groupIds[firstGroupIndex];var firstGroup=this.groups[firstGroupId]||this.groups[UNGROUPED];return firstGroup||null};ItemSet.prototype._updateUngrouped=function(){var ungrouped=this.groups[UNGROUPED];var item,itemId;if(this.groupsData){if(ungrouped){ungrouped.hide();delete this.groups[UNGROUPED];for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];item.parent&&item.parent.remove(item);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];group&&group.add(item)||item.hide()}}}}else{if(!ungrouped){var id=null;var data=null;ungrouped=new Group(id,data,this);this.groups[UNGROUPED]=ungrouped;for(itemId in this.items){if(this.items.hasOwnProperty(itemId)){item=this.items[itemId];ungrouped.add(item)}}ungrouped.show()}}};ItemSet.prototype.getLabelSet=function(){return this.dom.labelSet};ItemSet.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids);this._updateUngrouped()}this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getItems=function(){return this.itemsData};ItemSet.prototype.setGroups=function(groups){var me=this,ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;this._onRemoveGroups(ids)}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}groupsData.get().forEach(function(group){if(group.nestedGroups){group.nestedGroups.forEach(function(nestedGroupId){var updatedNestedGroup=groupsData.get(nestedGroupId);updatedNestedGroup.nestedInGroup=group.id;if(group.showNested==false){updatedNestedGroup.visible=false}groupsData.update(updatedNestedGroup)})}});var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}this._updateUngrouped();this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype.getGroups=function(){return this.groupsData};ItemSet.prototype.removeItem=function(id){var item=this.itemsData.get(id),dataset=this.itemsData.getDataSet();if(item){this.options.onRemove(item,function(item){if(item){dataset.remove(id)}})}};ItemSet.prototype._getType=function(itemData){return itemData.type||this.options.type||(itemData.end?\"range\":\"box\")};ItemSet.prototype._getGroupId=function(itemData){var type=this._getType(itemData);if(type==\"background\"&&itemData.group==undefined){return BACKGROUND}else{return this.groupsData?itemData.group:UNGROUPED}};ItemSet.prototype._onUpdate=function(ids){var me=this;ids.forEach(function(id){var itemData=me.itemsData.get(id,me.itemOptions);var item=me.items[id];var type=itemData?me._getType(itemData):null;var constructor=ItemSet.types[type];var selected;if(item){if(!constructor||!(item instanceof constructor)){selected=item.selected;me._removeItem(item);item=null}else{me._updateItem(item,itemData)}}if(!item&&itemData){if(constructor){item=new constructor(itemData,me.conversion,me.options);item.id=id;me._addItem(item);if(selected){this.selection.push(id);item.select()}}else if(type==\"rangeoverflow\"){throw new TypeError('Item type \"rangeoverflow\" is deprecated. Use css styling instead: '+\".vis-item.vis-range .vis-item-content {overflow: visible;}\")}else{throw new TypeError('Unknown item type \"'+type+'\"')}}}.bind(this));this._order();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onAdd=ItemSet.prototype._onUpdate;ItemSet.prototype._onRemove=function(ids){var count=0;var me=this;ids.forEach(function(id){var item=me.items[id];if(item){count++;me._removeItem(item)}});if(count){this._order();this.body.emitter.emit(\"_change\",{queue:true})}};ItemSet.prototype._order=function(){util.forEach(this.groups,function(group){group.order()})};ItemSet.prototype._onUpdateGroups=function(ids){this._onAddGroups(ids)};ItemSet.prototype._onAddGroups=function(ids){var me=this;ids.forEach(function(id){var groupData=me.groupsData.get(id);var group=me.groups[id];if(!group){if(id==UNGROUPED||id==BACKGROUND){throw new Error(\"Illegal group id. \"+id+\" is a reserved id.\")}var groupOptions=(0,_create2[\"default\"])(me.options);util.extend(groupOptions,{height:null});group=new Group(id,groupData,me);me.groups[id]=group;for(var itemId in me.items){if(me.items.hasOwnProperty(itemId)){var item=me.items[itemId];if(item.data.group==id){group.add(item)}}}group.order();group.show()}else{group.setData(groupData)}});this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._onRemoveGroups=function(ids){var groups=this.groups;ids.forEach(function(id){var group=groups[id];if(group){group.hide();delete groups[id]}});this.markDirty();this.body.emitter.emit(\"_change\",{queue:true})};ItemSet.prototype._orderGroups=function(){if(this.groupsData){var groupIds=this.groupsData.getIds({order:this.options.groupOrder});groupIds=this._orderNestedGroups(groupIds);var changed=!util.equalArray(groupIds,this.groupIds);if(changed){var groups=this.groups;groupIds.forEach(function(groupId){groups[groupId].hide()});groupIds.forEach(function(groupId){groups[groupId].show()});this.groupIds=groupIds}return changed}else{return false}};ItemSet.prototype._orderNestedGroups=function(groupIds){var newGroupIdsOrder=[];groupIds.forEach(function(groupId){var groupData=this.groupsData.get(groupId);if(!groupData.nestedInGroup){newGroupIdsOrder.push(groupId)}if(groupData.nestedGroups){var nestedGroups=this.groupsData.get({filter:function filter(nestedGroup){return nestedGroup.nestedInGroup==groupId},order:this.options.groupOrder});var nestedGroupIds=nestedGroups.map(function(nestedGroup){return nestedGroup.id});newGroupIdsOrder=newGroupIdsOrder.concat(nestedGroupIds)}},this);return newGroupIdsOrder};ItemSet.prototype._addItem=function(item){this.items[item.id]=item;var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}if(group)group.add(item)};ItemSet.prototype._updateItem=function(item,itemData){item.setData(itemData);var groupId=this._getGroupId(item.data);var group=this.groups[groupId];if(!group){item.groupShowing=false}else if(group&&group.data&&group.data.showNested){item.groupShowing=true}};ItemSet.prototype._removeItem=function(item){item.hide();delete this.items[item.id];var index=this.selection.indexOf(item.id);if(index!=-1)this.selection.splice(index,1);item.parent&&item.parent.remove(item)};ItemSet.prototype._constructByEndArray=function(array){var endArray=[];for(var i=0;i<array.length;i++){if(array[i]instanceof RangeItem){endArray.push(array[i])}}return endArray};ItemSet.prototype._onTouch=function(event){this.touchParams.item=this.itemFromTarget(event);this.touchParams.dragLeftItem=event.target.dragLeftItem||false;this.touchParams.dragRightItem=event.target.dragRightItem||false;this.touchParams.itemProps=null};ItemSet.prototype._getGroupIndex=function(groupId){for(var i=0;i<this.groupIds.length;i++){if(groupId==this.groupIds[i])return i}};ItemSet.prototype._onDragStart=function(event){if(this.touchParams.itemIsDragging){return}var item=this.touchParams.item||null;var me=this;var props;if(item&&(item.selected||this.options.itemsAlwaysDraggable.item)){if(this.options.editable.overrideItems&&!this.options.editable.updateTime&&!this.options.editable.updateGroup){return}if(item.editable!=null&&!item.editable.updateTime&&!item.editable.updateGroup&&!this.options.editable.overrideItems){return}var dragLeftItem=this.touchParams.dragLeftItem;var dragRightItem=this.touchParams.dragRightItem;this.touchParams.itemIsDragging=true;this.touchParams.selectedItem=item;if(dragLeftItem){props={item:dragLeftItem,initialX:event.center.x,dragLeft:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(dragRightItem){props={item:dragRightItem,initialX:event.center.x,dragRight:true,data:this._cloneItemData(item.data)};this.touchParams.itemProps=[props]}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}else{if(this.groupIds.length<1){this.redraw()}var baseGroupIndex=this._getGroupIndex(item.data.group);var itemsToDrag=this.options.itemsAlwaysDraggable.item&&!item.selected?[item.id]:this.getSelection();this.touchParams.itemProps=itemsToDrag.map(function(id){var item=me.items[id];var groupIndex=me._getGroupIndex(item.data.group);return{item:item,initialX:event.center.x,groupOffset:baseGroupIndex-groupIndex,data:this._cloneItemData(item.data)}}.bind(this))}event.stopPropagation()}else if(this.options.editable.add&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey)){this._onDragStartAddItem(event)}};ItemSet.prototype._onDragStartAddItem=function(event){var xAbs;var x;var snap=this.options.snap||null;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x+10}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs-10}var time=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var start=snap?snap(time,scale,step):time;var end=start;var itemData={type:\"range\",start:start,end:end,content:\"new item\"};var id=util.randomUUID();itemData[this.itemsData._fieldId]=id;var group=this.groupFromTarget(event);if(group){itemData.group=group.groupId}var newItem=new RangeItem(itemData,this.conversion,this.options);newItem.id=id;newItem.data=this._cloneItemData(itemData);this._addItem(newItem);this.touchParams.selectedItem=newItem;var props={item:newItem,initialX:event.center.x,data:newItem.data};if(this.options.rtl){props.dragLeft=true}else{props.dragRight=true}this.touchParams.itemProps=[props];event.stopPropagation()};ItemSet.prototype._onDrag=function(event){if(this.touchParams.itemProps){event.stopPropagation();var me=this;var snap=this.options.snap||null;var xOffset;if(this.options.rtl){xOffset=this.body.dom.root.offsetLeft+this.body.domProps.right.width}else{xOffset=this.body.dom.root.offsetLeft+this.body.domProps.left.width}var scale=this.body.util.getScale();var step=this.body.util.getStep();var selectedItem=this.touchParams.selectedItem;var updateGroupAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateGroup||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateGroup;var newGroupBase=null;if(updateGroupAllowed&&selectedItem){if(selectedItem.data.group!=undefined){var group=me.groupFromTarget(event);if(group){newGroupBase=this._getGroupIndex(group.groupId)}}}this.touchParams.itemProps.forEach(function(props){var current=me.body.util.toTime(event.center.x-xOffset);var initial=me.body.util.toTime(props.initialX-xOffset);var offset;var initialStart;var initialEnd;var start;var end;if(this.options.rtl){offset=-(current-initial)}else{offset=current-initial}var itemData=this._cloneItemData(props.item.data);if(props.item.editable!=null&&!props.item.editable.updateTime&&!props.item.editable.updateGroup&&!me.options.editable.overrideItems){return}var updateTimeAllowed=(this.options.editable.overrideItems||selectedItem.editable==null)&&this.options.editable.updateTime||!this.options.editable.overrideItems&&selectedItem.editable!=null&&selectedItem.editable.updateTime;if(updateTimeAllowed){if(props.dragLeft){if(this.options.rtl){if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}}else if(props.dragRight){if(this.options.rtl){if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\");start=new Date(initialStart.valueOf()+offset);itemData.start=snap?snap(start,scale,step):start}}else{if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");end=new Date(initialEnd.valueOf()+offset);itemData.end=snap?snap(end,scale,step):end}}}else{if(itemData.start!=undefined){initialStart=util.convert(props.data.start,\"Date\").valueOf();start=new Date(initialStart+offset);if(itemData.end!=undefined){initialEnd=util.convert(props.data.end,\"Date\");var duration=initialEnd.valueOf()-initialStart.valueOf();itemData.start=snap?snap(start,scale,step):start;itemData.end=new Date(itemData.start.valueOf()+duration)}else{itemData.start=snap?snap(start,scale,step):start}}}}if(updateGroupAllowed&&!props.dragLeft&&!props.dragRight&&newGroupBase!=null){if(itemData.group!=undefined){var newOffset=newGroupBase-props.groupOffset;newOffset=Math.max(0,newOffset);newOffset=Math.min(me.groupIds.length-1,newOffset);itemData.group=me.groupIds[newOffset]}}itemData=this._cloneItemData(itemData);me.options.onMoving(itemData,function(itemData){if(itemData){props.item.setData(this._cloneItemData(itemData,\"Date\"))}}.bind(this))}.bind(this));this.body.emitter.emit(\"_change\")}};ItemSet.prototype._moveToGroup=function(item,groupId){var group=this.groups[groupId];if(group&&group.groupId!=item.data.group){var oldGroup=item.parent;oldGroup.remove(item);oldGroup.order();item.data.group=group.groupId;group.add(item);group.order()}};ItemSet.prototype._onDragEnd=function(event){this.touchParams.itemIsDragging=false;if(this.touchParams.itemProps){event.stopPropagation();var me=this;var dataset=this.itemsData.getDataSet();var itemProps=this.touchParams.itemProps;this.touchParams.itemProps=null;itemProps.forEach(function(props){var id=props.item.id;var exists=me.itemsData.get(id,me.itemOptions)!=null;if(!exists){me.options.onAdd(props.item.data,function(itemData){me._removeItem(props.item);if(itemData){me.itemsData.getDataSet().add(itemData)}me.body.emitter.emit(\"_change\")})}else{var itemData=this._cloneItemData(props.item.data);me.options.onMove(itemData,function(itemData){if(itemData){itemData[dataset._fieldId]=id;dataset.update(itemData)}else{props.item.setData(props.data);me.body.emitter.emit(\"_change\")}})}}.bind(this))}};ItemSet.prototype._onGroupClick=function(event){var group=this.groupFromTarget(event);if(!group||!group.nestedGroups)return;var groupsData=this.groupsData.getDataSet();var nestingGroup=groupsData.get(group.groupId);if(nestingGroup.showNested==undefined){nestingGroup.showNested=true}nestingGroup.showNested=!nestingGroup.showNested;var nestedGroups=groupsData.get(group.nestedGroups).map(function(nestedGroup){nestedGroup.visible=nestingGroup.showNested;return nestedGroup});groupsData.update(nestedGroups.concat(nestingGroup));if(nestingGroup.showNested){util.removeClassName(group.dom.label,\"collapsed\");util.addClassName(group.dom.label,\"expanded\")}else{util.removeClassName(group.dom.label,\"expanded\");var collapsedDirClassName=this.options.rtl?\"collapsed-rtl\":\"collapsed\";util.addClassName(group.dom.label,collapsedDirClassName)}};ItemSet.prototype._onGroupDragStart=function(event){if(this.options.groupEditable.order){this.groupTouchParams.group=this.groupFromTarget(event);if(this.groupTouchParams.group){event.stopPropagation();this.groupTouchParams.originalOrder=this.groupsData.getIds({order:this.options.groupOrder})}}};ItemSet.prototype._onGroupDrag=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var groupsData=this.groupsData;if(this.groupsData instanceof DataView){groupsData=this.groupsData.getDataSet()}var group=this.groupFromTarget(event);if(group&&group.height!=this.groupTouchParams.group.height){var movingUp=group.top<this.groupTouchParams.group.top;var clientY=event.center?event.center.y:event.clientY;var targetGroupTop=util.getAbsoluteTop(group.dom.foreground);var draggedGroupHeight=this.groupTouchParams.group.height;if(movingUp){if(targetGroupTop+draggedGroupHeight<clientY){return}}else{var targetGroupHeight=group.height;if(targetGroupTop+targetGroupHeight-draggedGroupHeight>clientY){return}}}if(group&&group!=this.groupTouchParams.group){var targetGroup=groupsData.get(group.groupId);var draggedGroup=groupsData.get(this.groupTouchParams.group.groupId);if(draggedGroup&&targetGroup){this.options.groupOrderSwap(draggedGroup,targetGroup,groupsData);groupsData.update(draggedGroup);groupsData.update(targetGroup)}var newOrder=groupsData.getIds({order:this.options.groupOrder});if(!util.equalArray(newOrder,this.groupTouchParams.originalOrder)){var origOrder=this.groupTouchParams.originalOrder;var draggedId=this.groupTouchParams.group.groupId;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;var newOffset=0;var orgOffset=0;while(curPos<numGroups){while(curPos+newOffset<numGroups&&curPos+orgOffset<numGroups&&newOrder[curPos+newOffset]==origOrder[curPos+orgOffset]){curPos++}if(curPos+newOffset>=numGroups){break}if(newOrder[curPos+newOffset]==draggedId){newOffset=1}else if(origOrder[curPos+orgOffset]==draggedId){orgOffset=1}else{var slippedPosition=newOrder.indexOf(origOrder[curPos+orgOffset]);var switchGroup=groupsData.get(newOrder[curPos+newOffset]);var shouldBeGroup=groupsData.get(origOrder[curPos+orgOffset]);this.options.groupOrderSwap(switchGroup,shouldBeGroup,groupsData);groupsData.update(switchGroup);groupsData.update(shouldBeGroup);var switchGroupId=newOrder[curPos+newOffset];newOrder[curPos+newOffset]=origOrder[curPos+orgOffset];newOrder[slippedPosition]=switchGroupId;curPos++}}}}}};ItemSet.prototype._onGroupDragEnd=function(event){if(this.options.groupEditable.order&&this.groupTouchParams.group){event.stopPropagation();var me=this;var id=me.groupTouchParams.group.groupId;var dataset=me.groupsData.getDataSet();var groupData=util.extend({},dataset.get(id));me.options.onMoveGroup(groupData,function(groupData){if(groupData){groupData[dataset._fieldId]=id;dataset.update(groupData)}else{var newOrder=dataset.getIds({order:me.options.groupOrder});if(!util.equalArray(newOrder,me.groupTouchParams.originalOrder)){var origOrder=me.groupTouchParams.originalOrder;var numGroups=Math.min(origOrder.length,newOrder.length);var curPos=0;while(curPos<numGroups){while(curPos<numGroups&&newOrder[curPos]==origOrder[curPos]){curPos++}if(curPos>=numGroups){break}var slippedPosition=newOrder.indexOf(origOrder[curPos]);var switchGroup=dataset.get(newOrder[curPos]);var shouldBeGroup=dataset.get(origOrder[curPos]);me.options.groupOrderSwap(switchGroup,shouldBeGroup,dataset);dataset.update(switchGroup);dataset.update(shouldBeGroup);var switchGroupId=newOrder[curPos];newOrder[curPos]=origOrder[curPos];newOrder[slippedPosition]=switchGroupId;curPos++}}}});me.body.emitter.emit(\"groupDragged\",{groupId:id})}};ItemSet.prototype._onSelectItem=function(event){if(!this.options.selectable)return;var ctrlKey=event.srcEvent&&(event.srcEvent.ctrlKey||event.srcEvent.metaKey);var shiftKey=event.srcEvent&&event.srcEvent.shiftKey;if(ctrlKey||shiftKey){this._onMultiSelectItem(event);return}var oldSelection=this.getSelection();var item=this.itemFromTarget(event);var selection=item?[item.id]:[];this.setSelection(selection);var newSelection=this.getSelection();if(newSelection.length>0||oldSelection.length>0){this.body.emitter.emit(\"select\",{items:newSelection,event:event})}};ItemSet.prototype._onMouseOver=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}var title=item.getTitle();if(this.options.showTooltips&&title){if(this.popup==null){this.popup=new Popup(this.body.dom.root,this.options.tooltip.overflowMethod||\"flip\")}this.popup.setText(title);var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}else{if(this.popup!=null){this.popup.hide()}}this.body.emitter.emit(\"itemover\",{item:item.id,event:event})};ItemSet.prototype._onMouseOut=function(event){var item=this.itemFromTarget(event);if(!item)return;var related=this.itemFromRelatedTarget(event);if(item===related){return}if(this.popup!=null){this.popup.hide()}this.body.emitter.emit(\"itemout\",{item:item.id,event:event})};ItemSet.prototype._onMouseMove=function(event){var item=this.itemFromTarget(event);if(!item)return;if(this.options.showTooltips&&this.options.tooltip.followMouse){if(this.popup){if(!this.popup.hidden){var container=this.body.dom.centerContainer;this.popup.setPosition(event.clientX-util.getAbsoluteLeft(container)+container.offsetLeft,event.clientY-util.getAbsoluteTop(container)+container.offsetTop);this.popup.show()}}}};ItemSet.prototype._onMouseWheel=function(event){if(this.touchParams.itemIsDragging){this._onDragEnd(event)}};ItemSet.prototype._onUpdateItem=function(item){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;if(item){var itemData=me.itemsData.get(item.id);this.options.onUpdate(itemData,function(itemData){if(itemData){me.itemsData.getDataSet().update(itemData)}})}};ItemSet.prototype._onDropObjectOnItem=function(event){var item=this.itemFromTarget(event);var objectData=JSON.parse(event.dataTransfer.getData(\"text\"));this.options.onDropObjectOnItem(objectData,item)};ItemSet.prototype._onAddItem=function(event){if(!this.options.selectable)return;if(!this.options.editable.add)return;var me=this;var snap=this.options.snap||null;var xAbs;var x;if(this.options.rtl){xAbs=util.getAbsoluteRight(this.dom.frame);x=xAbs-event.center.x}else{xAbs=util.getAbsoluteLeft(this.dom.frame);x=event.center.x-xAbs}var start=this.body.util.toTime(x);var scale=this.body.util.getScale();var step=this.body.util.getStep();var end;var newItemData;if(event.type==\"drop\"){newItemData=JSON.parse(event.dataTransfer.getData(\"text\"));newItemData.content=newItemData.content?newItemData.content:\"new item\";newItemData.start=newItemData.start?newItemData.start:snap?snap(start,scale,step):start;newItemData.type=newItemData.type||\"box\";newItemData[this.itemsData._fieldId]=newItemData.id||util.randomUUID();if(newItemData.type==\"range\"&&!newItemData.end){end=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}else{newItemData={start:snap?snap(start,scale,step):start,content:\"new item\"};newItemData[this.itemsData._fieldId]=util.randomUUID();if(this.options.type===\"range\"){\nend=this.body.util.toTime(x+this.props.width/5);newItemData.end=snap?snap(end,scale,step):end}}var group=this.groupFromTarget(event);if(group){newItemData.group=group.groupId}newItemData=this._cloneItemData(newItemData);this.options.onAdd(newItemData,function(item){if(item){me.itemsData.getDataSet().add(item);if(event.type==\"drop\"){me.setSelection([item.id])}}})};ItemSet.prototype._onMultiSelectItem=function(event){if(!this.options.selectable)return;var item=this.itemFromTarget(event);if(item){var selection=this.options.multiselect?this.getSelection():[];var shiftKey=event.srcEvent&&event.srcEvent.shiftKey||false;if(shiftKey&&this.options.multiselect){var itemGroup=this.itemsData.get(item.id).group;var lastSelectedGroup=undefined;if(this.options.multiselectPerGroup){if(selection.length>0){lastSelectedGroup=this.itemsData.get(selection[0]).group}}if(!this.options.multiselectPerGroup||lastSelectedGroup==undefined||lastSelectedGroup==itemGroup){selection.push(item.id)}var range=ItemSet._getItemRange(this.itemsData.get(selection,this.itemOptions));if(!this.options.multiselectPerGroup||lastSelectedGroup==itemGroup){selection=[];for(var id in this.items){if(this.items.hasOwnProperty(id)){var _item=this.items[id];var start=_item.data.start;var end=_item.data.end!==undefined?_item.data.end:start;if(start>=range.min&&end<=range.max&&(!this.options.multiselectPerGroup||lastSelectedGroup==this.itemsData.get(_item.id).group)&&!(_item instanceof BackgroundItem)){selection.push(_item.id)}}}}}else{var index=selection.indexOf(item.id);if(index==-1){selection.push(item.id)}else{selection.splice(index,1)}}this.setSelection(selection);this.body.emitter.emit(\"select\",{items:this.getSelection(),event:event})}};ItemSet._getItemRange=function(itemsData){var max=null;var min=null;itemsData.forEach(function(data){if(min==null||data.start<min){min=data.start}if(data.end!=undefined){if(max==null||data.end>max){max=data.end}}else{if(max==null||data.start>max){max=data.start}}});return{min:min,max:max}};ItemSet.prototype.itemFromElement=function(element){var cur=element;while(cur){if(cur.hasOwnProperty(\"timeline-item\")){return cur[\"timeline-item\"]}cur=cur.parentNode}return null};ItemSet.prototype.itemFromTarget=function(event){return this.itemFromElement(event.target)};ItemSet.prototype.itemFromRelatedTarget=function(event){return this.itemFromElement(event.relatedTarget)};ItemSet.prototype.groupFromTarget=function(event){var clientY=event.center?event.center.y:event.clientY;var groupIds=this.groupIds;if(groupIds.length<=0&&this.groupsData){groupIds=this.groupsData.getIds({order:this.options.groupOrder})}for(var i=0;i<groupIds.length;i++){var groupId=groupIds[i];var group=this.groups[groupId];var foreground=group.dom.foreground;var top=util.getAbsoluteTop(foreground);if(clientY>top&&clientY<top+foreground.offsetHeight){return group}if(this.options.orientation.item===\"top\"){if(i===this.groupIds.length-1&&clientY>top){return group}}else{if(i===0&&clientY<top+foreground.offset){return group}}}return null};ItemSet.itemSetFromTarget=function(event){var target=event.target;while(target){if(target.hasOwnProperty(\"timeline-itemset\")){return target[\"timeline-itemset\"]}target=target.parentNode}return null};ItemSet.prototype._cloneItemData=function(itemData,type){var clone=util.extend({},itemData);if(!type){type=this.itemsData.getDataSet()._options.type}if(clone.start!=undefined){clone.start=util.convert(clone.start,type&&type.start||\"Date\")}if(clone.end!=undefined){clone.end=util.convert(clone.end,type&&type.end||\"Date\")}return clone};module.exports=ItemSet},function(module,exports,__webpack_require__){\"use strict\";var EPSILON=.001;exports.orderByStart=function(items){items.sort(function(a,b){return a.data.start-b.data.start})};exports.orderByEnd=function(items){items.sort(function(a,b){var aTime=\"end\"in a.data?a.data.end:a.data.start,bTime=\"end\"in b.data?b.data.end:b.data.start;return aTime-bTime})};exports.stack=function(items,margin,force){if(force){for(var i=0;i<items.length;i++){items[i].top=null}}for(var i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=margin.axis;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&other.stack&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}}while(collidingItem)}}};exports.substack=function(items,margin,subgroup){for(var i=0;i<items.length;i++){items[i].top=null}var subgroupHeight=subgroup.height;for(i=0;i<items.length;i++){var item=items[i];if(item.stack&&item.top===null){item.top=item.baseTop;do{var collidingItem=null;for(var j=0,jj=items.length;j<jj;j++){var other=items[j];if(other.top!==null&&other!==item&&exports.collision(item,other,margin.item,other.options.rtl)){collidingItem=other;break}}if(collidingItem!=null){item.top=collidingItem.top+collidingItem.height+margin.item.vertical}if(item.top+item.height>subgroupHeight){subgroupHeight=item.top+item.height}}while(collidingItem)}}subgroup.height=subgroupHeight-subgroup.top+.5*margin.item.vertical};exports.nostack=function(items,margin,subgroups,stackSubgroups){for(var i=0;i<items.length;i++){if(items[i].data.subgroup==undefined){items[i].top=margin.item.vertical}else if(items[i].data.subgroup!==undefined&&stackSubgroups){var newTop=0;for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){if(subgroups[subgroup].visible==true&&subgroups[subgroup].index<subgroups[items[i].data.subgroup].index){newTop+=subgroups[subgroup].height;subgroups[items[i].data.subgroup].top=newTop}}}items[i].top=newTop+.5*margin.item.vertical}}if(!stackSubgroups){exports.stackSubgroups(items,margin,subgroups)}};exports.stackSubgroups=function(items,margin,subgroups){for(var subgroup in subgroups){if(subgroups.hasOwnProperty(subgroup)){subgroups[subgroup].top=0;do{var collidingItem=null;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].top!==null&&otherSubgroup!==subgroup&&subgroups[subgroup].index>subgroups[otherSubgroup].index&&exports.collisionByTimes(subgroups[subgroup],subgroups[otherSubgroup])){collidingItem=subgroups[otherSubgroup];break}}if(collidingItem!=null){subgroups[subgroup].top=collidingItem.top+collidingItem.height}}while(collidingItem)}}for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical}}};exports.stackSubgroupsWithInnerStack=function(subgroupItems,margin,subgroups){var doSubStack=false;var subgroupOrder=[];for(var subgroup in subgroups){if(subgroups[subgroup].hasOwnProperty(\"index\")){subgroupOrder[subgroups[subgroup].index]=subgroup}else{subgroupOrder.push(subgroup)}}for(var j=0;j<subgroupOrder.length;j++){subgroup=subgroupOrder[j];if(subgroups.hasOwnProperty(subgroup)){doSubStack=doSubStack||subgroups[subgroup].stack;subgroups[subgroup].top=0;for(var otherSubgroup in subgroups){if(subgroups[otherSubgroup].visible&&subgroups[subgroup].index>subgroups[otherSubgroup].index){subgroups[subgroup].top+=subgroups[otherSubgroup].height}}var items=subgroupItems[subgroup];for(var i=0;i<items.length;i++){if(items[i].data.subgroup!==undefined){items[i].top=subgroups[items[i].data.subgroup].top+.5*margin.item.vertical;if(subgroups[subgroup].stack){items[i].baseTop=items[i].top}}}if(doSubStack&&subgroups[subgroup].stack){exports.substack(subgroupItems[subgroup],margin,subgroups[subgroup])}}}};exports.collision=function(a,b,margin,rtl){if(rtl){return a.right-margin.horizontal+EPSILON<b.right+b.width&&a.right+a.width+margin.horizontal-EPSILON>b.right&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}else{return a.left-margin.horizontal+EPSILON<b.left+b.width&&a.left+a.width+margin.horizontal-EPSILON>b.left&&a.top-margin.vertical+EPSILON<b.top+b.height&&a.top+a.height+margin.vertical-EPSILON>b.top}};exports.collisionByTimes=function(a,b){return a.start<=b.start&&a.end>=b.start&&a.top<b.top+b.height&&a.top+a.height>b.top||b.start<=a.start&&b.end>=a.start&&b.top<a.top+a.height&&b.top+b.height>a.top}},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function BoxItem(data,conversion,options){this.props={dot:{width:0,height:0},line:{width:0,height:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}BoxItem.prototype=new Item(null,null,null);BoxItem.prototype.isVisible=function(range){var isVisible;var align=this.options.align;var widthInMs=this.width*range.getMillisecondsPerPixel();if(align==\"right\"){isVisible=this.data.start.getTime()>range.start&&this.data.start.getTime()-widthInMs<range.end}else if(align==\"left\"){isVisible=this.data.start.getTime()+widthInMs>range.start&&this.data.start.getTime()<range.end}else{isVisible=this.data.start.getTime()+widthInMs/2>range.start&&this.data.start.getTime()-widthInMs/2<range.end}return isVisible};BoxItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"DIV\");this.dom.content=document.createElement(\"DIV\");this.dom.content.className=\"vis-item-content\";this.dom.box.appendChild(this.dom.content);this.dom.line=document.createElement(\"DIV\");this.dom.line.className=\"vis-line\";this.dom.dot=document.createElement(\"DIV\");this.dom.dot.className=\"vis-dot\";this.dom.box[\"timeline-item\"]=this;this.dirty=true}};BoxItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var foreground=this.parent.dom.foreground;if(!foreground)throw new Error(\"Cannot redraw item: parent has no foreground container element\");foreground.appendChild(this.dom.box)}if(!this.dom.line.parentNode){var background=this.parent.dom.background;if(!background)throw new Error(\"Cannot redraw item: parent has no background container element\");background.appendChild(this.dom.line)}if(!this.dom.dot.parentNode){var axis=this.parent.dom.axis;if(!background)throw new Error(\"Cannot redraw item: parent has no axis container element\");axis.appendChild(this.dom.dot)}this.displayed=true};BoxItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.box);this._updateStyle(this.dom.box);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.box.className=\"vis-item vis-box\"+className;this.dom.line.className=\"vis-item vis-line\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};BoxItem.prototype._getDomComponentsSizes=function(){return{previous:{right:this.dom.box.style.right,left:this.dom.box.style.left},dot:{height:this.dom.dot.offsetHeight,width:this.dom.dot.offsetWidth},line:{width:this.dom.line.offsetWidth},box:{width:this.dom.box.offsetWidth,height:this.dom.box.offsetHeight}}};BoxItem.prototype._updateDomComponentsSizes=function(sizes){if(this.options.rtl){this.dom.box.style.right=\"0px\"}else{this.dom.box.style.left=\"0px\"}this.props.dot.height=sizes.dot.height;this.props.dot.width=sizes.dot.width;this.props.line.width=sizes.line.width;this.width=sizes.box.width;this.height=sizes.box.height;if(this.options.rtl){this.dom.box.style.right=sizes.previous.right}else{this.dom.box.style.left=sizes.previous.left}this.dirty=false};BoxItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.box);this._repaintDragCenter();this._repaintDeleteButton(this.dom.box)};BoxItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BoxItem.prototype.show=function(){if(!this.displayed){this.redraw()}};BoxItem.prototype.hide=function(){if(this.displayed){var dom=this.dom;if(dom.box.parentNode)dom.box.parentNode.removeChild(dom.box);if(dom.line.parentNode)dom.line.parentNode.removeChild(dom.line);if(dom.dot.parentNode)dom.dot.parentNode.removeChild(dom.dot);this.displayed=false}};BoxItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);var align=this.options.align;if(align==\"right\"){if(this.options.rtl){this.right=start-this.width;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start-this.width;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width+\"px\";this.dom.dot.style.left=start-this.props.line.width/2-this.props.dot.width/2+\"px\"}}else if(align==\"left\"){if(this.options.rtl){this.right=start;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start+\"px\";this.dom.dot.style.right=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}else{this.left=start;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start+\"px\";this.dom.dot.style.left=start+this.props.line.width/2-this.props.dot.width/2+\"px\"}}else{if(this.options.rtl){this.right=start-this.width/2;this.dom.box.style.right=this.right+\"px\";this.dom.line.style.right=start-this.props.line.width+\"px\";this.dom.dot.style.right=start-this.props.dot.width/2+\"px\"}else{this.left=start-this.width/2;this.dom.box.style.left=this.left+\"px\";this.dom.line.style.left=start-this.props.line.width/2+\"px\";this.dom.dot.style.left=start-this.props.dot.width/2+\"px\"}}};BoxItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var box=this.dom.box;var line=this.dom.line;var dot=this.dom.dot;if(orientation==\"top\"){box.style.top=(this.top||0)+\"px\";line.style.top=\"0\";line.style.height=this.parent.top+this.top+1+\"px\";line.style.bottom=\"\"}else{var itemSetHeight=this.parent.itemSet.props.height;var lineHeight=itemSetHeight-this.parent.top-this.parent.height+this.top;box.style.top=(this.parent.height-this.top-this.height||0)+\"px\";line.style.top=itemSetHeight-lineHeight+\"px\";line.style.bottom=\"0\"}dot.style.top=-this.props.dot.height/2+\"px\"};BoxItem.prototype.getWidthLeft=function(){return this.width/2};BoxItem.prototype.getWidthRight=function(){return this.width/2};module.exports=BoxItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);function PointItem(data,conversion,options){this.props={dot:{top:0,width:0,height:0},content:{height:0,marginLeft:0,marginRight:0}};this.options=options;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data)}}Item.call(this,data,conversion,options)}PointItem.prototype=new Item(null,null,null);PointItem.prototype.isVisible=function(range){var widthInMs=this.width*range.getMillisecondsPerPixel();return this.data.start.getTime()+widthInMs>range.start&&this.data.start<range.end};PointItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.point=document.createElement(\"div\");this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.point.appendChild(this.dom.content);this.dom.dot=document.createElement(\"div\");this.dom.point.appendChild(this.dom.dot);this.dom.point[\"timeline-item\"]=this;this.dirty=true}};PointItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.point.parentNode){var foreground=this.parent.dom.foreground;if(!foreground){throw new Error(\"Cannot redraw item: parent has no foreground container element\")}foreground.appendChild(this.dom.point)}this.displayed=true};PointItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.point);this._updateStyle(this.dom.point);var editable=this.editable.updateTime||this.editable.updateGroup;var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\")+(editable?\" vis-editable\":\" vis-readonly\");this.dom.point.className=\"vis-item vis-point\"+className;this.dom.dot.className=\"vis-item vis-dot\"+className}};PointItem.prototype._getDomComponentsSizes=function(){return{dot:{width:this.dom.dot.offsetWidth,height:this.dom.dot.offsetHeight},content:{width:this.dom.content.offsetWidth,height:this.dom.content.offsetHeight},point:{width:this.dom.point.offsetWidth,height:this.dom.point.offsetHeight}}};PointItem.prototype._updateDomComponentsSizes=function(sizes){this.props.dot.width=sizes.dot.width;this.props.dot.height=sizes.dot.height;this.props.content.height=sizes.content.height;if(this.options.rtl){this.dom.content.style.marginRight=2*this.props.dot.width+\"px\"}else{this.dom.content.style.marginLeft=2*this.props.dot.width+\"px\"}this.width=sizes.point.width;this.height=sizes.point.height;this.dom.dot.style.top=(this.height-this.props.dot.height)/2+\"px\";if(this.options.rtl){this.dom.dot.style.right=this.props.dot.width/2+\"px\"}else{this.dom.dot.style.left=this.props.dot.width/2+\"px\"}this.dirty=false};PointItem.prototype._repaintDomAdditionals=function(){this._repaintOnItemUpdateTimeTooltip(this.dom.point);this._repaintDragCenter();this._repaintDeleteButton(this.dom.point)};PointItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};PointItem.prototype.show=function(){if(!this.displayed){this.redraw()}};PointItem.prototype.hide=function(){if(this.displayed){if(this.dom.point.parentNode){this.dom.point.parentNode.removeChild(this.dom.point)}this.displayed=false}};PointItem.prototype.repositionX=function(){var start=this.conversion.toScreen(this.data.start);if(this.options.rtl){this.right=start-this.props.dot.width;this.dom.point.style.right=this.right+\"px\"}else{this.left=start-this.props.dot.width;this.dom.point.style.left=this.left+\"px\"}};PointItem.prototype.repositionY=function(){var orientation=this.options.orientation.item;var point=this.dom.point;if(orientation==\"top\"){point.style.top=this.top+\"px\"}else{point.style.top=this.parent.height-this.top-this.height+\"px\"}};PointItem.prototype.getWidthLeft=function(){return this.props.dot.width};PointItem.prototype.getWidthRight=function(){return this.props.dot.width};module.exports=PointItem},function(module,exports,__webpack_require__){\"use strict\";var Item=__webpack_require__(38);var BackgroundGroup=__webpack_require__(69);var RangeItem=__webpack_require__(70);function BackgroundItem(data,conversion,options){this.props={content:{width:0}};this.overflow=false;if(data){if(data.start==undefined){throw new Error('Property \"start\" missing in item '+data.id)}if(data.end==undefined){throw new Error('Property \"end\" missing in item '+data.id)}}Item.call(this,data,conversion,options)}BackgroundItem.prototype=new Item(null,null,null);BackgroundItem.prototype.baseClassName=\"vis-item vis-background\";BackgroundItem.prototype.stack=false;BackgroundItem.prototype.isVisible=function(range){return this.data.start<range.end&&this.data.end>range.start};BackgroundItem.prototype._createDomElement=function(){if(!this.dom){this.dom={};this.dom.box=document.createElement(\"div\");this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-item-overflow\";this.dom.box.appendChild(this.dom.frame);this.dom.content=document.createElement(\"div\");this.dom.content.className=\"vis-item-content\";this.dom.frame.appendChild(this.dom.content);this.dirty=true}};BackgroundItem.prototype._appendDomElement=function(){if(!this.parent){throw new Error(\"Cannot redraw item: no parent attached\")}if(!this.dom.box.parentNode){var background=this.parent.dom.background;if(!background){throw new Error(\"Cannot redraw item: parent has no background container element\")}background.appendChild(this.dom.box)}this.displayed=true};BackgroundItem.prototype._updateDirtyDomComponents=function(){if(this.dirty){this._updateContents(this.dom.content);this._updateDataAttributes(this.dom.content);this._updateStyle(this.dom.box);var className=(this.data.className?\" \"+this.data.className:\"\")+(this.selected?\" vis-selected\":\"\");this.dom.box.className=this.baseClassName+className}};BackgroundItem.prototype._getDomComponentsSizes=function(){this.overflow=window.getComputedStyle(this.dom.content).overflow!==\"hidden\";return{content:{width:this.dom.content.offsetWidth}}};BackgroundItem.prototype._updateDomComponentsSizes=function(sizes){this.props.content.width=sizes.content.width;this.height=0;this.dirty=false};BackgroundItem.prototype._repaintDomAdditionals=function(){};BackgroundItem.prototype.redraw=function(returnQueue){var sizes;var queue=[this._createDomElement.bind(this),this._appendDomElement.bind(this),this._updateDirtyDomComponents.bind(this),function(){if(this.dirty){sizes=this._getDomComponentsSizes.bind(this)()}}.bind(this),function(){if(this.dirty){this._updateDomComponentsSizes.bind(this)(sizes)}}.bind(this),this._repaintDomAdditionals.bind(this)];if(returnQueue){return queue}else{var result;queue.forEach(function(fn){result=fn()});return result}};BackgroundItem.prototype.show=RangeItem.prototype.show;BackgroundItem.prototype.hide=RangeItem.prototype.hide;BackgroundItem.prototype.repositionX=RangeItem.prototype.repositionX;BackgroundItem.prototype.repositionY=function(margin){var height;var orientation=this.options.orientation.item;if(this.data.subgroup!==undefined){var itemSubgroup=this.data.subgroup;this.dom.box.style.height=this.parent.subgroups[itemSubgroup].height+\"px\";if(orientation==\"top\"){this.dom.box.style.top=this.parent.top+this.parent.subgroups[itemSubgroup].top+\"px\"}else{this.dom.box.style.top=this.parent.top+this.parent.height-this.parent.subgroups[itemSubgroup].top-this.parent.subgroups[itemSubgroup].height+\"px\"}this.dom.box.style.bottom=\"\"}else{if(this.parent instanceof BackgroundGroup){height=Math.max(this.parent.height,this.parent.itemSet.body.domProps.center.height,this.parent.itemSet.body.domProps.centerContainer.height);this.dom.box.style.bottom=orientation==\"bottom\"?\"0\":\"\";this.dom.box.style.top=orientation==\"top\"?\"0\":\"\"}else{height=this.parent.height;this.dom.box.style.top=this.parent.top+\"px\";this.dom.box.style.bottom=\"\"}}this.dom.box.style.height=height+\"px\"};module.exports=BackgroundItem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Popup=function(){function Popup(container,overflowMethod){(0,_classCallCheck3[\"default\"])(this,Popup);this.container=container;this.overflowMethod=overflowMethod||\"cap\";this.x=0;this.y=0;this.padding=5;this.hidden=false;this.frame=document.createElement(\"div\");this.frame.className=\"vis-tooltip\";this.container.appendChild(this.frame)}(0,_createClass3[\"default\"])(Popup,[{key:\"setPosition\",value:function setPosition(x,y){this.x=parseInt(x);this.y=parseInt(y)}},{key:\"setText\",value:function setText(content){if(content instanceof Element){this.frame.innerHTML=\"\";this.frame.appendChild(content)}else{this.frame.innerHTML=content}}},{key:\"show\",value:function show(doShow){if(doShow===undefined){doShow=true}if(doShow===true){var height=this.frame.clientHeight;var width=this.frame.clientWidth;var maxHeight=this.frame.parentNode.clientHeight;var maxWidth=this.frame.parentNode.clientWidth;var left=0,top=0;if(this.overflowMethod==\"flip\"){var isLeft=false,isTop=true;if(this.y-height<this.padding){isTop=false}if(this.x+width>maxWidth-this.padding){isLeft=true}if(isLeft){left=this.x-width}else{left=this.x}if(isTop){top=this.y-height}else{top=this.y}}else{top=this.y-height;if(top+height+this.padding>maxHeight){top=maxHeight-height-this.padding}if(top<this.padding){top=this.padding}left=this.x;if(left+width+this.padding>maxWidth){left=maxWidth-width-this.padding}if(left<this.padding){left=this.padding}}this.frame.style.left=left+\"px\";this.frame.style.top=top+\"px\";this.frame.style.visibility=\"visible\";this.hidden=false}else{this.hide()}}},{key:\"hide\",value:function hide(){this.hidden=true;this.frame.style.left=\"0\";this.frame.style.top=\"0\";this.frame.style.visibility=\"hidden\"}},{key:\"destroy\",value:function destroy(){this.frame.parentNode.removeChild(this.frame)}}]);return Popup}();exports[\"default\"]=Popup},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},align:{string:string},rtl:{boolean:bool,undefined:\"undefined\"},rollingMode:{follow:{boolean:bool},offset:{number:number,undefined:\"undefined\"},__type__:{object:object}},verticalScroll:{boolean:bool,undefined:\"undefined\"},horizontalScroll:{boolean:bool,undefined:\"undefined\"},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},dataAttributes:{string:string,array:array},editable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},updateGroup:{boolean:bool,undefined:\"undefined\"},updateTime:{boolean:bool,undefined:\"undefined\"},overrideItems:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},week:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object,function:\"function\"}},__type__:{object:object}},moment:{function:\"function\"},groupOrder:{string:string,function:\"function\"},groupEditable:{add:{boolean:bool,undefined:\"undefined\"},remove:{boolean:bool,undefined:\"undefined\"},order:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},groupOrderSwap:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},itemsAlwaysDraggable:{item:{boolean:bool,undefined:\"undefined\"},range:{boolean:bool,undefined:\"undefined\"},__type__:{boolean:bool,object:object}},limitSize:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},margin:{axis:{number:number},item:{horizontal:{number:number,undefined:\"undefined\"},vertical:{number:number,undefined:\"undefined\"},__type__:{object:object,number:number}},__type__:{object:object,number:number}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},multiselectPerGroup:{boolean:bool},onAdd:{function:\"function\"},onDropObjectOnItem:{function:\"function\"},onUpdate:{function:\"function\"},onMove:{function:\"function\"},onMoving:{function:\"function\"},onRemove:{function:\"function\"},onAddGroup:{function:\"function\"},onMoveGroup:{function:\"function\"},onRemoveGroup:{function:\"function\"},onInitialDrawComplete:{function:\"function\"},order:{function:\"function\"},orientation:{axis:{string:string,undefined:\"undefined\"},item:{string:string,undefined:\"undefined\"},__type__:{string:string,object:object}},selectable:{boolean:bool},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},stack:{boolean:bool},stackSubgroups:{boolean:bool},snap:{function:\"function\",null:\"null\"},start:{date:date,number:number,string:string,moment:moment},template:{function:\"function\"},groupTemplate:{function:\"function\"},visibleFrameTemplate:{string:string,function:\"function\"},showTooltips:{boolean:bool},tooltip:{followMouse:{boolean:bool},overflowMethod:{string:[\"cap\",\"flip\"]},__type__:{object:object}},tooltipOnItemUpdateTime:{template:{function:\"function\"},__type__:{boolean:bool,object:object}},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},type:{string:string},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},__type__:{object:object}};var configureOptions={global:{align:[\"center\",\"left\",\"right\"],direction:false,autoResize:true,clickToUse:false,editable:{add:false,remove:false,updateGroup:false,updateTime:false},end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",week:\"w\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",week:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},groupsDraggable:false,height:\"\",locale:\"\",margin:{axis:[20,0,100,1],item:{horizontal:[10,0,100,1],vertical:[10,0,100,1]}},max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:false,multiselect:false,multiselectPerGroup:false,orientation:{axis:[\"both\",\"bottom\",\"top\"],item:[\"bottom\",\"top\"]},selectable:true,showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,stack:true,stackSubgroups:true,start:\"\",showTooltips:true,tooltip:{followMouse:false,overflowMethod:\"flip\"},tooltipOnItemUpdateTime:false,type:[\"box\",\"point\",\"range\",\"background\"],width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Component=__webpack_require__(16);var DataAxis=__webpack_require__(107);var GraphGroup=__webpack_require__(109);var Legend=__webpack_require__(112);var Bars=__webpack_require__(110)\n;var Lines=__webpack_require__(111);var Points=__webpack_require__(72);var UNGROUPED=\"__ungrouped__\";function LineGraph(body,options){this.id=util.randomUUID();this.body=body;this.defaultOptions={yAxisOrientation:\"left\",defaultGroup:\"default\",sort:true,sampling:true,stack:false,graphHeight:\"400px\",shaded:{enabled:false,orientation:\"bottom\"},style:\"line\",barChart:{width:50,sideBySide:false,align:\"center\"},interpolation:{enabled:true,parametrization:\"centripetal\",alpha:.5},drawPoints:{enabled:true,size:6,style:\"square\"},dataAxis:{},legend:{},groups:{visibility:{}}};this.options=util.extend({},this.defaultOptions);this.dom={};this.props={};this.hammer=null;this.groups={};this.abortedGraphUpdate=false;this.updateSVGheight=false;this.updateSVGheightOnResize=false;this.forceGraphUpdate=true;var me=this;this.itemsData=null;this.groupsData=null;this.itemListeners={add:function add(event,params,senderId){me._onAdd(params.items)},update:function update(event,params,senderId){me._onUpdate(params.items)},remove:function remove(event,params,senderId){me._onRemove(params.items)}};this.groupListeners={add:function add(event,params,senderId){me._onAddGroups(params.items)},update:function update(event,params,senderId){me._onUpdateGroups(params.items)},remove:function remove(event,params,senderId){me._onRemoveGroups(params.items)}};this.items={};this.selection=[];this.lastStart=this.body.range.start;this.touchParams={};this.svgElements={};this.setOptions(options);this.groupsUsingDefaultStyles=[0];this.body.emitter.on(\"rangechanged\",function(){me.lastStart=me.body.range.start;me.svg.style.left=util.option.asSize(-me.props.width);me.forceGraphUpdate=true;me.redraw.call(me)});this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups}}LineGraph.prototype=new Component;LineGraph.prototype._create=function(){var frame=document.createElement(\"div\");frame.className=\"vis-line-graph\";this.dom.frame=frame;this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"relative\";this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\";this.svg.style.display=\"block\";frame.appendChild(this.svg);this.options.dataAxis.orientation=\"left\";this.yAxisLeft=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);this.options.dataAxis.orientation=\"right\";this.yAxisRight=new DataAxis(this.body,this.options.dataAxis,this.svg,this.options.groups);delete this.options.dataAxis.orientation;this.legendLeft=new Legend(this.body,this.options.legend,\"left\",this.options.groups);this.legendRight=new Legend(this.body,this.options.legend,\"right\",this.options.groups);this.show()};LineGraph.prototype.setOptions=function(options){if(options){var fields=[\"sampling\",\"defaultGroup\",\"stack\",\"height\",\"graphHeight\",\"yAxisOrientation\",\"style\",\"barChart\",\"dataAxis\",\"sort\",\"groups\"];if(options.graphHeight===undefined&&options.height!==undefined){this.updateSVGheight=true;this.updateSVGheightOnResize=true}else if(this.body.domProps.centerContainer.height!==undefined&&options.graphHeight!==undefined){if(parseInt((options.graphHeight+\"\").replace(\"px\",\"\"))<this.body.domProps.centerContainer.height){this.updateSVGheight=true}}util.selectiveDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");util.mergeOptions(this.options,options,\"legend\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}if(this.yAxisLeft){if(options.dataAxis!==undefined){this.yAxisLeft.setOptions(this.options.dataAxis);this.yAxisRight.setOptions(this.options.dataAxis)}}if(this.legendLeft){if(options.legend!==undefined){this.legendLeft.setOptions(this.options.legend);this.legendRight.setOptions(this.options.legend)}}if(this.groups.hasOwnProperty(UNGROUPED)){this.groups[UNGROUPED].setOptions(options)}}if(this.dom.frame){this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};LineGraph.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};LineGraph.prototype.setItems=function(items){var me=this,ids,oldItemsData=this.itemsData;if(!items){this.itemsData=null}else if(items instanceof DataSet||items instanceof DataView){this.itemsData=items}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(oldItemsData){util.forEach(this.itemListeners,function(callback,event){oldItemsData.off(event,callback)});ids=oldItemsData.getIds();this._onRemove(ids)}if(this.itemsData){var id=this.id;util.forEach(this.itemListeners,function(callback,event){me.itemsData.on(event,callback,id)});ids=this.itemsData.getIds();this._onAdd(ids)}};LineGraph.prototype.setGroups=function(groups){var me=this;var ids;if(this.groupsData){util.forEach(this.groupListeners,function(callback,event){me.groupsData.off(event,callback)});ids=this.groupsData.getIds();this.groupsData=null;for(var i=0;i<ids.length;i++){this._removeGroup(ids[i])}}if(!groups){this.groupsData=null}else if(groups instanceof DataSet||groups instanceof DataView){this.groupsData=groups}else{throw new TypeError(\"Data must be an instance of DataSet or DataView\")}if(this.groupsData){var id=this.id;util.forEach(this.groupListeners,function(callback,event){me.groupsData.on(event,callback,id)});ids=this.groupsData.getIds();this._onAddGroups(ids)}};LineGraph.prototype._onUpdate=function(ids){this._updateAllGroupData(ids)};LineGraph.prototype._onAdd=function(ids){this._onUpdate(ids)};LineGraph.prototype._onRemove=function(ids){this._onUpdate(ids)};LineGraph.prototype._onUpdateGroups=function(groupIds){this._updateAllGroupData(null,groupIds)};LineGraph.prototype._onAddGroups=function(groupIds){this._onUpdateGroups(groupIds)};LineGraph.prototype._onRemoveGroups=function(groupIds){for(var i=0;i<groupIds.length;i++){this._removeGroup(groupIds[i])}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})};LineGraph.prototype._removeGroup=function(groupId){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId);this.legendRight.redraw()}else{this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId);this.legendLeft.redraw()}delete this.groups[groupId]}};LineGraph.prototype._updateGroup=function(group,groupId){if(!this.groups.hasOwnProperty(groupId)){this.groups[groupId]=new GraphGroup(group,groupId,this.options,this.groupsUsingDefaultStyles);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.addGroup(groupId,this.groups[groupId]);this.legendRight.addGroup(groupId,this.groups[groupId])}else{this.yAxisLeft.addGroup(groupId,this.groups[groupId]);this.legendLeft.addGroup(groupId,this.groups[groupId])}}else{this.groups[groupId].update(group);if(this.groups[groupId].options.yAxisOrientation==\"right\"){this.yAxisRight.updateGroup(groupId,this.groups[groupId]);this.legendRight.updateGroup(groupId,this.groups[groupId]);this.yAxisLeft.removeGroup(groupId);this.legendLeft.removeGroup(groupId)}else{this.yAxisLeft.updateGroup(groupId,this.groups[groupId]);this.legendLeft.updateGroup(groupId,this.groups[groupId]);this.yAxisRight.removeGroup(groupId);this.legendRight.removeGroup(groupId)}}this.legendLeft.redraw();this.legendRight.redraw()};LineGraph.prototype._updateAllGroupData=function(ids,groupIds){if(this.itemsData!=null){var groupsContent={};var items=this.itemsData.get();var fieldId=this.itemsData._fieldId;var idMap={};if(ids){ids.map(function(id){idMap[id]=id})}var groupCounts={};for(var i=0;i<items.length;i++){var item=items[i];var groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}groupCounts.hasOwnProperty(groupId)?groupCounts[groupId]++:groupCounts[groupId]=1}var existingItemsMap={};if(!groupIds&&ids){for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){group=this.groups[groupId];var existing_items=group.getItems();groupsContent[groupId]=existing_items.filter(function(item){existingItemsMap[item[fieldId]]=item[fieldId];return item[fieldId]!==idMap[item[fieldId]]});var newLength=groupCounts[groupId];groupCounts[groupId]-=groupsContent[groupId].length;if(groupsContent[groupId].length<newLength){groupsContent[groupId][newLength-1]={}}}}}for(i=0;i<items.length;i++){item=items[i];groupId=item.group;if(groupId===null||groupId===undefined){groupId=UNGROUPED}if(!groupIds&&ids&&item[fieldId]!==idMap[item[fieldId]]&&existingItemsMap.hasOwnProperty(item[fieldId])){continue}if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(groupCounts[groupId])}var extended=util.bridgeObject(item);extended.x=util.convert(item.x,\"Date\");extended.end=util.convert(item.end,\"Date\");extended.orginalY=item.y;extended.y=Number(item.y);extended[fieldId]=item[fieldId];var index=groupsContent[groupId].length-groupCounts[groupId]--;groupsContent[groupId][index]=extended}for(groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(!groupsContent.hasOwnProperty(groupId)){groupsContent[groupId]=new Array(0)}}}for(groupId in groupsContent){if(groupsContent.hasOwnProperty(groupId)){if(groupsContent[groupId].length==0){if(this.groups.hasOwnProperty(groupId)){this._removeGroup(groupId)}}else{var group=undefined;if(this.groupsData!=undefined){group=this.groupsData.get(groupId)}if(group==undefined){group={id:groupId,content:this.options.defaultGroup+groupId}}this._updateGroup(group,groupId);this.groups[groupId].setItems(groupsContent[groupId])}}}this.forceGraphUpdate=true;this.body.emitter.emit(\"_change\",{queue:true})}};LineGraph.prototype.redraw=function(){var resized=false;this.props.width=this.dom.frame.offsetWidth;this.props.height=this.body.domProps.centerContainer.height-this.body.domProps.border.top-this.body.domProps.border.bottom;resized=this._isResized()||resized;var visibleInterval=this.body.range.end-this.body.range.start;var zoomed=visibleInterval!=this.lastVisibleInterval;this.lastVisibleInterval=visibleInterval;if(resized==true){this.svg.style.width=util.option.asSize(3*this.props.width);this.svg.style.left=util.option.asSize(-this.props.width);if((this.options.height+\"\").indexOf(\"%\")!=-1||this.updateSVGheightOnResize==true){this.updateSVGheight=true}}if(this.updateSVGheight==true){if(this.options.graphHeight!=this.props.height+\"px\"){this.options.graphHeight=this.props.height+\"px\";this.svg.style.height=this.props.height+\"px\"}this.updateSVGheight=false}else{this.svg.style.height=(\"\"+this.options.graphHeight).replace(\"px\",\"\")+\"px\"}if(resized==true||zoomed==true||this.abortedGraphUpdate==true||this.forceGraphUpdate==true){resized=this._updateGraph()||resized;this.forceGraphUpdate=false}else{if(this.lastStart!=0){var offset=this.body.range.start-this.lastStart;var range=this.body.range.end-this.body.range.start;if(this.props.width!=0){var rangePerPixelInv=this.props.width/range;var xOffset=offset*rangePerPixelInv;this.svg.style.left=-this.props.width-xOffset+\"px\"}}}this.legendLeft.redraw();this.legendRight.redraw();return resized};LineGraph.prototype._getSortedGroupIds=function(){var grouplist=[];for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){var group=this.groups[groupId];if(group.visible==true&&(this.options.groups.visibility[groupId]===undefined||this.options.groups.visibility[groupId]==true)){grouplist.push({id:groupId,zIndex:group.options.zIndex})}}}util.insertSort(grouplist,function(a,b){var az=a.zIndex;var bz=b.zIndex;if(az===undefined)az=0;if(bz===undefined)bz=0;return az==bz?0:az<bz?-1:1});var groupIds=new Array(grouplist.length);for(var i=0;i<grouplist.length;i++){groupIds[i]=grouplist[i].id}return groupIds};LineGraph.prototype._updateGraph=function(){DOMutil.prepareElements(this.svgElements);if(this.props.width!=0&&this.itemsData!=null){var group,i;var groupRanges={};var changeCalled=false;var minDate=this.body.util.toGlobalTime(-this.body.domProps.root.width);var maxDate=this.body.util.toGlobalTime(2*this.body.domProps.root.width);var groupIds=this._getSortedGroupIds();if(groupIds.length>0){var groupsData={};this._getRelevantData(groupIds,groupsData,minDate,maxDate);this._applySampling(groupIds,groupsData);for(i=0;i<groupIds.length;i++){this._convertXcoordinates(groupsData[groupIds[i]])}this._getYRanges(groupIds,groupsData,groupRanges);changeCalled=this._updateYAxis(groupIds,groupRanges);if(changeCalled==true){DOMutil.cleanupElements(this.svgElements);this.abortedGraphUpdate=true;return true}this.abortedGraphUpdate=false;var below=undefined;for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(this.options.stack===true&&this.options.style===\"line\"){if(group.options.excludeFromStacking==undefined||!group.options.excludeFromStacking){if(below!=undefined){this._stack(groupsData[group.id],groupsData[below.id]);if(group.options.shaded.enabled==true&&group.options.shaded.orientation!==\"group\"){if(group.options.shaded.orientation==\"top\"&&below.options.shaded.orientation!==\"group\"){below.options.shaded.orientation=\"group\";below.options.shaded.groupId=group.id}else{group.options.shaded.orientation=\"group\";group.options.shaded.groupId=below.id}}}below=group}}this._convertYcoordinates(groupsData[groupIds[i]],group)}var paths={};for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.style===\"line\"&&group.options.shaded.enabled==true){var dataset=groupsData[groupIds[i]];if(dataset==null||dataset.length==0){continue}if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(dataset,group)}if(group.options.shaded.orientation===\"group\"){var subGroupId=group.options.shaded.groupId;if(groupIds.indexOf(subGroupId)===-1){console.log(group.id+\": Unknown shading group target given:\"+subGroupId);continue}if(!paths.hasOwnProperty(subGroupId)){paths[subGroupId]=Lines.calcPath(groupsData[subGroupId],this.groups[subGroupId])}Lines.drawShading(paths[groupIds[i]],group,paths[subGroupId],this.framework)}else{Lines.drawShading(paths[groupIds[i]],group,undefined,this.framework)}}}Bars.draw(groupIds,groupsData,this.framework);for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(groupsData[groupIds[i]].length>0){switch(group.options.style){case\"line\":if(!paths.hasOwnProperty(groupIds[i])){paths[groupIds[i]]=Lines.calcPath(groupsData[groupIds[i]],group)}Lines.draw(paths[groupIds[i]],group,this.framework);case\"point\":case\"points\":if(group.options.style==\"point\"||group.options.style==\"points\"||group.options.drawPoints.enabled==true){Points.draw(groupsData[groupIds[i]],group,this.framework)}break;case\"bar\":default:}}}}}DOMutil.cleanupElements(this.svgElements);return false};LineGraph.prototype._stack=function(data,subData){var index,dx,dy,subPrevPoint,subNextPoint;index=0;for(var j=0;j<data.length;j++){subPrevPoint=undefined;subNextPoint=undefined;for(var k=index;k<subData.length;k++){if(subData[k].x===data[j].x){subPrevPoint=subData[k];subNextPoint=subData[k];index=k;break}else if(subData[k].x>data[j].x){subNextPoint=subData[k];if(k==0){subPrevPoint=subNextPoint}else{subPrevPoint=subData[k-1]}index=k;break}}if(subNextPoint===undefined){subPrevPoint=subData[subData.length-1];subNextPoint=subData[subData.length-1]}dx=subNextPoint.x-subPrevPoint.x;dy=subNextPoint.y-subPrevPoint.y;if(dx==0){data[j].y=data[j].orginalY+subNextPoint.y}else{data[j].y=data[j].orginalY+dy/dx*(data[j].x-subPrevPoint.x)+subPrevPoint.y}}};LineGraph.prototype._getRelevantData=function(groupIds,groupsData,minDate,maxDate){var group,i,j,item;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];var itemsData=group.getItems();if(group.options.sort==true){var dateComparator=function dateComparator(a,b){return a.getTime()==b.getTime()?0:a<b?-1:1};var first=Math.max(0,util.binarySearchValue(itemsData,minDate,\"x\",\"before\",dateComparator));var last=Math.min(itemsData.length,util.binarySearchValue(itemsData,maxDate,\"x\",\"after\",dateComparator)+1);if(last<=0){last=itemsData.length}var dataContainer=new Array(last-first);for(j=first;j<last;j++){item=group.itemsData[j];dataContainer[j-first]=item}groupsData[groupIds[i]]=dataContainer}else{groupsData[groupIds[i]]=group.itemsData}}}};LineGraph.prototype._applySampling=function(groupIds,groupsData){var group;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){group=this.groups[groupIds[i]];if(group.options.sampling==true){var dataContainer=groupsData[groupIds[i]];if(dataContainer.length>0){var increment=1;var amountOfPoints=dataContainer.length;var xDistance=this.body.util.toGlobalScreen(dataContainer[dataContainer.length-1].x)-this.body.util.toGlobalScreen(dataContainer[0].x);var pointsPerPixel=amountOfPoints/xDistance;increment=Math.min(Math.ceil(.2*amountOfPoints),Math.max(1,Math.round(pointsPerPixel)));var sampledData=new Array(amountOfPoints);for(var j=0;j<amountOfPoints;j+=increment){var idx=Math.round(j/increment);sampledData[idx]=dataContainer[j]}groupsData[groupIds[i]]=sampledData.splice(0,Math.round(amountOfPoints/increment))}}}}};LineGraph.prototype._getYRanges=function(groupIds,groupsData,groupRanges){var groupData,group,i;var combinedDataLeft=[];var combinedDataRight=[];var options;if(groupIds.length>0){for(i=0;i<groupIds.length;i++){groupData=groupsData[groupIds[i]];options=this.groups[groupIds[i]].options;if(groupData.length>0){group=this.groups[groupIds[i]];if(options.stack===true&&options.style===\"bar\"){if(options.yAxisOrientation===\"left\"){combinedDataLeft=combinedDataLeft.concat(groupData)}else{combinedDataRight=combinedDataRight.concat(groupData)}}else{groupRanges[groupIds[i]]=group.getYRange(groupData,groupIds[i])}}}Bars.getStackedYRange(combinedDataLeft,groupRanges,groupIds,\"__barStackLeft\",\"left\");Bars.getStackedYRange(combinedDataRight,groupRanges,groupIds,\"__barStackRight\",\"right\")}};LineGraph.prototype._updateYAxis=function(groupIds,groupRanges){var resized=false;var yAxisLeftUsed=false;var yAxisRightUsed=false;var minLeft=1e9,minRight=1e9,maxLeft=-1e9,maxRight=-1e9,minVal,maxVal;if(groupIds.length>0){for(var i=0;i<groupIds.length;i++){var group=this.groups[groupIds[i]];if(group&&group.options.yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=1e9;maxLeft=-1e9}else if(group&&group.options.yAxisOrientation){yAxisRightUsed=true;minRight=1e9;maxRight=-1e9}}for(i=0;i<groupIds.length;i++){if(groupRanges.hasOwnProperty(groupIds[i])){if(groupRanges[groupIds[i]].ignore!==true){minVal=groupRanges[groupIds[i]].min;maxVal=groupRanges[groupIds[i]].max;if(groupRanges[groupIds[i]].yAxisOrientation!=\"right\"){yAxisLeftUsed=true;minLeft=minLeft>minVal?minVal:minLeft;maxLeft=maxLeft<maxVal?maxVal:maxLeft}else{yAxisRightUsed=true;minRight=minRight>minVal?minVal:minRight;maxRight=maxRight<maxVal?maxVal:maxRight}}}}if(yAxisLeftUsed==true){this.yAxisLeft.setRange(minLeft,maxLeft)}if(yAxisRightUsed==true){this.yAxisRight.setRange(minRight,maxRight)}}resized=this._toggleAxisVisiblity(yAxisLeftUsed,this.yAxisLeft)||resized;resized=this._toggleAxisVisiblity(yAxisRightUsed,this.yAxisRight)||resized;if(yAxisRightUsed==true&&yAxisLeftUsed==true){this.yAxisLeft.drawIcons=true;this.yAxisRight.drawIcons=true}else{this.yAxisLeft.drawIcons=false;this.yAxisRight.drawIcons=false}this.yAxisRight.master=!yAxisLeftUsed;this.yAxisRight.masterAxis=this.yAxisLeft;if(this.yAxisRight.master==false){if(yAxisRightUsed==true){this.yAxisLeft.lineOffset=this.yAxisRight.width}else{this.yAxisLeft.lineOffset=0}resized=this.yAxisLeft.redraw()||resized;resized=this.yAxisRight.redraw()||resized}else{resized=this.yAxisRight.redraw()||resized}var tempGroups=[\"__barStackLeft\",\"__barStackRight\",\"__lineStackLeft\",\"__lineStackRight\"];for(i=0;i<tempGroups.length;i++){if(groupIds.indexOf(tempGroups[i])!=-1){groupIds.splice(groupIds.indexOf(tempGroups[i]),1)}}return resized};LineGraph.prototype._toggleAxisVisiblity=function(axisUsed,axis){var changed=false;if(axisUsed==false){if(axis.dom.frame.parentNode&&axis.hidden==false){axis.hide();changed=true}}else{if(!axis.dom.frame.parentNode&&axis.hidden==true){axis.show();changed=true}}return changed};LineGraph.prototype._convertXcoordinates=function(datapoints){var toScreen=this.body.util.toScreen;for(var i=0;i<datapoints.length;i++){datapoints[i].screen_x=toScreen(datapoints[i].x)+this.props.width;datapoints[i].screen_y=datapoints[i].y;if(datapoints[i].end!=undefined){datapoints[i].screen_end=toScreen(datapoints[i].end)+this.props.width}else{datapoints[i].screen_end=undefined}}};LineGraph.prototype._convertYcoordinates=function(datapoints,group){var axis=this.yAxisLeft;var svgHeight=Number(this.svg.style.height.replace(\"px\",\"\"));if(group.options.yAxisOrientation==\"right\"){axis=this.yAxisRight}for(var i=0;i<datapoints.length;i++){datapoints[i].screen_y=Math.round(axis.convertValue(datapoints[i].y))}group.setZeroPosition(Math.min(svgHeight,axis.convertValue(0)))};module.exports=LineGraph},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);var DataScale=__webpack_require__(108);function DataAxis(body,options,svg,linegraphOptions){this.id=util.randomUUID();this.body=body;this.defaultOptions={orientation:\"left\",showMinorLabels:true,showMajorLabels:true,icons:false,majorLinesOffset:7,minorLinesOffset:4,labelOffsetX:10,labelOffsetY:2,iconWidth:20,width:\"40px\",visible:true,alignZeros:true,left:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}},right:{range:{min:undefined,max:undefined},format:function format(value){return\"\"+parseFloat(value.toPrecision(3))},title:{text:undefined,style:undefined}}};this.linegraphOptions=linegraphOptions;this.linegraphSVG=svg;this.props={};this.DOMelements={lines:{},labels:{},title:{}};this.dom={};this.scale=undefined;this.range={start:0,end:0};this.options=util.extend({},this.defaultOptions);this.conversionFactor=1;this.setOptions(options);this.width=Number((\"\"+this.options.width).replace(\"px\",\"\"));this.minWidth=this.width;this.height=this.linegraphSVG.getBoundingClientRect().height;this.hidden=false;this.stepPixels=25;this.zeroCrossing=-1;this.amountOfSteps=-1;this.lineOffset=0;this.master=true;this.masterAxis=null;this.svgElements={};this.iconsRemoved=false;this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};var me=this;this.body.emitter.on(\"verticalDrag\",function(){me.dom.lineContainer.style.top=me.body.domProps.scrollTop+\"px\"})}DataAxis.prototype=new Component;DataAxis.prototype.addGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1};DataAxis.prototype.updateGroup=function(label,graphOptions){if(!this.groups.hasOwnProperty(label)){this.amountOfGroups+=1}this.groups[label]=graphOptions};DataAxis.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};DataAxis.prototype.setOptions=function(options){if(options){var redraw=false;if(this.options.orientation!=options.orientation&&options.orientation!==undefined){redraw=true}var fields=[\"orientation\",\"showMinorLabels\",\"showMajorLabels\",\"icons\",\"majorLinesOffset\",\"minorLinesOffset\",\"labelOffsetX\",\"labelOffsetY\",\"iconWidth\",\"width\",\"visible\",\"left\",\"right\",\"alignZeros\"];util.selectiveDeepExtend(fields,this.options,options);this.minWidth=Number((\"\"+this.options.width).replace(\"px\",\"\"));if(redraw===true&&this.dom.frame){this.hide();this.show()}}};DataAxis.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.style.width=this.options.width;this.dom.frame.style.height=this.height;this.dom.lineContainer=document.createElement(\"div\");this.dom.lineContainer.style.width=\"100%\";this.dom.lineContainer.style.height=this.height;this.dom.lineContainer.style.position=\"relative\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=\"0px\";this.svg.style.height=\"100%\";this.svg.style.width=\"100%\";this.svg.style.display=\"block\";this.dom.frame.appendChild(this.svg)};DataAxis.prototype._redrawGroupIcons=function(){DOMutil.prepareElements(this.svgElements);var x;var iconWidth=this.options.iconWidth;var iconHeight=15;var iconOffset=4;var y=iconOffset+.5*iconHeight;if(this.options.orientation===\"left\"){x=iconOffset}else{x=this.width-iconWidth-iconOffset}var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+iconOffset}}DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=false};DataAxis.prototype._cleanupIcons=function(){if(this.iconsRemoved===false){DOMutil.prepareElements(this.svgElements);DOMutil.cleanupElements(this.svgElements);this.iconsRemoved=true}};DataAxis.prototype.show=function(){this.hidden=false;if(!this.dom.frame.parentNode){if(this.options.orientation===\"left\"){this.body.dom.left.appendChild(this.dom.frame)}else{this.body.dom.right.appendChild(this.dom.frame)}}if(!this.dom.lineContainer.parentNode){this.body.dom.backgroundHorizontal.appendChild(this.dom.lineContainer)}};DataAxis.prototype.hide=function(){this.hidden=true;if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}if(this.dom.lineContainer.parentNode){this.dom.lineContainer.parentNode.removeChild(this.dom.lineContainer)}};DataAxis.prototype.setRange=function(start,end){this.range.start=start;this.range.end=end};DataAxis.prototype.redraw=function(){var resized=false;var activeGroups=0;this.dom.lineContainer.style.top=this.body.domProps.scrollTop+\"px\";for(var groupId in this.groups){if(this.groups.hasOwnProperty(groupId)){if(this.groups[groupId].visible===true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]===true)){activeGroups++}}}if(this.amountOfGroups===0||activeGroups===0){this.hide()}else{this.show();this.height=Number(this.linegraphSVG.style.height.replace(\"px\",\"\"));this.dom.lineContainer.style.height=this.height+\"px\";this.width=this.options.visible===true?Number((\"\"+this.options.width).replace(\"px\",\"\")):0;var props=this.props;var frame=this.dom.frame;frame.className=\"vis-data-axis\";this._calculateCharSize();var orientation=this.options.orientation;var showMinorLabels=this.options.showMinorLabels;var showMajorLabels=this.options.showMajorLabels;props.minorLabelHeight=showMinorLabels?props.minorCharHeight:0;props.majorLabelHeight=showMajorLabels?props.majorCharHeight:0;props.minorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.minorLinesOffset;props.minorLineHeight=1;props.majorLineWidth=this.body.dom.backgroundHorizontal.offsetWidth-this.lineOffset-this.width+2*this.options.majorLinesOffset;props.majorLineHeight=1;if(orientation===\"left\"){frame.style.top=\"0\";frame.style.left=\"0\";frame.style.bottom=\"\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.left.width;this.props.height=this.body.domProps.left.height}else{frame.style.top=\"\";frame.style.bottom=\"0\";frame.style.left=\"0\";frame.style.width=this.width+\"px\";frame.style.height=this.height+\"px\";this.props.width=this.body.domProps.right.width;this.props.height=this.body.domProps.right.height}resized=this._redrawLabels();resized=this._isResized()||resized;if(this.options.icons===true){this._redrawGroupIcons()}else{this._cleanupIcons()}this._redrawTitle(orientation)}return resized};DataAxis.prototype._redrawLabels=function(){var _this=this;var resized=false;DOMutil.prepareElements(this.DOMelements.lines);DOMutil.prepareElements(this.DOMelements.labels);var orientation=this.options[\"orientation\"];var customRange=this.options[orientation].range!=undefined?this.options[orientation].range:{};var autoScaleEnd=true;if(customRange.max!=undefined){this.range.end=customRange.max;autoScaleEnd=false}var autoScaleStart=true;if(customRange.min!=undefined){this.range.start=customRange.min;autoScaleStart=false}this.scale=new DataScale(this.range.start,this.range.end,autoScaleStart,autoScaleEnd,this.dom.frame.offsetHeight,this.props.majorCharHeight,this.options.alignZeros,this.options[orientation].format);if(this.master===false&&this.masterAxis!=undefined){this.scale.followScale(this.masterAxis.scale)}this.maxLabelSize=0;var lines=this.scale.getLines();lines.forEach(function(line){var y=line.y;var isMajor=line.major;if(_this.options[\"showMinorLabels\"]&&isMajor===false){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-minor\",_this.props.minorCharHeight)}if(isMajor){if(y>=0){_this._redrawLabel(y-2,line.val,orientation,\"vis-y-axis vis-major\",_this.props.majorCharHeight)}}if(_this.master===true){if(isMajor){_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-major\",_this.options.majorLinesOffset,_this.props.majorLineWidth)}else{_this._redrawLine(y,orientation,\"vis-grid vis-horizontal vis-minor\",_this.options.minorLinesOffset,_this.props.minorLineWidth)}}});var titleWidth=0;if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){titleWidth=this.props.titleCharHeight}var offset=this.options.icons===true?Math.max(this.options.iconWidth,titleWidth)+this.options.labelOffsetX+15:titleWidth+this.options.labelOffsetX+15;if(this.maxLabelSize>this.width-offset&&this.options.visible===true){this.width=this.maxLabelSize+offset;this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else if(this.maxLabelSize<this.width-offset&&this.options.visible===true&&this.width>this.minWidth){this.width=Math.max(this.minWidth,this.maxLabelSize+offset);this.options.width=this.width+\"px\";DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);this.redraw();resized=true}else{DOMutil.cleanupElements(this.DOMelements.lines);DOMutil.cleanupElements(this.DOMelements.labels);resized=false}return resized};DataAxis.prototype.convertValue=function(value){return this.scale.convertValue(value)};DataAxis.prototype.screenToValue=function(x){return this.scale.screenToValue(x)};DataAxis.prototype._redrawLabel=function(y,text,orientation,className,characterHeight){var label=DOMutil.getDOMElement(\"div\",this.DOMelements.labels,this.dom.frame);label.className=className;label.innerHTML=text;if(orientation===\"left\"){label.style.left=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"right\"}else{label.style.right=\"-\"+this.options.labelOffsetX+\"px\";label.style.textAlign=\"left\"}label.style.top=y-.5*characterHeight+this.options.labelOffsetY+\"px\";text+=\"\";var largestWidth=Math.max(this.props.majorCharWidth,this.props.minorCharWidth);if(this.maxLabelSize<text.length*largestWidth){this.maxLabelSize=text.length*largestWidth}};DataAxis.prototype._redrawLine=function(y,orientation,className,offset,width){if(this.master===true){\nvar line=DOMutil.getDOMElement(\"div\",this.DOMelements.lines,this.dom.lineContainer);line.className=className;line.innerHTML=\"\";if(orientation===\"left\"){line.style.left=this.width-offset+\"px\"}else{line.style.right=this.width-offset+\"px\"}line.style.width=width+\"px\";line.style.top=y+\"px\"}};DataAxis.prototype._redrawTitle=function(orientation){DOMutil.prepareElements(this.DOMelements.title);if(this.options[orientation].title!==undefined&&this.options[orientation].title.text!==undefined){var title=DOMutil.getDOMElement(\"div\",this.DOMelements.title,this.dom.frame);title.className=\"vis-y-axis vis-title vis-\"+orientation;title.innerHTML=this.options[orientation].title.text;if(this.options[orientation].title.style!==undefined){util.addCssText(title,this.options[orientation].title.style)}if(orientation===\"left\"){title.style.left=this.props.titleCharHeight+\"px\"}else{title.style.right=this.props.titleCharHeight+\"px\"}title.style.width=this.height+\"px\"}DOMutil.cleanupElements(this.DOMelements.title)};DataAxis.prototype._calculateCharSize=function(){if(!(\"minorCharHeight\"in this.props)){var textMinor=document.createTextNode(\"0\");var measureCharMinor=document.createElement(\"div\");measureCharMinor.className=\"vis-y-axis vis-minor vis-measure\";measureCharMinor.appendChild(textMinor);this.dom.frame.appendChild(measureCharMinor);this.props.minorCharHeight=measureCharMinor.clientHeight;this.props.minorCharWidth=measureCharMinor.clientWidth;this.dom.frame.removeChild(measureCharMinor)}if(!(\"majorCharHeight\"in this.props)){var textMajor=document.createTextNode(\"0\");var measureCharMajor=document.createElement(\"div\");measureCharMajor.className=\"vis-y-axis vis-major vis-measure\";measureCharMajor.appendChild(textMajor);this.dom.frame.appendChild(measureCharMajor);this.props.majorCharHeight=measureCharMajor.clientHeight;this.props.majorCharWidth=measureCharMajor.clientWidth;this.dom.frame.removeChild(measureCharMajor)}if(!(\"titleCharHeight\"in this.props)){var textTitle=document.createTextNode(\"0\");var measureCharTitle=document.createElement(\"div\");measureCharTitle.className=\"vis-y-axis vis-title vis-measure\";measureCharTitle.appendChild(textTitle);this.dom.frame.appendChild(measureCharTitle);this.props.titleCharHeight=measureCharTitle.clientHeight;this.props.titleCharWidth=measureCharTitle.clientWidth;this.dom.frame.removeChild(measureCharTitle)}};module.exports=DataAxis},function(module,exports,__webpack_require__){\"use strict\";function DataScale(start,end,autoScaleStart,autoScaleEnd,containerHeight,majorCharHeight){var zeroAlign=arguments.length>6&&arguments[6]!==undefined?arguments[6]:false;var formattingFunction=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;this.majorSteps=[1,2,5,10];this.minorSteps=[.25,.5,1,2];this.customLines=null;this.containerHeight=containerHeight;this.majorCharHeight=majorCharHeight;this._start=start;this._end=end;this.scale=1;this.minorStepIdx=-1;this.magnitudefactor=1;this.determineScale();this.zeroAlign=zeroAlign;this.autoScaleStart=autoScaleStart;this.autoScaleEnd=autoScaleEnd;this.formattingFunction=formattingFunction;if(autoScaleStart||autoScaleEnd){var me=this;var roundToMinor=function roundToMinor(value){var rounded=value-value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx]);if(value%(me.magnitudefactor*me.minorSteps[me.minorStepIdx])>.5*(me.magnitudefactor*me.minorSteps[me.minorStepIdx])){return rounded+me.magnitudefactor*me.minorSteps[me.minorStepIdx]}else{return rounded}};if(autoScaleStart){this._start-=this.magnitudefactor*2*this.minorSteps[this.minorStepIdx];this._start=roundToMinor(this._start)}if(autoScaleEnd){this._end+=this.magnitudefactor*this.minorSteps[this.minorStepIdx];this._end=roundToMinor(this._end)}this.determineScale()}}DataScale.prototype.setCharHeight=function(majorCharHeight){this.majorCharHeight=majorCharHeight};DataScale.prototype.setHeight=function(containerHeight){this.containerHeight=containerHeight};DataScale.prototype.determineScale=function(){var range=this._end-this._start;this.scale=this.containerHeight/range;var minimumStepValue=this.majorCharHeight/this.scale;var orderOfMagnitude=range>0?Math.round(Math.log(range)/Math.LN10):0;this.minorStepIdx=-1;this.magnitudefactor=Math.pow(10,orderOfMagnitude);var start=0;if(orderOfMagnitude<0){start=orderOfMagnitude}var solutionFound=false;for(var l=start;Math.abs(l)<=Math.abs(orderOfMagnitude);l++){this.magnitudefactor=Math.pow(10,l);for(var j=0;j<this.minorSteps.length;j++){var stepSize=this.magnitudefactor*this.minorSteps[j];if(stepSize>=minimumStepValue){solutionFound=true;this.minorStepIdx=j;break}}if(solutionFound===true){break}}};DataScale.prototype.is_major=function(value){return value%(this.magnitudefactor*this.majorSteps[this.minorStepIdx])===0};DataScale.prototype.getStep=function(){return this.magnitudefactor*this.minorSteps[this.minorStepIdx]};DataScale.prototype.getFirstMajor=function(){var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];return this.convertValue(this._start+(majorStep-this._start%majorStep)%majorStep)};DataScale.prototype.formatValue=function(current){var returnValue=current.toPrecision(5);if(typeof this.formattingFunction===\"function\"){returnValue=this.formattingFunction(current)}if(typeof returnValue===\"number\"){return\"\"+returnValue}else if(typeof returnValue===\"string\"){return returnValue}else{return current.toPrecision(5)}};DataScale.prototype.getLines=function(){var lines=[];var step=this.getStep();var bottomOffset=(step-this._start%step)%step;for(var i=this._start+bottomOffset;this._end-i>1e-5;i+=step){if(i!=this._start){lines.push({major:this.is_major(i),y:this.convertValue(i),val:this.formatValue(i)})}}return lines};DataScale.prototype.followScale=function(other){var oldStepIdx=this.minorStepIdx;var oldStart=this._start;var oldEnd=this._end;var me=this;var increaseMagnitude=function increaseMagnitude(){me.magnitudefactor*=2};var decreaseMagnitude=function decreaseMagnitude(){me.magnitudefactor/=2};if(other.minorStepIdx<=1&&this.minorStepIdx<=1||other.minorStepIdx>1&&this.minorStepIdx>1){}else if(other.minorStepIdx<this.minorStepIdx){this.minorStepIdx=1;if(oldStepIdx==2){increaseMagnitude()}else{increaseMagnitude();increaseMagnitude()}}else{this.minorStepIdx=2;if(oldStepIdx==1){decreaseMagnitude()}else{decreaseMagnitude();decreaseMagnitude()}}var otherZero=other.convertValue(0);var otherStep=other.getStep()*other.scale;var done=false;var count=0;while(!done&&count++<5){this.scale=otherStep/(this.minorSteps[this.minorStepIdx]*this.magnitudefactor);var newRange=this.containerHeight/this.scale;this._start=oldStart;this._end=this._start+newRange;var myOriginalZero=this._end*this.scale;var majorStep=this.magnitudefactor*this.majorSteps[this.minorStepIdx];var majorOffset=this.getFirstMajor()-other.getFirstMajor();if(this.zeroAlign){var zeroOffset=otherZero-myOriginalZero;this._end+=zeroOffset/this.scale;this._start=this._end-newRange}else{if(!this.autoScaleStart){this._start+=majorStep-majorOffset/this.scale;this._end=this._start+newRange}else{this._start-=majorOffset/this.scale;this._end=this._start+newRange}}if(!this.autoScaleEnd&&this._end>oldEnd+1e-5){decreaseMagnitude();done=false;continue}if(!this.autoScaleStart&&this._start<oldStart-1e-5){if(this.zeroAlign&&oldStart>=0){console.warn(\"Can't adhere to given 'min' range, due to zeroalign\")}else{decreaseMagnitude();done=false;continue}}if(this.autoScaleStart&&this.autoScaleEnd&&newRange<oldEnd-oldStart){increaseMagnitude();done=false;continue}done=true}};DataScale.prototype.convertValue=function(value){return this.containerHeight-(value-this._start)*this.scale};DataScale.prototype.screenToValue=function(pixels){return(this.containerHeight-pixels)/this.scale+this._start};module.exports=DataScale},function(module,exports,__webpack_require__){\"use strict\";var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Bars=__webpack_require__(110);var Lines=__webpack_require__(111);var Points=__webpack_require__(72);function GraphGroup(group,groupId,options,groupsUsingDefaultStyles){this.id=groupId;var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"drawPoints\",\"shaded\",\"interpolation\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];this.options=util.selectiveBridgeObject(fields,options);this.usingDefaultStyle=group.className===undefined;this.groupsUsingDefaultStyles=groupsUsingDefaultStyles;this.zeroPosition=0;this.update(group);if(this.usingDefaultStyle==true){this.groupsUsingDefaultStyles[0]+=1}this.itemsData=[];this.visible=group.visible===undefined?true:group.visible}GraphGroup.prototype.setItems=function(items){if(items!=null){this.itemsData=items;if(this.options.sort==true){util.insertSort(this.itemsData,function(a,b){return a.x>b.x?1:-1})}}else{this.itemsData=[]}};GraphGroup.prototype.getItems=function(){return this.itemsData};GraphGroup.prototype.setZeroPosition=function(pos){this.zeroPosition=pos};GraphGroup.prototype.setOptions=function(options){if(options!==undefined){var fields=[\"sampling\",\"style\",\"sort\",\"yAxisOrientation\",\"barChart\",\"zIndex\",\"excludeFromStacking\",\"excludeFromLegend\"];util.selectiveDeepExtend(fields,this.options,options);if(typeof options.drawPoints==\"function\"){options.drawPoints={onRender:options.drawPoints}}util.mergeOptions(this.options,options,\"interpolation\");util.mergeOptions(this.options,options,\"drawPoints\");util.mergeOptions(this.options,options,\"shaded\");if(options.interpolation){if((0,_typeof3[\"default\"])(options.interpolation)==\"object\"){if(options.interpolation.parametrization){if(options.interpolation.parametrization==\"uniform\"){this.options.interpolation.alpha=0}else if(options.interpolation.parametrization==\"chordal\"){this.options.interpolation.alpha=1}else{this.options.interpolation.parametrization=\"centripetal\";this.options.interpolation.alpha=.5}}}}}};GraphGroup.prototype.update=function(group){this.group=group;this.content=group.content||\"graph\";this.className=group.className||this.className||\"vis-graph-group\"+this.groupsUsingDefaultStyles[0]%10;this.visible=group.visible===undefined?true:group.visible;this.style=group.style;this.setOptions(group.options)};GraphGroup.prototype.getLegend=function(iconWidth,iconHeight,framework,x,y){if(framework==undefined||framework==null){var svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");framework={svg:svg,svgElements:{},options:this.options,groups:[this]}}if(x==undefined||x==null){x=0}if(y==undefined||y==null){y=.5*iconHeight}switch(this.options.style){case\"line\":Lines.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"points\":case\"point\":Points.drawIcon(this,x,y,iconWidth,iconHeight,framework);break;case\"bar\":Bars.drawIcon(this,x,y,iconWidth,iconHeight,framework);break}return{icon:framework.svg,label:this.content,orientation:this.options.yAxisOrientation}};GraphGroup.prototype.getYRange=function(groupData){var yMin=groupData[0].y;var yMax=groupData[0].y;for(var j=0;j<groupData.length;j++){yMin=yMin>groupData[j].y?groupData[j].y:yMin;yMax=yMax<groupData[j].y?groupData[j].y:yMax}return{min:yMin,max:yMax,yAxisOrientation:this.options.yAxisOrientation}};module.exports=GraphGroup},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);var Points=__webpack_require__(72);function Bargraph(groupId,options){}Bargraph.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");var barWidth=Math.round(.3*iconWidth);var originalWidth=group.options.barChart.width;var scale=originalWidth/barWidth;var bar1Height=Math.round(.4*iconHeight);var bar2Height=Math.round(.75*iconHeight);var offset=Math.round((iconWidth-2*barWidth)/3);DOMutil.drawBar(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,barWidth,bar1Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);DOMutil.drawBar(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,barWidth,bar2Height,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size/scale,className:group.className};DOMutil.drawPoint(x+.5*barWidth+offset,y+fillHeight-bar1Height-1,groupTemplate,framework.svgElements,framework.svg);DOMutil.drawPoint(x+1.5*barWidth+offset+2,y+fillHeight-bar2Height-1,groupTemplate,framework.svgElements,framework.svg)}};Bargraph.draw=function(groupIds,processedGroupData,framework){var combinedData=[];var intersections={};var coreDistance;var key,drawData;var group;var i,j;var barPoints=0;for(i=0;i<groupIds.length;i++){group=framework.groups[groupIds[i]];if(group.options.style===\"bar\"){if(group.visible===true&&(framework.options.groups.visibility[groupIds[i]]===undefined||framework.options.groups.visibility[groupIds[i]]===true)){for(j=0;j<processedGroupData[groupIds[i]].length;j++){combinedData.push({screen_x:processedGroupData[groupIds[i]][j].screen_x,screen_end:processedGroupData[groupIds[i]][j].screen_end,screen_y:processedGroupData[groupIds[i]][j].screen_y,x:processedGroupData[groupIds[i]][j].x,end:processedGroupData[groupIds[i]][j].end,y:processedGroupData[groupIds[i]][j].y,groupId:groupIds[i],label:processedGroupData[groupIds[i]][j].label});barPoints+=1}}}}if(barPoints===0){return}combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});Bargraph._getDataIntersections(intersections,combinedData);for(i=0;i<combinedData.length;i++){group=framework.groups[combinedData[i].groupId];var minWidth=group.options.barChart.minWidth!=undefined?group.options.barChart.minWidth:.1*group.options.barChart.width;key=combinedData[i].screen_x;var heightOffset=0;if(intersections[key]===undefined){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth)}else{var nextKey=i+(intersections[key].amount-intersections[key].resolved);if(nextKey<combinedData.length){coreDistance=Math.abs(combinedData[nextKey].screen_x-key)}drawData=Bargraph._getSafeDrawData(coreDistance,group,minWidth);intersections[key].resolved+=1;if(group.options.stack===true&&group.options.excludeFromStacking!==true){if(combinedData[i].screen_y<group.zeroPosition){heightOffset=intersections[key].accumulatedNegative;intersections[key].accumulatedNegative+=group.zeroPosition-combinedData[i].screen_y}else{heightOffset=intersections[key].accumulatedPositive;intersections[key].accumulatedPositive+=group.zeroPosition-combinedData[i].screen_y}}else if(group.options.barChart.sideBySide===true){drawData.width=drawData.width/intersections[key].amount;drawData.offset+=intersections[key].resolved*drawData.width-.5*drawData.width*(intersections[key].amount+1)}}var dataWidth=drawData.width;var start=combinedData[i].screen_x;if(combinedData[i].screen_end!=undefined){dataWidth=combinedData[i].screen_end-combinedData[i].screen_x;start+=dataWidth*.5}else{start+=drawData.offset}DOMutil.drawBar(start,combinedData[i].screen_y-heightOffset,dataWidth,group.zeroPosition-combinedData[i].screen_y,group.className+\" vis-bar\",framework.svgElements,framework.svg,group.style);if(group.options.drawPoints.enabled===true){var pointData={screen_x:combinedData[i].screen_x,screen_y:combinedData[i].screen_y-heightOffset,x:combinedData[i].x,y:combinedData[i].y,groupId:combinedData[i].groupId,label:combinedData[i].label};Points.draw([pointData],group,framework,drawData.offset)}}};Bargraph._getDataIntersections=function(intersections,combinedData){var coreDistance;for(var i=0;i<combinedData.length;i++){if(i+1<combinedData.length){coreDistance=Math.abs(combinedData[i+1].screen_x-combinedData[i].screen_x)}if(i>0){coreDistance=Math.min(coreDistance,Math.abs(combinedData[i-1].screen_x-combinedData[i].screen_x))}if(coreDistance===0){if(intersections[combinedData[i].screen_x]===undefined){intersections[combinedData[i].screen_x]={amount:0,resolved:0,accumulatedPositive:0,accumulatedNegative:0}}intersections[combinedData[i].screen_x].amount+=1}}};Bargraph._getSafeDrawData=function(coreDistance,group,minWidth){var width,offset;if(coreDistance<group.options.barChart.width&&coreDistance>0){width=coreDistance<minWidth?minWidth:coreDistance;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*coreDistance}else if(group.options.barChart.align===\"right\"){offset+=.5*coreDistance}}else{width=group.options.barChart.width;offset=0;if(group.options.barChart.align===\"left\"){offset-=.5*group.options.barChart.width}else if(group.options.barChart.align===\"right\"){offset+=.5*group.options.barChart.width}}return{width:width,offset:offset}};Bargraph.getStackedYRange=function(combinedData,groupRanges,groupIds,groupLabel,orientation){if(combinedData.length>0){combinedData.sort(function(a,b){if(a.screen_x===b.screen_x){return a.groupId<b.groupId?-1:1}else{return a.screen_x-b.screen_x}});var intersections={};Bargraph._getDataIntersections(intersections,combinedData);groupRanges[groupLabel]=Bargraph._getStackedYRange(intersections,combinedData);groupRanges[groupLabel].yAxisOrientation=orientation;groupIds.push(groupLabel)}};Bargraph._getStackedYRange=function(intersections,combinedData){var key;var yMin=combinedData[0].screen_y;var yMax=combinedData[0].screen_y;for(var i=0;i<combinedData.length;i++){key=combinedData[i].screen_x;if(intersections[key]===undefined){yMin=yMin>combinedData[i].screen_y?combinedData[i].screen_y:yMin;yMax=yMax<combinedData[i].screen_y?combinedData[i].screen_y:yMax}else{if(combinedData[i].screen_y<0){intersections[key].accumulatedNegative+=combinedData[i].screen_y}else{intersections[key].accumulatedPositive+=combinedData[i].screen_y}}}for(var xpos in intersections){if(intersections.hasOwnProperty(xpos)){yMin=yMin>intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMin;yMin=yMin>intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMin;yMax=yMax<intersections[xpos].accumulatedNegative?intersections[xpos].accumulatedNegative:yMax;yMax=yMax<intersections[xpos].accumulatedPositive?intersections[xpos].accumulatedPositive:yMax}}return{min:yMin,max:yMax}};module.exports=Bargraph},function(module,exports,__webpack_require__){\"use strict\";var DOMutil=__webpack_require__(14);function Line(groupId,options){}Line.calcPath=function(dataset,group){if(dataset!=null){if(dataset.length>0){var d=[];if(group.options.interpolation.enabled==true){d=Line._catmullRom(dataset,group)}else{d=Line._linear(dataset)}return d}}};Line.drawIcon=function(group,x,y,iconWidth,iconHeight,framework){var fillHeight=iconHeight*.5;var path,fillPath;var outline=DOMutil.getSVGElement(\"rect\",framework.svgElements,framework.svg);outline.setAttributeNS(null,\"x\",x);outline.setAttributeNS(null,\"y\",y-fillHeight);outline.setAttributeNS(null,\"width\",iconWidth);outline.setAttributeNS(null,\"height\",2*fillHeight);outline.setAttributeNS(null,\"class\",\"vis-outline\");path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}path.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\"\");if(group.options.shaded.enabled==true){fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);if(group.options.shaded.orientation==\"top\"){fillPath.setAttributeNS(null,\"d\",\"M\"+x+\", \"+(y-fillHeight)+\"L\"+x+\",\"+y+\" L\"+(x+iconWidth)+\",\"+y+\" L\"+(x+iconWidth)+\",\"+(y-fillHeight))}else{fillPath.setAttributeNS(null,\"d\",\"M\"+x+\",\"+y+\" \"+\"L\"+x+\",\"+(y+fillHeight)+\" \"+\"L\"+(x+iconWidth)+\",\"+(y+fillHeight)+\"L\"+(x+iconWidth)+\",\"+y)}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-icon-fill\");if(group.options.shaded.style!==undefined&&group.options.shaded.style!==\"\"){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}}if(group.options.drawPoints.enabled==true){var groupTemplate={style:group.options.drawPoints.style,styles:group.options.drawPoints.styles,size:group.options.drawPoints.size,className:group.className};DOMutil.drawPoint(x+.5*iconWidth,y,groupTemplate,framework.svgElements,framework.svg)}};Line.drawShading=function(pathArray,group,subPathArray,framework){if(group.options.shaded.enabled==true){var svgHeight=Number(framework.svg.style.height.replace(\"px\",\"\"));var fillPath=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}var dFill;var zero=0;if(group.options.shaded.orientation==\"top\"){zero=0}else if(group.options.shaded.orientation==\"bottom\"){zero=svgHeight}else{zero=Math.min(Math.max(0,group.zeroPosition),svgHeight)}if(group.options.shaded.orientation==\"group\"&&subPathArray!=null&&subPathArray!=undefined){dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" L\"+subPathArray[subPathArray.length-1][0]+\",\"+subPathArray[subPathArray.length-1][1]+\" \"+this.serializePath(subPathArray,type,true)+subPathArray[0][0]+\",\"+subPathArray[0][1]+\" Z\"}else{dFill=\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false)+\" V\"+zero+\" H\"+pathArray[0][0]+\" Z\"}fillPath.setAttributeNS(null,\"class\",group.className+\" vis-fill\");if(group.options.shaded.style!==undefined){fillPath.setAttributeNS(null,\"style\",group.options.shaded.style)}fillPath.setAttributeNS(null,\"d\",dFill)}};Line.draw=function(pathArray,group,framework){if(pathArray!=null&&pathArray!=undefined){var path=DOMutil.getSVGElement(\"path\",framework.svgElements,framework.svg);path.setAttributeNS(null,\"class\",group.className);if(group.style!==undefined){path.setAttributeNS(null,\"style\",group.style)}var type=\"L\";if(group.options.interpolation.enabled==true){type=\"C\"}path.setAttributeNS(null,\"d\",\"M\"+pathArray[0][0]+\",\"+pathArray[0][1]+\" \"+this.serializePath(pathArray,type,false))}};Line.serializePath=function(pathArray,type,inverse){if(pathArray.length<2){return\"\"}var d=type;var i;if(inverse){for(i=pathArray.length-2;i>0;i--){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}else{for(i=1;i<pathArray.length;i++){d+=pathArray[i][0]+\",\"+pathArray[i][1]+\" \"}}return d};Line._catmullRomUniform=function(data){var p0,p1,p2,p3,bp1,bp2;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var normalization=1/6;var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;bp1={screen_x:(-p0.screen_x+6*p1.screen_x+p2.screen_x)*normalization,screen_y:(-p0.screen_y+6*p1.screen_y+p2.screen_y)*normalization};bp2={screen_x:(p1.screen_x+6*p2.screen_x-p3.screen_x)*normalization,screen_y:(p1.screen_y+6*p2.screen_y-p3.screen_y)*normalization};d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d};Line._catmullRom=function(data,group){var alpha=group.options.interpolation.alpha;if(alpha==0||alpha===undefined){return this._catmullRomUniform(data)}else{var p0,p1,p2,p3,bp1,bp2,d1,d2,d3,A,B,N,M;var d3powA,d2powA,d3pow2A,d2pow2A,d1pow2A,d1powA;var d=[];d.push([Math.round(data[0].screen_x),Math.round(data[0].screen_y)]);var length=data.length;for(var i=0;i<length-1;i++){p0=i==0?data[0]:data[i-1];p1=data[i];p2=data[i+1];p3=i+2<length?data[i+2]:p2;d1=Math.sqrt(Math.pow(p0.screen_x-p1.screen_x,2)+Math.pow(p0.screen_y-p1.screen_y,2));d2=Math.sqrt(Math.pow(p1.screen_x-p2.screen_x,2)+Math.pow(p1.screen_y-p2.screen_y,2));d3=Math.sqrt(Math.pow(p2.screen_x-p3.screen_x,2)+Math.pow(p2.screen_y-p3.screen_y,2));d3powA=Math.pow(d3,alpha);d3pow2A=Math.pow(d3,2*alpha);d2powA=Math.pow(d2,alpha);d2pow2A=Math.pow(d2,2*alpha);d1powA=Math.pow(d1,alpha);d1pow2A=Math.pow(d1,2*alpha);A=2*d1pow2A+3*d1powA*d2powA+d2pow2A;B=2*d3pow2A+3*d3powA*d2powA+d2pow2A;N=3*d1powA*(d1powA+d2powA);if(N>0){N=1/N}M=3*d3powA*(d3powA+d2powA);if(M>0){M=1/M}bp1={screen_x:(-d2pow2A*p0.screen_x+A*p1.screen_x+d1pow2A*p2.screen_x)*N,screen_y:(-d2pow2A*p0.screen_y+A*p1.screen_y+d1pow2A*p2.screen_y)*N};bp2={screen_x:(d3pow2A*p1.screen_x+B*p2.screen_x-d2pow2A*p3.screen_x)*M,screen_y:(d3pow2A*p1.screen_y+B*p2.screen_y-d2pow2A*p3.screen_y)*M};if(bp1.screen_x==0&&bp1.screen_y==0){bp1=p1}if(bp2.screen_x==0&&bp2.screen_y==0){bp2=p2}d.push([bp1.screen_x,bp1.screen_y]);d.push([bp2.screen_x,bp2.screen_y]);d.push([p2.screen_x,p2.screen_y])}return d}};Line._linear=function(data){var d=[];for(var i=0;i<data.length;i++){d.push([data[i].screen_x,data[i].screen_y])}return d};module.exports=Line},function(module,exports,__webpack_require__){\"use strict\";var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DOMutil=__webpack_require__(14);var Component=__webpack_require__(16);function Legend(body,options,side,linegraphOptions){this.body=body;this.defaultOptions={enabled:false,icons:true,iconSize:20,iconSpacing:6,left:{visible:true,position:\"top-left\"},right:{visible:true,position:\"top-right\"}};this.side=side;this.options=util.extend({},this.defaultOptions);this.linegraphOptions=linegraphOptions;this.svgElements={};this.dom={};this.groups={};this.amountOfGroups=0;this._create();this.framework={svg:this.svg,svgElements:this.svgElements,options:this.options,groups:this.groups};this.setOptions(options)}Legend.prototype=new Component;Legend.prototype.clear=function(){this.groups={};this.amountOfGroups=0};Legend.prototype.addGroup=function(label,graphOptions){if(graphOptions.options.excludeFromLegend!=true){if(!this.groups.hasOwnProperty(label)){this.groups[label]=graphOptions}this.amountOfGroups+=1}};Legend.prototype.updateGroup=function(label,graphOptions){this.groups[label]=graphOptions};Legend.prototype.removeGroup=function(label){if(this.groups.hasOwnProperty(label)){delete this.groups[label];this.amountOfGroups-=1}};Legend.prototype._create=function(){this.dom.frame=document.createElement(\"div\");this.dom.frame.className=\"vis-legend\";this.dom.frame.style.position=\"absolute\";this.dom.frame.style.top=\"10px\";this.dom.frame.style.display=\"block\";this.dom.textArea=document.createElement(\"div\");this.dom.textArea.className=\"vis-legend-text\";this.dom.textArea.style.position=\"relative\";this.dom.textArea.style.top=\"0px\";this.svg=document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\");this.svg.style.position=\"absolute\";this.svg.style.top=0+\"px\";this.svg.style.width=this.options.iconSize+5+\"px\";this.svg.style.height=\"100%\";this.dom.frame.appendChild(this.svg);this.dom.frame.appendChild(this.dom.textArea)};Legend.prototype.hide=function(){if(this.dom.frame.parentNode){this.dom.frame.parentNode.removeChild(this.dom.frame)}};Legend.prototype.show=function(){if(!this.dom.frame.parentNode){this.body.dom.center.appendChild(this.dom.frame)}};Legend.prototype.setOptions=function(options){var fields=[\"enabled\",\"orientation\",\"icons\",\"left\",\"right\"];util.selectiveDeepExtend(fields,this.options,options)};Legend.prototype.redraw=function(){var activeGroups=0;var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){activeGroups++}}if(this.options[this.side].visible==false||this.amountOfGroups==0||this.options.enabled==false||activeGroups==0){this.hide()}else{this.show();if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"bottom-left\"){this.dom.frame.style.left=\"4px\";this.dom.frame.style.textAlign=\"left\";this.dom.textArea.style.textAlign=\"left\";this.dom.textArea.style.left=this.options.iconSize+15+\"px\";this.dom.textArea.style.right=\"\";this.svg.style.left=0+\"px\";this.svg.style.right=\"\"}else{this.dom.frame.style.right=\"4px\";this.dom.frame.style.textAlign=\"right\";this.dom.textArea.style.textAlign=\"right\";this.dom.textArea.style.right=this.options.iconSize+15+\"px\";this.dom.textArea.style.left=\"\";this.svg.style.right=0+\"px\";this.svg.style.left=\"\"}if(this.options[this.side].position==\"top-left\"||this.options[this.side].position==\"top-right\"){this.dom.frame.style.top=4-Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.bottom=\"\"}else{var scrollableHeight=this.body.domProps.center.height-this.body.domProps.centerContainer.height;this.dom.frame.style.bottom=4+scrollableHeight+Number(this.body.dom.center.style.top.replace(\"px\",\"\"))+\"px\";this.dom.frame.style.top=\"\"}if(this.options.icons==false){this.dom.frame.style.width=this.dom.textArea.offsetWidth+10+\"px\";this.dom.textArea.style.right=\"\";this.dom.textArea.style.left=\"\";this.svg.style.width=\"0px\"}else{this.dom.frame.style.width=this.options.iconSize+15+this.dom.textArea.offsetWidth+10+\"px\";this.drawLegendIcons()}var content=\"\";for(i=0;i<groupArray.length;i++){groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){content+=this.groups[groupId].content+\"<br />\"}}this.dom.textArea.innerHTML=content;this.dom.textArea.style.lineHeight=.75*this.options.iconSize+this.options.iconSpacing+\"px\"}};Legend.prototype.drawLegendIcons=function(){if(this.dom.frame.parentNode){var groupArray=(0,_keys2[\"default\"])(this.groups);groupArray.sort(function(a,b){return a<b?-1:1});DOMutil.resetElements(this.svgElements);var padding=window.getComputedStyle(this.dom.frame).paddingTop;var iconOffset=Number(padding.replace(\"px\",\"\"));var x=iconOffset;var iconWidth=this.options.iconSize;var iconHeight=.75*this.options.iconSize;var y=iconOffset+.5*iconHeight+3;this.svg.style.width=iconWidth+5+iconOffset+\"px\";for(var i=0;i<groupArray.length;i++){var groupId=groupArray[i];if(this.groups[groupId].visible==true&&(this.linegraphOptions.visibility[groupId]===undefined||this.linegraphOptions.visibility[groupId]==true)){this.groups[groupId].getLegend(iconWidth,iconHeight,this.framework,x,y);y+=iconHeight+this.options.iconSpacing}}}};module.exports=Legend},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var date=\"date\";var object=\"object\";var dom=\"dom\";var moment=\"moment\";var any=\"any\";var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,function:\"function\"},container:{dom:dom},__type__:{object:object,boolean:bool,function:\"function\"}},yAxisOrientation:{string:[\"left\",\"right\"]},defaultGroup:{string:string},sort:{boolean:bool},sampling:{boolean:bool},stack:{boolean:bool},graphHeight:{string:string,number:number},shaded:{enabled:{boolean:bool},orientation:{string:[\"bottom\",\"top\",\"zero\",\"group\"]},groupId:{object:object},__type__:{boolean:bool,object:object}},style:{string:[\"line\",\"bar\",\"points\"]},barChart:{width:{number:number},minWidth:{number:number},sideBySide:{boolean:bool},align:{string:[\"left\",\"center\",\"right\"]},__type__:{object:object}},interpolation:{enabled:{boolean:bool},parametrization:{string:[\"centripetal\",\"chordal\",\"uniform\"]},alpha:{number:number},__type__:{object:object,boolean:bool}},drawPoints:{enabled:{boolean:bool},onRender:{function:\"function\"},size:{number:number},style:{string:[\"square\",\"circle\"]},__type__:{object:object,boolean:bool,function:\"function\"}},dataAxis:{showMinorLabels:{boolean:bool},showMajorLabels:{boolean:bool},icons:{boolean:bool},width:{string:string,number:number},visible:{boolean:bool},alignZeros:{boolean:bool},left:{range:{min:{\nnumber:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},right:{range:{min:{number:number,undefined:\"undefined\"},max:{number:number,undefined:\"undefined\"},__type__:{object:object}},format:{function:\"function\"},title:{text:{string:string,number:number,undefined:\"undefined\"},style:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},__type__:{object:object}},legend:{enabled:{boolean:bool},icons:{boolean:bool},left:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},right:{visible:{boolean:bool},position:{string:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},__type__:{object:object}},__type__:{object:object,boolean:bool}},groups:{visibility:{any:any},__type__:{object:object}},autoResize:{boolean:bool},throttleRedraw:{number:number},clickToUse:{boolean:bool},end:{number:number,date:date,string:string,moment:moment},format:{minorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},majorLabels:{millisecond:{string:string,undefined:\"undefined\"},second:{string:string,undefined:\"undefined\"},minute:{string:string,undefined:\"undefined\"},hour:{string:string,undefined:\"undefined\"},weekday:{string:string,undefined:\"undefined\"},day:{string:string,undefined:\"undefined\"},month:{string:string,undefined:\"undefined\"},year:{string:string,undefined:\"undefined\"},__type__:{object:object}},__type__:{object:object}},moment:{function:\"function\"},height:{string:string,number:number},hiddenDates:{start:{date:date,number:number,string:string,moment:moment},end:{date:date,number:number,string:string,moment:moment},repeat:{string:string},__type__:{object:object,array:array}},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},max:{date:date,number:number,string:string,moment:moment},maxHeight:{number:number,string:string},maxMinorChars:{number:number},min:{date:date,number:number,string:string,moment:moment},minHeight:{number:number,string:string},moveable:{boolean:bool},multiselect:{boolean:bool},orientation:{string:string},showCurrentTime:{boolean:bool},showMajorLabels:{boolean:bool},showMinorLabels:{boolean:bool},start:{date:date,number:number,string:string,moment:moment},timeAxis:{scale:{string:string,undefined:\"undefined\"},step:{number:number,undefined:\"undefined\"},__type__:{object:object}},width:{string:string,number:number},zoomable:{boolean:bool},zoomKey:{string:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"]},zoomMax:{number:number},zoomMin:{number:number},zIndex:{number:number},__type__:{object:object}};var configureOptions={global:{sort:true,sampling:true,stack:false,shaded:{enabled:false,orientation:[\"zero\",\"top\",\"bottom\",\"group\"]},style:[\"line\",\"bar\",\"points\"],barChart:{width:[50,5,100,5],minWidth:[50,5,100,5],sideBySide:false,align:[\"left\",\"center\",\"right\"]},interpolation:{enabled:true,parametrization:[\"centripetal\",\"chordal\",\"uniform\"]},drawPoints:{enabled:true,size:[6,2,30,1],style:[\"square\",\"circle\"]},dataAxis:{showMinorLabels:true,showMajorLabels:true,icons:false,width:[40,0,200,1],visible:true,alignZeros:true,left:{title:{text:\"\",style:\"\"}},right:{title:{text:\"\",style:\"\"}}},legend:{enabled:false,icons:true,left:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]},right:{visible:true,position:[\"top-right\",\"bottom-right\",\"top-left\",\"bottom-left\"]}},autoResize:true,clickToUse:false,end:\"\",format:{minorLabels:{millisecond:\"SSS\",second:\"s\",minute:\"HH:mm\",hour:\"HH:mm\",weekday:\"ddd D\",day:\"D\",month:\"MMM\",year:\"YYYY\"},majorLabels:{millisecond:\"HH:mm:ss\",second:\"D MMMM HH:mm\",minute:\"ddd D MMMM\",hour:\"ddd D MMMM\",weekday:\"MMMM YYYY\",day:\"MMMM YYYY\",month:\"YYYY\",year:\"\"}},height:\"\",locale:\"\",max:\"\",maxHeight:\"\",maxMinorChars:[7,0,20,1],min:\"\",minHeight:\"\",moveable:true,orientation:[\"both\",\"bottom\",\"top\"],showCurrentTime:false,showMajorLabels:true,showMinorLabels:true,start:\"\",width:\"100%\",zoomable:true,zoomKey:[\"ctrlKey\",\"altKey\",\"metaKey\",\"\"],zoomMax:[31536e10,10,31536e10,1],zoomMin:[10,10,31536e10,1],zIndex:0}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var _create=__webpack_require__(29);var _create2=_interopRequireDefault(_create);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function parseDOT(data){dot=data;return parseGraph()}var NODE_ATTR_MAPPING={fontsize:\"font.size\",fontcolor:\"font.color\",labelfontcolor:\"font.color\",fontname:\"font.face\",color:[\"color.border\",\"color.background\"],fillcolor:\"color.background\",tooltip:\"title\",labeltooltip:\"title\"};var EDGE_ATTR_MAPPING=(0,_create2[\"default\"])(NODE_ATTR_MAPPING);EDGE_ATTR_MAPPING.color=\"color.color\";EDGE_ATTR_MAPPING.style=\"dashes\";var TOKENTYPE={NULL:0,DELIMITER:1,IDENTIFIER:2,UNKNOWN:3};var DELIMITERS={\"{\":true,\"}\":true,\"[\":true,\"]\":true,\";\":true,\"=\":true,\",\":true,\"->\":true,\"--\":true};var dot=\"\";var index=0;var c=\"\";var token=\"\";var tokenType=TOKENTYPE.NULL;function first(){index=0;c=dot.charAt(0)}function next(){index++;c=dot.charAt(index)}function nextPreview(){return dot.charAt(index+1)}var regexAlphaNumeric=/[a-zA-Z_0-9.:#]/;function isAlphaNumeric(c){return regexAlphaNumeric.test(c)}function merge(a,b){if(!a){a={}}if(b){for(var name in b){if(b.hasOwnProperty(name)){a[name]=b[name]}}}return a}function setValue(obj,path,value){var keys=path.split(\".\");var o=obj;while(keys.length){var key=keys.shift();if(keys.length){if(!o[key]){o[key]={}}o=o[key]}else{o[key]=value}}}function addNode(graph,node){var i,len;var current=null;var graphs=[graph];var root=graph;while(root.parent){graphs.push(root.parent);root=root.parent}if(root.nodes){for(i=0,len=root.nodes.length;i<len;i++){if(node.id===root.nodes[i].id){current=root.nodes[i];break}}}if(!current){current={id:node.id};if(graph.node){current.attr=merge(current.attr,graph.node)}}for(i=graphs.length-1;i>=0;i--){var g=graphs[i];if(!g.nodes){g.nodes=[]}if(g.nodes.indexOf(current)===-1){g.nodes.push(current)}}if(node.attr){current.attr=merge(current.attr,node.attr)}}function addEdge(graph,edge){if(!graph.edges){graph.edges=[]}graph.edges.push(edge);if(graph.edge){var attr=merge({},graph.edge);edge.attr=merge(attr,edge.attr)}}function createEdge(graph,from,to,type,attr){var edge={from:from,to:to,type:type};if(graph.edge){edge.attr=merge({},graph.edge)}edge.attr=merge(edge.attr||{},attr);return edge}function getToken(){tokenType=TOKENTYPE.NULL;token=\"\";while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}do{var isComment=false;if(c===\"#\"){var i=index-1;while(dot.charAt(i)===\" \"||dot.charAt(i)===\"\\t\"){i--}if(dot.charAt(i)===\"\\n\"||dot.charAt(i)===\"\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}}if(c===\"/\"&&nextPreview()===\"/\"){while(c!=\"\"&&c!=\"\\n\"){next()}isComment=true}if(c===\"/\"&&nextPreview()===\"*\"){while(c!=\"\"){if(c===\"*\"&&nextPreview()===\"/\"){next();next();break}else{next()}}isComment=true}while(c===\" \"||c===\"\\t\"||c===\"\\n\"||c===\"\\r\"){next()}}while(isComment);if(c===\"\"){tokenType=TOKENTYPE.DELIMITER;return}var c2=c+nextPreview();if(DELIMITERS[c2]){tokenType=TOKENTYPE.DELIMITER;token=c2;next();next();return}if(DELIMITERS[c]){tokenType=TOKENTYPE.DELIMITER;token=c;next();return}if(isAlphaNumeric(c)||c===\"-\"){token+=c;next();while(isAlphaNumeric(c)){token+=c;next()}if(token===\"false\"){token=false}else if(token===\"true\"){token=true}else if(!isNaN(Number(token))){token=Number(token)}tokenType=TOKENTYPE.IDENTIFIER;return}if(c==='\"'){next();while(c!=\"\"&&(c!='\"'||c==='\"'&&nextPreview()==='\"')){if(c==='\"'){token+=c;next()}else if(c===\"\\\\\"&&nextPreview()===\"n\"){token+=\"\\n\";next()}else{token+=c}next()}if(c!='\"'){throw newSyntaxError('End of string \" expected')}next();tokenType=TOKENTYPE.IDENTIFIER;return}tokenType=TOKENTYPE.UNKNOWN;while(c!=\"\"){token+=c;next()}throw new SyntaxError('Syntax error in part \"'+chop(token,30)+'\"')}function parseGraph(){var graph={};first();getToken();if(token===\"strict\"){graph.strict=true;getToken()}if(token===\"graph\"||token===\"digraph\"){graph.type=token;getToken()}if(tokenType===TOKENTYPE.IDENTIFIER){graph.id=token;getToken()}if(token!=\"{\"){throw newSyntaxError(\"Angle bracket { expected\")}getToken();parseStatements(graph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();if(token!==\"\"){throw newSyntaxError(\"End of file expected\")}getToken();delete graph.node;delete graph.edge;delete graph.graph;return graph}function parseStatements(graph){while(token!==\"\"&&token!=\"}\"){parseStatement(graph);if(token===\";\"){getToken()}}}function parseStatement(graph){var subgraph=parseSubgraph(graph);if(subgraph){parseEdge(graph,subgraph);return}var attr=parseAttributeStatement(graph);if(attr){return}if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}var id=token;getToken();if(token===\"=\"){getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier expected\")}graph[id]=token;getToken()}else{parseNodeStatement(graph,id)}}function parseSubgraph(graph){var subgraph=null;if(token===\"subgraph\"){subgraph={};subgraph.type=\"subgraph\";getToken();if(tokenType===TOKENTYPE.IDENTIFIER){subgraph.id=token;getToken()}}if(token===\"{\"){getToken();if(!subgraph){subgraph={}}subgraph.parent=graph;subgraph.node=graph.node;subgraph.edge=graph.edge;subgraph.graph=graph.graph;parseStatements(subgraph);if(token!=\"}\"){throw newSyntaxError(\"Angle bracket } expected\")}getToken();delete subgraph.node;delete subgraph.edge;delete subgraph.graph;delete subgraph.parent;if(!graph.subgraphs){graph.subgraphs=[]}graph.subgraphs.push(subgraph)}return subgraph}function parseAttributeStatement(graph){if(token===\"node\"){getToken();graph.node=parseAttributeList();return\"node\"}else if(token===\"edge\"){getToken();graph.edge=parseAttributeList();return\"edge\"}else if(token===\"graph\"){getToken();graph.graph=parseAttributeList();return\"graph\"}return null}function parseNodeStatement(graph,id){var node={id:id};var attr=parseAttributeList();if(attr){node.attr=attr}addNode(graph,node);parseEdge(graph,id)}function parseEdge(graph,from){while(token===\"->\"||token===\"--\"){var to;var type=token;getToken();var subgraph=parseSubgraph(graph);if(subgraph){to=subgraph}else{if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Identifier or subgraph expected\")}to=token;addNode(graph,{id:to});getToken()}var attr=parseAttributeList();var edge=createEdge(graph,from,to,type,attr);addEdge(graph,edge);from=to}}function parseAttributeList(){var attr=null;var edgeStyles={dashed:true,solid:false,dotted:[1,5]};while(token===\"[\"){getToken();attr={};while(token!==\"\"&&token!=\"]\"){if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute name expected\")}var name=token;getToken();if(token!=\"=\"){throw newSyntaxError(\"Equal sign = expected\")}getToken();if(tokenType!=TOKENTYPE.IDENTIFIER){throw newSyntaxError(\"Attribute value expected\")}var value=token;if(name===\"style\"){value=edgeStyles[value]}setValue(attr,name,value);getToken();if(token==\",\"){getToken()}}if(token!=\"]\"){throw newSyntaxError(\"Bracket ] expected\")}getToken()}return attr}function newSyntaxError(message){return new SyntaxError(message+', got \"'+chop(token,30)+'\" (char '+index+\")\")}function chop(text,maxLength){return text.length<=maxLength?text:text.substr(0,27)+\"...\"}function forEach2(array1,array2,fn){if(Array.isArray(array1)){array1.forEach(function(elem1){if(Array.isArray(array2)){array2.forEach(function(elem2){fn(elem1,elem2)})}else{fn(elem1,array2)}})}else{if(Array.isArray(array2)){array2.forEach(function(elem2){fn(array1,elem2)})}else{fn(array1,array2)}}}function setProp(object,path,value){var names=path.split(\".\");var prop=names.pop();var obj=object;for(var i=0;i<names.length;i++){var name=names[i];if(!(name in obj)){obj[name]={}}obj=obj[name]}obj[prop]=value;return object}function convertAttr(attr,mapping){var converted={};for(var prop in attr){if(attr.hasOwnProperty(prop)){var visProp=mapping[prop];if(Array.isArray(visProp)){visProp.forEach(function(visPropI){setProp(converted,visPropI,attr[prop])})}else if(typeof visProp===\"string\"){setProp(converted,visProp,attr[prop])}else{setProp(converted,prop,attr[prop])}}}return converted}function DOTToGraph(data){var dotData=parseDOT(data);var graphData={nodes:[],edges:[],options:{}};if(dotData.nodes){dotData.nodes.forEach(function(dotNode){var graphNode={id:dotNode.id,label:String(dotNode.label||dotNode.id)};merge(graphNode,convertAttr(dotNode.attr,NODE_ATTR_MAPPING));if(graphNode.image){graphNode.shape=\"image\"}graphData.nodes.push(graphNode)})}if(dotData.edges){var convertEdge=function convertEdge(dotEdge){var graphEdge={from:dotEdge.from,to:dotEdge.to};merge(graphEdge,convertAttr(dotEdge.attr,EDGE_ATTR_MAPPING));graphEdge.arrows=dotEdge.type===\"->\"?\"to\":undefined;return graphEdge};dotData.edges.forEach(function(dotEdge){var from,to;if(dotEdge.from instanceof Object){from=dotEdge.from.nodes}else{from={id:dotEdge.from}}if(dotEdge.to instanceof Object){to=dotEdge.to.nodes}else{to={id:dotEdge.to}}if(dotEdge.from instanceof Object&&dotEdge.from.edges){dotEdge.from.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}forEach2(from,to,function(from,to){var subEdge=createEdge(graphData,from.id,to.id,dotEdge.type,dotEdge.attr);var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)});if(dotEdge.to instanceof Object&&dotEdge.to.edges){dotEdge.to.edges.forEach(function(subEdge){var graphEdge=convertEdge(subEdge);graphData.edges.push(graphEdge)})}})}if(dotData.attr){graphData.options=dotData.attr}return graphData}exports.parseDOT=parseDOT;exports.DOTToGraph=DOTToGraph},function(module,exports,__webpack_require__){\"use strict\";function parseGephi(gephiJSON,optionsObj){var edges=[];var nodes=[];var options={edges:{inheritColor:false},nodes:{fixed:false,parseColor:false}};if(optionsObj!==undefined){if(optionsObj.fixed!==undefined){options.nodes.fixed=optionsObj.fixed}if(optionsObj.parseColor!==undefined){options.nodes.parseColor=optionsObj.parseColor}if(optionsObj.inheritColor!==undefined){options.edges.inheritColor=optionsObj.inheritColor}}var gEdges=gephiJSON.edges;var gNodes=gephiJSON.nodes;for(var i=0;i<gEdges.length;i++){var edge={};var gEdge=gEdges[i];edge[\"id\"]=gEdge.id;edge[\"from\"]=gEdge.source;edge[\"to\"]=gEdge.target;edge[\"attributes\"]=gEdge.attributes;edge[\"label\"]=gEdge.label;edge[\"title\"]=gEdge.attributes!==undefined?gEdge.attributes.title:undefined;if(gEdge[\"type\"]===\"Directed\"){edge[\"arrows\"]=\"to\"}if(gEdge.color&&options.inheritColor===false){edge[\"color\"]=gEdge.color}edges.push(edge)}for(var j=0;j<gNodes.length;j++){var node={};var gNode=gNodes[j];node[\"id\"]=gNode.id;node[\"attributes\"]=gNode.attributes;node[\"x\"]=gNode.x;node[\"y\"]=gNode.y;node[\"label\"]=gNode.label;node[\"title\"]=gNode.attributes!==undefined?gNode.attributes.title:gNode.title;if(options.nodes.parseColor===true){node[\"color\"]=gNode.color}else{node[\"color\"]=gNode.color!==undefined?{background:gNode.color,border:gNode.color,highlight:{background:gNode.color,border:gNode.color},hover:{background:gNode.color,border:gNode.color}}:undefined}node[\"size\"]=gNode.size;node[\"fixed\"]=options.nodes.fixed&&gNode.x!==undefined&&gNode.y!==undefined;nodes.push(node)}return{nodes:nodes,edges:edges}}exports.parseGephi=parseGephi},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _CachedImage=__webpack_require__(185);var _CachedImage2=_interopRequireDefault(_CachedImage);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Images=function(){function Images(callback){(0,_classCallCheck3[\"default\"])(this,Images);this.images={};this.imageBroken={};this.callback=callback}(0,_createClass3[\"default\"])(Images,[{key:\"_tryloadBrokenUrl\",value:function _tryloadBrokenUrl(url,brokenUrl,imageToLoadBrokenUrlOn){if(url===undefined||imageToLoadBrokenUrlOn===undefined)return;if(brokenUrl===undefined){console.warn(\"No broken url image defined\");return}imageToLoadBrokenUrlOn.onerror=function(){console.error(\"Could not load brokenImage:\",brokenUrl)};imageToLoadBrokenUrlOn.image.src=brokenUrl}},{key:\"_redrawWithImage\",value:function _redrawWithImage(imageToRedrawWith){if(this.callback){this.callback(imageToRedrawWith)}}},{key:\"load\",value:function load(url,brokenUrl){var _this=this;var cachedImage=this.images[url];if(cachedImage)return cachedImage;var img=new _CachedImage2[\"default\"];this.images[url]=img;img.image.onload=function(){_this._fixImageCoordinates(img.image);img.init();_this._redrawWithImage(img)};img.image.onerror=function(){console.error(\"Could not load image:\",url);_this._tryloadBrokenUrl(url,brokenUrl,img)};img.image.src=url;return img}},{key:\"_fixImageCoordinates\",value:function _fixImageCoordinates(imageToCache){if(imageToCache.width===0){document.body.appendChild(imageToCache);imageToCache.width=imageToCache.offsetWidth;imageToCache.height=imageToCache.offsetHeight;document.body.removeChild(imageToCache)}}}]);return Images}();exports[\"default\"]=Images},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=__webpack_require__(191)[\"default\"];var multiFontStyle=[\"bold\",\"ital\",\"boldital\",\"mono\"];var Label=function(){function Label(body,options){var edgelabel=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;(0,_classCallCheck3[\"default\"])(this,Label);this.body=body;this.pointToSelf=false;this.baseSize=undefined;this.fontOptions={};this.setOptions(options);this.size={top:0,left:0,width:0,height:0,yLine:0};this.isEdgeLabel=edgelabel}(0,_createClass3[\"default\"])(Label,[{key:\"setOptions\",value:function setOptions(options){this.elementOptions=options;this.initFontOptions(options.font);if(ComponentUtil.isValidLabel(options.label)){this.labelDirty=true}else{options.label=\"\"}if(options.font!==undefined&&options.font!==null){if(typeof options.font===\"string\"){this.baseSize=this.fontOptions.size}else if((0,_typeof3[\"default\"])(options.font)===\"object\"){var size=options.font.size;if(size!==undefined){this.baseSize=size}}}}},{key:\"initFontOptions\",value:function initFontOptions(newFontOptions){var _this=this;util.forEach(multiFontStyle,function(style){_this.fontOptions[style]={}});if(Label.parseFontString(this.fontOptions,newFontOptions)){this.fontOptions.vadjust=0;return}util.forEach(newFontOptions,function(prop,n){if(prop!==undefined&&prop!==null&&(typeof prop===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(prop))!==\"object\"){_this.fontOptions[n]=prop}})}},{key:\"constrain\",value:function constrain(pile){var fontOptions={constrainWidth:false,maxWdt:-1,minWdt:-1,constrainHeight:false,minHgt:-1,valign:\"middle\"};var widthConstraint=util.topMost(pile,\"widthConstraint\");if(typeof widthConstraint===\"number\"){fontOptions.maxWdt=Number(widthConstraint);fontOptions.minWdt=Number(widthConstraint)}else if((typeof widthConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(widthConstraint))===\"object\"){var widthConstraintMaximum=util.topMost(pile,[\"widthConstraint\",\"maximum\"]);if(typeof widthConstraintMaximum===\"number\"){fontOptions.maxWdt=Number(widthConstraintMaximum)}var widthConstraintMinimum=util.topMost(pile,[\"widthConstraint\",\"minimum\"]);if(typeof widthConstraintMinimum===\"number\"){fontOptions.minWdt=Number(widthConstraintMinimum)}}var heightConstraint=util.topMost(pile,\"heightConstraint\");if(typeof heightConstraint===\"number\"){fontOptions.minHgt=Number(heightConstraint)}else if((typeof heightConstraint===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(heightConstraint))===\"object\"){var heightConstraintMinimum=util.topMost(pile,[\"heightConstraint\",\"minimum\"]);if(typeof heightConstraintMinimum===\"number\"){fontOptions.minHgt=Number(heightConstraintMinimum)}var heightConstraintValign=util.topMost(pile,[\"heightConstraint\",\"valign\"]);if(typeof heightConstraintValign===\"string\"){if(heightConstraintValign===\"top\"||heightConstraintValign===\"bottom\"){fontOptions.valign=heightConstraintValign}}}return fontOptions}},{key:\"update\",value:function update(options,pile){this.setOptions(options,true);this.propagateFonts(pile);util.deepExtend(this.fontOptions,this.constrain(pile));this.fontOptions.chooser=ComponentUtil.choosify(\"label\",pile)}},{key:\"adjustSizes\",value:function adjustSizes(margins){var widthBias=margins?margins.right+margins.left:0;if(this.fontOptions.constrainWidth){this.fontOptions.maxWdt-=widthBias;this.fontOptions.minWdt-=widthBias}var heightBias=margins?margins.top+margins.bottom:0;if(this.fontOptions.constrainHeight){this.fontOptions.minHgt-=heightBias}}},{key:\"addFontOptionsToPile\",value:function addFontOptionsToPile(dstPile,srcPile){for(var i=0;i<srcPile.length;++i){this.addFontToPile(dstPile,srcPile[i])}}},{key:\"addFontToPile\",value:function addFontToPile(pile,options){if(options===undefined)return;if(options.font===undefined||options.font===null)return;var item=options.font;pile.push(item)}},{key:\"getBasicOptions\",value:function getBasicOptions(pile){var ret={};for(var n=0;n<pile.length;++n){var fontOptions=pile[n];var tmpShorthand={};if(Label.parseFontString(tmpShorthand,fontOptions)){fontOptions=tmpShorthand}util.forEach(fontOptions,function(opt,name){if(opt===undefined)return;if(ret.hasOwnProperty(name))return;if(multiFontStyle.indexOf(name)!==-1){ret[name]={}}else{ret[name]=opt}})}return ret}},{key:\"getFontOption\",value:function getFontOption(pile,multiName,option){var multiFont=void 0;for(var n=0;n<pile.length;++n){var fontOptions=pile[n];if(fontOptions.hasOwnProperty(multiName)){multiFont=fontOptions[multiName];if(multiFont===undefined||multiFont===null)continue;var tmpShorthand={};if(Label.parseFontString(tmpShorthand,multiFont)){multiFont=tmpShorthand}if(multiFont.hasOwnProperty(option)){return multiFont[option]}}}if(this.fontOptions.hasOwnProperty(option)){return this.fontOptions[option]}throw new Error(\"Did not find value for multi-font for property: '\"+option+\"'\")}},{key:\"getFontOptions\",value:function getFontOptions(pile,multiName){var result={};var optionNames=[\"color\",\"size\",\"face\",\"mod\",\"vadjust\"];for(var i=0;i<optionNames.length;++i){var mod=optionNames[i];result[mod]=this.getFontOption(pile,multiName,mod)}return result}},{key:\"propagateFonts\",value:function propagateFonts(pile){var _this2=this;var fontPile=[];this.addFontOptionsToPile(fontPile,pile);this.fontOptions=this.getBasicOptions(fontPile);var _loop=function _loop(i){var mod=multiFontStyle[i];var modOptions=_this2.fontOptions[mod];var tmpMultiFontOptions=_this2.getFontOptions(fontPile,mod);util.forEach(tmpMultiFontOptions,function(option,n){modOptions[n]=option});modOptions.size=Number(modOptions.size);modOptions.vadjust=Number(modOptions.vadjust)};for(var i=0;i<multiFontStyle.length;++i){_loop(i)}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover){var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";if(this.elementOptions.label===undefined)return;var viewFontSize=this.fontOptions.size*this.body.view.scale;if(this.elementOptions.label&&viewFontSize<this.elementOptions.scaling.label.drawThreshold-1)return;if(viewFontSize>=this.elementOptions.scaling.label.maxVisible){viewFontSize=Number(this.elementOptions.scaling.label.maxVisible)/this.body.view.scale}this.calculateLabelSize(ctx,selected,hover,x,y,baseline);this._drawBackground(ctx);this._drawText(ctx,x,this.size.yLine,baseline,viewFontSize)}},{key:\"_drawBackground\",value:function _drawBackground(ctx){if(this.fontOptions.background!==undefined&&this.fontOptions.background!==\"none\"){ctx.fillStyle=this.fontOptions.background;var size=this.getSize();ctx.fillRect(size.left,size.top,size.width,size.height)}}},{key:\"_drawText\",value:function _drawText(ctx,x,y){var baseline=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"middle\";var viewFontSize=arguments[4];var _setAlignment2=this._setAlignment(ctx,x,y,baseline);var _setAlignment3=(0,_slicedToArray3[\"default\"])(_setAlignment2,2);x=_setAlignment3[0];y=_setAlignment3[1];ctx.textAlign=\"left\";x=x-this.size.width/2;if(this.fontOptions.valign&&this.size.height>this.size.labelHeight){if(this.fontOptions.valign===\"top\"){y-=(this.size.height-this.size.labelHeight)/2}if(this.fontOptions.valign===\"bottom\"){y+=(this.size.height-this.size.labelHeight)/2}}for(var i=0;i<this.lineCount;i++){var line=this.lines[i];if(line&&line.blocks){var width=0;if(this.isEdgeLabel||this.fontOptions.align===\"center\"){width+=(this.size.width-line.width)/2}else if(this.fontOptions.align===\"right\"){width+=this.size.width-line.width}for(var j=0;j<line.blocks.length;j++){var block=line.blocks[j];ctx.font=block.font;var _getColor2=this._getColor(block.color,viewFontSize,block.strokeColor),_getColor3=(0,_slicedToArray3[\"default\"])(_getColor2,2),fontColor=_getColor3[0],strokeColor=_getColor3[1];if(block.strokeWidth>0){ctx.lineWidth=block.strokeWidth;ctx.strokeStyle=strokeColor;ctx.lineJoin=\"round\"}ctx.fillStyle=fontColor;if(block.strokeWidth>0){ctx.strokeText(block.text,x+width,y+block.vadjust)}ctx.fillText(block.text,x+width,y+block.vadjust);width+=block.width}y+=line.height}}}},{key:\"_setAlignment\",value:function _setAlignment(ctx,x,y,baseline){if(this.isEdgeLabel&&this.fontOptions.align!==\"horizontal\"&&this.pointToSelf===false){x=0;y=0;var lineMargin=2;if(this.fontOptions.align===\"top\"){ctx.textBaseline=\"alphabetic\";y-=2*lineMargin}else if(this.fontOptions.align===\"bottom\"){ctx.textBaseline=\"hanging\";y+=2*lineMargin}else{ctx.textBaseline=\"middle\"}}else{ctx.textBaseline=baseline}return[x,y]}},{key:\"_getColor\",value:function _getColor(color,viewFontSize,initialStrokeColor){var fontColor=color||\"#000000\";var strokeColor=initialStrokeColor||\"#ffffff\";if(viewFontSize<=this.elementOptions.scaling.label.drawThreshold){var opacity=Math.max(0,Math.min(1,1-(this.elementOptions.scaling.label.drawThreshold-viewFontSize)));fontColor=util.overrideOpacity(fontColor,opacity);strokeColor=util.overrideOpacity(strokeColor,opacity)}return[fontColor,strokeColor]}},{key:\"getTextSize\",value:function getTextSize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;this._processLabel(ctx,selected,hover);return{width:this.size.width,height:this.size.height,lineCount:this.lineCount}}},{key:\"getSize\",value:function getSize(){var lineMargin=2;var x=this.size.left;var y=this.size.top-.5*lineMargin;if(this.isEdgeLabel){var x2=-this.size.width*.5;switch(this.fontOptions.align){case\"middle\":x=x2;y=-this.size.height*.5;break;case\"top\":x=x2;y=-(this.size.height+lineMargin);break;case\"bottom\":x=x2;y=lineMargin;break}}var ret={left:x,top:y,width:this.size.width,height:this.size.height};return ret}},{key:\"calculateLabelSize\",value:function calculateLabelSize(ctx,selected,hover){var x=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;var y=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;var baseline=arguments.length>5&&arguments[5]!==undefined?arguments[5]:\"middle\";this._processLabel(ctx,selected,hover);this.size.left=x-this.size.width*.5;this.size.top=y-this.size.height*.5;this.size.yLine=y+(1-this.lineCount)*.5*this.fontOptions.size;if(baseline===\"hanging\"){this.size.top+=.5*this.fontOptions.size;this.size.top+=4;this.size.yLine+=4}}},{key:\"getFormattingValues\",value:function getFormattingValues(ctx,selected,hover,mod){var getValue=function getValue(fontOptions,mod,option){if(mod===\"normal\"){if(option===\"mod\")return\"\";return fontOptions[option]}if(fontOptions[mod][option]!==undefined){return fontOptions[mod][option]}else{return fontOptions[option]}};var values={color:getValue(this.fontOptions,mod,\"color\"),size:getValue(this.fontOptions,mod,\"size\"),face:getValue(this.fontOptions,mod,\"face\"),mod:getValue(this.fontOptions,mod,\"mod\"),vadjust:getValue(this.fontOptions,mod,\"vadjust\"),strokeWidth:this.fontOptions.strokeWidth,strokeColor:this.fontOptions.strokeColor};if(selected||hover){if(mod===\"normal\"&&this.fontOptions.chooser===true&&this.elementOptions.labelHighlightBold){values.mod=\"bold\"}else{if(typeof this.fontOptions.chooser===\"function\"){this.fontOptions.chooser(values,this.elementOptions.id,selected,hover)}}}var fontString=\"\";if(values.mod!==undefined&&values.mod!==\"\"){fontString+=values.mod+\" \"}fontString+=values.size+\"px \"+values.face;ctx.font=fontString.replace(/\"/g,\"\");values.font=ctx.font;values.height=values.size;return values}},{key:\"differentState\",value:function differentState(selected,hover){return selected!==this.selectedState||hover!==this.hoverState}},{key:\"_processLabelText\",value:function _processLabelText(ctx,selected,hover,inText){var splitter=new LabelSplitter(ctx,this,selected,hover);return splitter.process(inText)}},{key:\"_processLabel\",value:function _processLabel(ctx,selected,hover){if(this.labelDirty===false&&!this.differentState(selected,hover))return;var state=this._processLabelText(ctx,selected,hover,this.elementOptions.label);if(this.fontOptions.minWdt>0&&state.width<this.fontOptions.minWdt){state.width=this.fontOptions.minWdt}this.size.labelHeight=state.height;if(this.fontOptions.minHgt>0&&state.height<this.fontOptions.minHgt){state.height=this.fontOptions.minHgt}this.lines=state.lines;this.lineCount=state.lines.length;this.size.width=state.width;this.size.height=state.height;this.selectedState=selected;this.hoverState=hover;this.labelDirty=false}},{key:\"visible\",value:function visible(){if(this.size.width===0||this.size.height===0||this.elementOptions.label===undefined){return false}var viewFontSize=this.fontOptions.size*this.body.view.scale;if(viewFontSize<this.elementOptions.scaling.label.drawThreshold-1){return false}return true}}],[{key:\"parseFontString\",value:function parseFontString(outOptions,inOptions){if(!inOptions||typeof inOptions!==\"string\")return false;var newOptionsArray=inOptions.split(\" \");outOptions.size=newOptionsArray[0].replace(\"px\",\"\");outOptions.face=newOptionsArray[1];outOptions.color=newOptionsArray[2];return true}}]);return Label}();exports[\"default\"]=Label},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var EdgeBase=function(){function EdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,EdgeBase);this.body=body;this.labelModule=labelModule\n;this.options={};this.setOptions(options);this.colorDirty=true;this.color={};this.selectionWidth=2;this.hoverWidth=1.5;this.fromPoint=this.from;this.toPoint=this.to}(0,_createClass3[\"default\"])(EdgeBase,[{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to]}},{key:\"cleanup\",value:function cleanup(){return false}},{key:\"setOptions\",value:function setOptions(options){this.options=options;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.id=this.options.id}},{key:\"drawLine\",value:function drawLine(ctx,values,selected,hover,viaNode){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.lineWidth=values.width;if(values.dashes!==false){this._drawDashedLine(ctx,values,viaNode)}else{this._drawLine(ctx,values,viaNode)}}},{key:\"_drawLine\",value:function _drawLine(ctx,values,viaNode,fromPoint,toPoint){if(this.from!=this.to){this._line(ctx,values,viaNode,fromPoint,toPoint)}else{var _getCircleData2=this._getCircleData(ctx),_getCircleData3=(0,_slicedToArray3[\"default\"])(_getCircleData2,3),x=_getCircleData3[0],y=_getCircleData3[1],radius=_getCircleData3[2];this._circle(ctx,values,x,y,radius)}}},{key:\"_drawDashedLine\",value:function _drawDashedLine(ctx,values,viaNode,fromPoint,toPoint){ctx.lineCap=\"round\";var pattern=[5,5];if(Array.isArray(values.dashes)===true){pattern=values.dashes}if(ctx.setLineDash!==undefined){ctx.save();ctx.setLineDash(pattern);ctx.lineDashOffset=0;if(this.from!=this.to){this._line(ctx,values,viaNode)}else{var _getCircleData4=this._getCircleData(ctx),_getCircleData5=(0,_slicedToArray3[\"default\"])(_getCircleData4,3),x=_getCircleData5[0],y=_getCircleData5[1],radius=_getCircleData5[2];this._circle(ctx,values,x,y,radius)}ctx.setLineDash([0]);ctx.lineDashOffset=0;ctx.restore()}else{if(this.from!=this.to){ctx.dashedLine(this.from.x,this.from.y,this.to.x,this.to.y,pattern)}else{var _getCircleData6=this._getCircleData(ctx),_getCircleData7=(0,_slicedToArray3[\"default\"])(_getCircleData6,3),_x=_getCircleData7[0],_y=_getCircleData7[1],_radius=_getCircleData7[2];this._circle(ctx,values,_x,_y,_radius)}this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}}},{key:\"findBorderPosition\",value:function findBorderPosition(nearNode,ctx,options){if(this.from!=this.to){return this._findBorderPosition(nearNode,ctx,options)}else{return this._findBorderPositionCircle(nearNode,ctx,options)}}},{key:\"findBorderPositions\",value:function findBorderPositions(ctx){var from={};var to={};if(this.from!=this.to){from=this._findBorderPosition(this.from,ctx);to=this._findBorderPosition(this.to,ctx)}else{var _getCircleData$slice=this._getCircleData(ctx).slice(0,2),_getCircleData$slice2=(0,_slicedToArray3[\"default\"])(_getCircleData$slice,2),x=_getCircleData$slice2[0],y=_getCircleData$slice2[1];from=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});to=this._findBorderPositionCircle(this.from,ctx,{x:x,y:y,low:.6,high:.8,direction:1})}return{from:from,to:to}}},{key:\"_getCircleData\",value:function _getCircleData(ctx){var x=void 0,y=void 0;var node=this.from;var radius=this.options.selfReferenceSize;if(ctx!==undefined){if(node.shape.width===undefined){node.shape.resize(ctx)}}if(node.shape.width>node.shape.height){x=node.x+node.shape.width*.5;y=node.y-radius}else{x=node.x+radius;y=node.y-node.shape.height*.5}return[x,y,radius]}},{key:\"_pointOnCircle\",value:function _pointOnCircle(x,y,radius,percentage){var angle=percentage*2*Math.PI;return{x:x+radius*Math.cos(angle),y:y-radius*Math.sin(angle)}}},{key:\"_findBorderPositionCircle\",value:function _findBorderPositionCircle(node,ctx,options){var x=options.x;var y=options.y;var low=options.low;var high=options.high;var direction=options.direction;var maxIterations=10;var iteration=0;var radius=this.options.selfReferenceSize;var pos=void 0,angle=void 0,distanceToBorder=void 0,distanceToPoint=void 0,difference=void 0;var threshold=.05;var middle=(low+high)*.5;while(low<=high&&iteration<maxIterations){middle=(low+high)*.5;pos=this._pointOnCircle(x,y,radius,middle);angle=Math.atan2(node.y-pos.y,node.x-pos.x);distanceToBorder=node.distanceToBorder(ctx,angle);distanceToPoint=Math.sqrt(Math.pow(pos.x-node.x,2)+Math.pow(pos.y-node.y,2));difference=distanceToBorder-distanceToPoint;if(Math.abs(difference)<threshold){break}else if(difference>0){if(direction>0){low=middle}else{high=middle}}else{if(direction>0){high=middle}else{low=middle}}iteration++}pos.t=middle;return pos}},{key:\"getLineWidth\",value:function getLineWidth(selected,hover){if(selected===true){return Math.max(this.selectionWidth,.3/this.body.view.scale)}else{if(hover===true){return Math.max(this.hoverWidth,.3/this.body.view.scale)}else{return Math.max(this.options.width,.3/this.body.view.scale)}}}},{key:\"getColor\",value:function getColor(ctx,values,selected,hover){if(values.inheritsColor!==false){if(values.inheritsColor===\"both\"&&this.from.id!==this.to.id){var grd=ctx.createLinearGradient(this.from.x,this.from.y,this.to.x,this.to.y);var fromColor=void 0,toColor=void 0;fromColor=this.from.options.color.highlight.border;toColor=this.to.options.color.highlight.border;if(this.from.selected===false&&this.to.selected===false){fromColor=util.overrideOpacity(this.from.options.color.border,values.opacity);toColor=util.overrideOpacity(this.to.options.color.border,values.opacity)}else if(this.from.selected===true&&this.to.selected===false){toColor=this.to.options.color.border}else if(this.from.selected===false&&this.to.selected===true){fromColor=this.from.options.color.border}grd.addColorStop(0,fromColor);grd.addColorStop(1,toColor);return grd}if(values.inheritsColor===\"to\"){return util.overrideOpacity(this.to.options.color.border,values.opacity)}else{return util.overrideOpacity(this.from.options.color.border,values.opacity)}}else{return util.overrideOpacity(values.color,values.opacity)}}},{key:\"_circle\",value:function _circle(ctx,values,x,y,radius){this.enableShadow(ctx,values);ctx.beginPath();ctx.arc(x,y,radius,0,2*Math.PI,false);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getDistanceToEdge\",value:function getDistanceToEdge(x1,y1,x2,y2,x3,y3,via,values){var returnValue=0;if(this.from!=this.to){returnValue=this._getDistanceToEdge(x1,y1,x2,y2,x3,y3,via)}else{var _getCircleData8=this._getCircleData(undefined),_getCircleData9=(0,_slicedToArray3[\"default\"])(_getCircleData8,3),x=_getCircleData9[0],y=_getCircleData9[1],radius=_getCircleData9[2];var dx=x-x3;var dy=y-y3;returnValue=Math.abs(Math.sqrt(dx*dx+dy*dy)-radius)}return returnValue}},{key:\"_getDistanceToLine\",value:function _getDistanceToLine(x1,y1,x2,y2,x3,y3){var px=x2-x1;var py=y2-y1;var something=px*px+py*py;var u=((x3-x1)*px+(y3-y1)*py)/something;if(u>1){u=1}else if(u<0){u=0}var x=x1+u*px;var y=y1+u*py;var dx=x-x3;var dy=y-y3;return Math.sqrt(dx*dx+dy*dy)}},{key:\"getArrowData\",value:function getArrowData(ctx,position,viaNode,selected,hover,values){var angle=void 0;var arrowPoint=void 0;var node1=void 0;var node2=void 0;var guideOffset=void 0;var scaleFactor=void 0;var type=void 0;var lineWidth=values.width;if(position===\"from\"){node1=this.from;node2=this.to;guideOffset=.1;scaleFactor=values.fromArrowScale;type=values.fromArrowType}else if(position===\"to\"){node1=this.to;node2=this.from;guideOffset=-.1;scaleFactor=values.toArrowScale;type=values.toArrowType}else{node1=this.to;node2=this.from;scaleFactor=values.middleArrowScale;type=values.middleArrowType}if(node1!=node2){if(position!==\"middle\"){if(this.options.smooth.enabled===true){arrowPoint=this.findBorderPosition(node1,ctx,{via:viaNode});var guidePos=this.getPoint(Math.max(0,Math.min(1,arrowPoint.t+guideOffset)),viaNode);angle=Math.atan2(arrowPoint.y-guidePos.y,arrowPoint.x-guidePos.x)}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.findBorderPosition(node1,ctx)}}else{angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);arrowPoint=this.getPoint(.5,viaNode)}}else{var _getCircleData10=this._getCircleData(ctx),_getCircleData11=(0,_slicedToArray3[\"default\"])(_getCircleData10,3),x=_getCircleData11[0],y=_getCircleData11[1],radius=_getCircleData11[2];if(position===\"from\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.25,high:.6,direction:-1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI+.1*Math.PI}else if(position===\"to\"){arrowPoint=this.findBorderPosition(this.from,ctx,{x:x,y:y,low:.6,high:1,direction:1});angle=arrowPoint.t*-2*Math.PI+1.5*Math.PI-1.1*Math.PI}else{arrowPoint=this._pointOnCircle(x,y,radius,.175);angle=3.9269908169872414}}if(position===\"middle\"&&scaleFactor<0)lineWidth*=-1;var length=15*scaleFactor+3*lineWidth;var xi=arrowPoint.x-length*.9*Math.cos(angle);var yi=arrowPoint.y-length*.9*Math.sin(angle);var arrowCore={x:xi,y:yi};return{point:arrowPoint,core:arrowCore,angle:angle,length:length,type:type}}},{key:\"drawArrowHead\",value:function drawArrowHead(ctx,values,selected,hover,arrowData){ctx.strokeStyle=this.getColor(ctx,values,selected,hover);ctx.fillStyle=ctx.strokeStyle;ctx.lineWidth=values.width;EndPoints.draw(ctx,arrowData);this.enableShadow(ctx,values);ctx.fill();this.disableShadow(ctx,values)}},{key:\"enableShadow\",value:function enableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=values.shadowColor;ctx.shadowBlur=values.shadowSize;ctx.shadowOffsetX=values.shadowX;ctx.shadowOffsetY=values.shadowY}}},{key:\"disableShadow\",value:function disableShadow(ctx,values){if(values.shadow===true){ctx.shadowColor=\"rgba(0,0,0,0)\";ctx.shadowBlur=0;ctx.shadowOffsetX=0;ctx.shadowOffsetY=0}}}]);return EdgeBase}();exports[\"default\"]=EdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var EndPoint=function(){function EndPoint(){(0,_classCallCheck3[\"default\"])(this,EndPoint)}(0,_createClass3[\"default\"])(EndPoint,null,[{key:\"transform\",value:function transform(points,arrowData){if(!(points instanceof Array)){points=[points]}var x=arrowData.point.x;var y=arrowData.point.y;var angle=arrowData.angle;var length=arrowData.length;for(var i=0;i<points.length;++i){var p=points[i];var xt=p.x*Math.cos(angle)-p.y*Math.sin(angle);var yt=p.x*Math.sin(angle)+p.y*Math.cos(angle);p.x=x+length*xt;p.y=y+length*yt}}},{key:\"drawPath\",value:function drawPath(ctx,points){ctx.beginPath();ctx.moveTo(points[0].x,points[0].y);for(var i=1;i<points.length;++i){ctx.lineTo(points[i].x,points[i].y)}ctx.closePath()}}]);return EndPoint}();var Arrow=function(_EndPoint){(0,_inherits3[\"default\"])(Arrow,_EndPoint);function Arrow(){(0,_classCallCheck3[\"default\"])(this,Arrow);return(0,_possibleConstructorReturn3[\"default\"])(this,(Arrow.__proto__||(0,_getPrototypeOf2[\"default\"])(Arrow)).apply(this,arguments))}(0,_createClass3[\"default\"])(Arrow,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:0},{x:-1,y:.3},{x:-.9,y:0},{x:-1,y:-.3}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Arrow}(EndPoint);var Circle=function(){function Circle(){(0,_classCallCheck3[\"default\"])(this,Circle)}(0,_createClass3[\"default\"])(Circle,null,[{key:\"draw\",value:function draw(ctx,arrowData){var point={x:-.4,y:0};EndPoint.transform(point,arrowData);ctx.circle(point.x,point.y,arrowData.length*.4)}}]);return Circle}();var Bar=function(){function Bar(){(0,_classCallCheck3[\"default\"])(this,Bar)}(0,_createClass3[\"default\"])(Bar,null,[{key:\"draw\",value:function draw(ctx,arrowData){var points=[{x:0,y:.5},{x:0,y:-.5},{x:-.15,y:-.5},{x:-.15,y:.5}];EndPoint.transform(points,arrowData);EndPoint.drawPath(ctx,points)}}]);return Bar}();var EndPoints=function(){function EndPoints(){(0,_classCallCheck3[\"default\"])(this,EndPoints)}(0,_createClass3[\"default\"])(EndPoints,null,[{key:\"draw\",value:function draw(ctx,arrowData){var type;if(arrowData.type){type=arrowData.type.toLowerCase()}switch(type){case\"circle\":Circle.draw(ctx,arrowData);break;case\"bar\":Bar.draw(ctx,arrowData);break;case\"arrow\":default:Arrow.draw(ctx,arrowData)}}}]);return EndPoints}();exports[\"default\"]=EndPoints},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=function(){function BarnesHutSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,BarnesHutSolver);this.body=body;this.physicsBody=physicsBody;this.barnesHutTree;this.setOptions(options);this.randomSeed=5}(0,_createClass3[\"default\"])(BarnesHutSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options;this.thetaInversed=1/this.options.theta;this.overlapAvoidanceFactor=1-Math.max(0,Math.min(1,this.options.avoidOverlap))}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"solve\",value:function solve(){if(this.options.gravitationalConstant!==0&&this.physicsBody.physicsNodeIndices.length>0){var node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var nodeCount=nodeIndices.length;var barnesHutTree=this._formBarnesHutTree(nodes,nodeIndices);this.barnesHutTree=barnesHutTree;for(var i=0;i<nodeCount;i++){node=nodes[nodeIndices[i]];if(node.options.mass>0){this._getForceContributions(barnesHutTree.root,node)}}}}},{key:\"_getForceContributions\",value:function _getForceContributions(parentBranch,node){this._getForceContribution(parentBranch.children.NW,node);this._getForceContribution(parentBranch.children.NE,node);this._getForceContribution(parentBranch.children.SW,node);this._getForceContribution(parentBranch.children.SE,node)}},{key:\"_getForceContribution\",value:function _getForceContribution(parentBranch,node){if(parentBranch.childrenCount>0){var dx=void 0,dy=void 0,distance=void 0;dx=parentBranch.centerOfMass.x-node.x;dy=parentBranch.centerOfMass.y-node.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance*parentBranch.calcSize>this.thetaInversed){this._calculateForces(distance,dx,dy,node,parentBranch)}else{if(parentBranch.childrenCount===4){this._getForceContributions(parentBranch,node)}else{if(parentBranch.children.data.id!=node.id){this._calculateForces(distance,dx,dy,node,parentBranch)}}}}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1;dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass/Math.pow(distance,3);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}},{key:\"_formBarnesHutTree\",value:function _formBarnesHutTree(nodes,nodeIndices){var node=void 0;var nodeCount=nodeIndices.length;var minX=nodes[nodeIndices[0]].x;var minY=nodes[nodeIndices[0]].y;var maxX=nodes[nodeIndices[0]].x;var maxY=nodes[nodeIndices[0]].y;for(var i=1;i<nodeCount;i++){var _node=nodes[nodeIndices[i]];var x=_node.x;var y=_node.y;if(_node.options.mass>0){if(x<minX){minX=x}if(x>maxX){maxX=x}if(y<minY){minY=y}if(y>maxY){maxY=y}}}var sizeDiff=Math.abs(maxX-minX)-Math.abs(maxY-minY);if(sizeDiff>0){minY-=.5*sizeDiff;maxY+=.5*sizeDiff}else{minX+=.5*sizeDiff;maxX-=.5*sizeDiff}var minimumTreeSize=1e-5;var rootSize=Math.max(minimumTreeSize,Math.abs(maxX-minX));var halfRootSize=.5*rootSize;var centerX=.5*(minX+maxX),centerY=.5*(minY+maxY);var barnesHutTree={root:{centerOfMass:{x:0,y:0},mass:0,range:{minX:centerX-halfRootSize,maxX:centerX+halfRootSize,minY:centerY-halfRootSize,maxY:centerY+halfRootSize},size:rootSize,calcSize:1/rootSize,children:{data:null},maxWidth:0,level:0,childrenCount:4}};this._splitBranch(barnesHutTree.root);for(var _i=0;_i<nodeCount;_i++){node=nodes[nodeIndices[_i]];if(node.options.mass>0){this._placeInTree(barnesHutTree.root,node)}}return barnesHutTree}},{key:\"_updateBranchMass\",value:function _updateBranchMass(parentBranch,node){var centerOfMass=parentBranch.centerOfMass;var totalMass=parentBranch.mass+node.options.mass;var totalMassInv=1/totalMass;centerOfMass.x=centerOfMass.x*parentBranch.mass+node.x*node.options.mass;centerOfMass.x*=totalMassInv;centerOfMass.y=centerOfMass.y*parentBranch.mass+node.y*node.options.mass;centerOfMass.y*=totalMassInv;parentBranch.mass=totalMass;var biggestSize=Math.max(Math.max(node.height,node.radius),node.width);parentBranch.maxWidth=parentBranch.maxWidth<biggestSize?biggestSize:parentBranch.maxWidth}},{key:\"_placeInTree\",value:function _placeInTree(parentBranch,node,skipMassUpdate){if(skipMassUpdate!=true||skipMassUpdate===undefined){this._updateBranchMass(parentBranch,node)}var range=parentBranch.children.NW.range;var region=void 0;if(range.maxX>node.x){if(range.maxY>node.y){region=\"NW\"}else{region=\"SW\"}}else{if(range.maxY>node.y){region=\"NE\"}else{region=\"SE\"}}this._placeInRegion(parentBranch,node,region)}},{key:\"_placeInRegion\",value:function _placeInRegion(parentBranch,node,region){var children=parentBranch.children[region];switch(children.childrenCount){case 0:children.children.data=node;children.childrenCount=1;this._updateBranchMass(children,node);break;case 1:if(children.children.data.x===node.x&&children.children.data.y===node.y){node.x+=this.seededRandom();node.y+=this.seededRandom()}else{this._splitBranch(children);this._placeInTree(children,node)}break;case 4:this._placeInTree(children,node);break}}},{key:\"_splitBranch\",value:function _splitBranch(parentBranch){var containedNode=null;if(parentBranch.childrenCount===1){containedNode=parentBranch.children.data;parentBranch.mass=0;parentBranch.centerOfMass.x=0;parentBranch.centerOfMass.y=0}parentBranch.childrenCount=4;parentBranch.children.data=null;this._insertRegion(parentBranch,\"NW\");this._insertRegion(parentBranch,\"NE\");this._insertRegion(parentBranch,\"SW\");this._insertRegion(parentBranch,\"SE\");if(containedNode!=null){this._placeInTree(parentBranch,containedNode)}}},{key:\"_insertRegion\",value:function _insertRegion(parentBranch,region){var minX=void 0,maxX=void 0,minY=void 0,maxY=void 0;var childSize=.5*parentBranch.size;switch(region){case\"NW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"NE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY;maxY=parentBranch.range.minY+childSize;break;case\"SW\":minX=parentBranch.range.minX;maxX=parentBranch.range.minX+childSize;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break;case\"SE\":minX=parentBranch.range.minX+childSize;maxX=parentBranch.range.maxX;minY=parentBranch.range.minY+childSize;maxY=parentBranch.range.maxY;break}parentBranch.children[region]={centerOfMass:{x:0,y:0},mass:0,range:{minX:minX,maxX:maxX,minY:minY,maxY:maxY},size:.5*parentBranch.size,calcSize:2*parentBranch.calcSize,children:{data:null},maxWidth:0,level:parentBranch.level+1,childrenCount:0}}},{key:\"_debug\",value:function _debug(ctx,color){if(this.barnesHutTree!==undefined){ctx.lineWidth=1;this._drawBranch(this.barnesHutTree.root,ctx,color)}}},{key:\"_drawBranch\",value:function _drawBranch(branch,ctx,color){if(color===undefined){color=\"#FF0000\"}if(branch.childrenCount===4){this._drawBranch(branch.children.NW,ctx);this._drawBranch(branch.children.NE,ctx);this._drawBranch(branch.children.SE,ctx);this._drawBranch(branch.children.SW,ctx)}ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.minY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.minY);ctx.lineTo(branch.range.maxX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.maxX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.maxY);ctx.stroke();ctx.beginPath();ctx.moveTo(branch.range.minX,branch.range.maxY);ctx.lineTo(branch.range.minX,branch.range.minY);ctx.stroke()}}]);return BarnesHutSolver}();exports[\"default\"]=BarnesHutSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CentralGravitySolver=function(){function CentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,CentralGravitySolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(CentralGravitySolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx=void 0,dy=void 0,distance=void 0,node=void 0;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];node=nodes[nodeId];dx=-node.x;dy=-node.y;distance=Math.sqrt(dx*dx+dy*dy);this._calculateForces(distance,dx,dy,forces,node)}}},{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){var gravityForce=distance===0?0:this.options.centralGravity/distance;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}]);return CentralGravitySolver}();exports[\"default\"]=CentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var array=\"array\";var object=\"object\";var dom=\"dom\";var any=\"any\";var endPoints=[\"arrow\",\"circle\",\"bar\"];var allOptions={configure:{enabled:{boolean:bool},filter:{boolean:bool,string:string,array:array,function:\"function\"},container:{dom:dom},showButton:{boolean:bool},__type__:{object:object,boolean:bool,string:string,array:array,function:\"function\"}},edges:{arrows:{to:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},middle:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},from:{enabled:{boolean:bool},scaleFactor:{number:number},type:{string:endPoints},__type__:{object:object,boolean:bool}},__type__:{string:[\"from\",\"to\",\"middle\"],object:object}},arrowStrikethrough:{boolean:bool},chosen:{label:{boolean:bool,function:\"function\"},edge:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{color:{string:string},highlight:{string:string},hover:{string:string},inherit:{string:[\"from\",\"to\",\"both\"],boolean:bool},opacity:{number:number},__type__:{object:object,string:string}},dashes:{boolean:bool,array:array},font:{color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},align:{string:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},hidden:{boolean:bool},hoverWidth:{function:\"function\",number:number},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},length:{number:number,undefined:\"undefined\"},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},selectionWidth:{function:\"function\",number:number},selfReferenceSize:{number:number},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},smooth:{enabled:{boolean:bool},type:{string:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"]},roundness:{number:number},forceDirection:{string:[\"horizontal\",\"vertical\",\"none\"],boolean:bool},__type__:{object:object,boolean:bool}},title:{string:string,undefined:\"undefined\"},width:{number:number},widthConstraint:{maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},value:{number:number,undefined:\"undefined\"},__type__:{object:object}},groups:{useDefaultGroups:{boolean:bool},__any__:\"get from nodes, will be overwritten below\",__type__:{object:object}},interaction:{dragNodes:{boolean:bool},dragView:{boolean:bool},hideEdgesOnDrag:{boolean:bool},hideNodesOnDrag:{boolean:bool},hover:{boolean:bool},keyboard:{enabled:{boolean:bool},speed:{x:{number:number},y:{number:number},zoom:{number:number},__type__:{object:object}},bindToWindow:{boolean:bool},__type__:{object:object,boolean:bool}},multiselect:{boolean:bool},navigationButtons:{boolean:bool},selectable:{boolean:bool},selectConnectedEdges:{boolean:bool},hoverConnectedEdges:{boolean:bool},tooltipDelay:{number:number},zoomView:{boolean:bool},__type__:{object:object}},layout:{randomSeed:{undefined:\"undefined\",number:number},improvedLayout:{boolean:bool},hierarchical:{enabled:{boolean:bool},levelSeparation:{number:number},nodeSpacing:{number:number},treeSpacing:{number:number},blockShifting:{boolean:bool},edgeMinimization:{boolean:bool},parentCentralization:{boolean:bool},direction:{string:[\"UD\",\"DU\",\"LR\",\"RL\"]},sortMethod:{string:[\"hubsize\",\"directed\"]},__type__:{object:object,boolean:bool}},__type__:{object:object}},manipulation:{enabled:{boolean:bool},initiallyActive:{boolean:bool},addNode:{boolean:bool,function:\"function\"},addEdge:{boolean:bool,function:\"function\"},editNode:{function:\"function\"},editEdge:{editWithoutDrag:{function:\"function\"},__type__:{object:object,boolean:bool,function:\"function\"}},deleteNode:{boolean:bool,function:\"function\"},deleteEdge:{boolean:bool,function:\"function\"},controlNodeStyle:\"get from nodes, will be overwritten below\",__type__:{object:object,boolean:bool}},nodes:{borderWidth:{number:number},borderWidthSelected:{number:number,undefined:\"undefined\"},brokenImage:{string:string,undefined:\"undefined\"},chosen:{label:{boolean:bool,function:\"function\"},node:{boolean:bool,function:\"function\"},__type__:{object:object,boolean:bool}},color:{border:{string:string},background:{string:string},highlight:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},hover:{border:{string:string},background:{string:string},__type__:{object:object,string:string}},__type__:{object:object,string:string}},fixed:{x:{boolean:bool},y:{boolean:bool},__type__:{object:object,boolean:bool}},font:{align:{string:string},color:{string:string},size:{number:number},face:{string:string},background:{string:string},strokeWidth:{number:number},strokeColor:{string:string},vadjust:{number:number},multi:{boolean:bool,string:string},bold:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},boldital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},ital:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},mono:{color:{string:string},size:{number:number},face:{string:string},mod:{string:string},vadjust:{number:number},__type__:{object:object,string:string}},__type__:{object:object,string:string}},group:{string:string,number:number,undefined:\"undefined\"},heightConstraint:{minimum:{number:number},valign:{string:string},__type__:{object:object,boolean:bool,number:number}},hidden:{boolean:bool},icon:{face:{string:string},code:{string:string},size:{number:number},color:{string:string},__type__:{object:object}},id:{string:string,number:number},image:{selected:{string:string,undefined:\"undefined\"},unselected:{string:string,undefined:\"undefined\"},__type__:{object:object,string:string}},label:{string:string,undefined:\"undefined\"},labelHighlightBold:{boolean:bool},level:{number:number,undefined:\"undefined\"},margin:{top:{number:number},right:{number:number},bottom:{number:number},left:{number:number},__type__:{object:object,number:number}},mass:{number:number},physics:{boolean:bool},scaling:{min:{number:number},max:{number:number},label:{enabled:{boolean:bool},min:{number:number},max:{number:number},maxVisible:{number:number},drawThreshold:{number:number},__type__:{object:object,boolean:bool}},customScalingFunction:{function:\"function\"},__type__:{object:object}},shadow:{enabled:{boolean:bool},color:{string:string},size:{number:number},x:{number:number},y:{number:number},__type__:{object:object,boolean:bool}},shape:{string:[\"ellipse\",\"circle\",\"database\",\"box\",\"text\",\"image\",\"circularImage\",\"diamond\",\"dot\",\"star\",\"triangle\",\"triangleDown\",\"square\",\"icon\",\"hexagon\"]},shapeProperties:{borderDashes:{boolean:bool,array:array},borderRadius:{number:number},interpolation:{boolean:bool},useImageSize:{boolean:bool},useBorderWithImage:{boolean:bool},__type__:{object:object}},size:{number:number},title:{string:string,dom:dom,undefined:\"undefined\"},value:{number:number,undefined:\"undefined\"},widthConstraint:{minimum:{number:number},maximum:{number:number},__type__:{object:object,boolean:bool,number:number}},x:{number:number},y:{number:number},__type__:{object:object}},physics:{enabled:{boolean:bool},barnesHut:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},forceAtlas2Based:{gravitationalConstant:{number:number},centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},damping:{number:number},avoidOverlap:{number:number},__type__:{object:object}},repulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},hierarchicalRepulsion:{centralGravity:{number:number},springLength:{number:number},springConstant:{number:number},nodeDistance:{number:number},damping:{number:number},__type__:{object:object}},maxVelocity:{number:number},minVelocity:{number:number},solver:{string:[\"barnesHut\",\"repulsion\",\"hierarchicalRepulsion\",\"forceAtlas2Based\"]},stabilization:{enabled:{boolean:bool},iterations:{number:number},updateInterval:{number:number},onlyDynamicEdges:{boolean:bool},\nfit:{boolean:bool},__type__:{object:object,boolean:bool}},timestep:{number:number},adaptiveTimestep:{boolean:bool},__type__:{object:object,boolean:bool}},autoResize:{boolean:bool},clickToUse:{boolean:bool},locale:{string:string},locales:{__any__:{any:any},__type__:{object:object}},height:{string:string},width:{string:string},__type__:{object:object}};allOptions.groups.__any__=allOptions.nodes;allOptions.manipulation.controlNodeStyle=allOptions.nodes;var configureOptions={nodes:{borderWidth:[1,0,10,1],borderWidthSelected:[2,0,10,1],color:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#97C2FC\"],highlight:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]},hover:{border:[\"color\",\"#2B7CE9\"],background:[\"color\",\"#D2E5FF\"]}},fixed:{x:false,y:false},font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[0,0,50,1],strokeColor:[\"color\",\"#ffffff\"]},hidden:false,labelHighlightBold:true,physics:true,scaling:{min:[10,0,200,1],max:[30,0,200,1],label:{enabled:false,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},shape:[\"ellipse\",\"box\",\"circle\",\"database\",\"diamond\",\"dot\",\"square\",\"star\",\"text\",\"triangle\",\"triangleDown\",\"hexagon\"],shapeProperties:{borderDashes:false,borderRadius:[6,0,20,1],interpolation:true,useImageSize:false},size:[25,0,200,1]},edges:{arrows:{to:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},middle:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"},from:{enabled:false,scaleFactor:[1,0,3,.05],type:\"arrow\"}},arrowStrikethrough:true,color:{color:[\"color\",\"#848484\"],highlight:[\"color\",\"#848484\"],hover:[\"color\",\"#848484\"],inherit:[\"from\",\"to\",\"both\",true,false],opacity:[1,0,1,.05]},dashes:false,font:{color:[\"color\",\"#343434\"],size:[14,0,100,1],face:[\"arial\",\"verdana\",\"tahoma\"],background:[\"color\",\"none\"],strokeWidth:[2,0,50,1],strokeColor:[\"color\",\"#ffffff\"],align:[\"horizontal\",\"top\",\"middle\",\"bottom\"]},hidden:false,hoverWidth:[1.5,0,5,.1],labelHighlightBold:true,physics:true,scaling:{min:[1,0,100,1],max:[15,0,100,1],label:{enabled:true,min:[14,0,200,1],max:[30,0,200,1],maxVisible:[30,0,200,1],drawThreshold:[5,0,20,1]}},selectionWidth:[1.5,0,5,.1],selfReferenceSize:[20,0,200,1],shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:[10,0,20,1],x:[5,-30,30,1],y:[5,-30,30,1]},smooth:{enabled:true,type:[\"dynamic\",\"continuous\",\"discrete\",\"diagonalCross\",\"straightCross\",\"horizontal\",\"vertical\",\"curvedCW\",\"curvedCCW\",\"cubicBezier\"],forceDirection:[\"horizontal\",\"vertical\",\"none\"],roundness:[.5,0,1,.05]},width:[1,0,30,1]},layout:{hierarchical:{enabled:false,levelSeparation:[150,20,500,5],nodeSpacing:[100,20,500,5],treeSpacing:[200,20,500,5],blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:[\"UD\",\"DU\",\"LR\",\"RL\"],sortMethod:[\"hubsize\",\"directed\"]}},interaction:{dragNodes:true,dragView:true,hideEdgesOnDrag:false,hideNodesOnDrag:false,hover:false,keyboard:{enabled:false,speed:{x:[10,0,40,1],y:[10,0,40,1],zoom:[.02,0,.1,.005]},bindToWindow:true},multiselect:false,navigationButtons:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true,tooltipDelay:[300,0,1e3,25],zoomView:true},manipulation:{enabled:false,initiallyActive:false},physics:{enabled:true,barnesHut:{gravitationalConstant:[-2e3,-3e4,0,50],centralGravity:[.3,0,10,.05],springLength:[95,0,500,5],springConstant:[.04,0,1.2,.005],damping:[.09,0,1,.01],avoidOverlap:[0,0,1,.01]},forceAtlas2Based:{gravitationalConstant:[-50,-500,0,1],centralGravity:[.01,0,1,.005],springLength:[95,0,500,5],springConstant:[.08,0,1.2,.005],damping:[.4,0,1,.01],avoidOverlap:[0,0,1,.01]},repulsion:{centralGravity:[.2,0,10,.05],springLength:[200,0,500,5],springConstant:[.05,0,1.2,.005],nodeDistance:[100,0,500,5],damping:[.09,0,1,.01]},hierarchicalRepulsion:{centralGravity:[.2,0,10,.05],springLength:[100,0,500,5],springConstant:[.01,0,1.2,.005],nodeDistance:[120,0,500,5],damping:[.09,0,1,.01]},maxVelocity:[50,0,150,1],minVelocity:[.1,.01,.5,.01],solver:[\"barnesHut\",\"forceAtlas2Based\",\"repulsion\",\"hierarchicalRepulsion\"],timestep:[.5,.01,1,.01]}};exports.allOptions=allOptions;exports.configureOptions=configureOptions},function(module,exports,__webpack_require__){\"use strict\";var util=__webpack_require__(2);util.extend(exports,__webpack_require__(159));util.extend(exports,__webpack_require__(177));util.extend(exports,__webpack_require__(181))},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(136)},function(module,exports,__webpack_require__){\"use strict\";var addToUnscopables=__webpack_require__(126);var step=__webpack_require__(127);var Iterators=__webpack_require__(31);var toIObject=__webpack_require__(25);module.exports=__webpack_require__(79)(Array,\"Array\",function(iterated,kind){this._t=toIObject(iterated);this._i=0;this._k=kind},function(){var O=this._t;var kind=this._k;var index=this._i++;if(!O||index>=O.length){this._t=undefined;return step(1)}if(kind==\"keys\")return step(0,index);if(kind==\"values\")return step(0,O[index]);return step(0,[index,O[index]])},\"values\");Iterators.Arguments=Iterators.Array;addToUnscopables(\"keys\");addToUnscopables(\"values\");addToUnscopables(\"entries\")},function(module,exports){module.exports=function(){}},function(module,exports){module.exports=function(done,value){return{value:value,done:!!done}}},function(module,exports){module.exports=function(it){if(typeof it!=\"function\")throw TypeError(it+\" is not a function!\");return it}},function(module,exports,__webpack_require__){\"use strict\";var create=__webpack_require__(54);var descriptor=__webpack_require__(39);var setToStringTag=__webpack_require__(59);var IteratorPrototype={};__webpack_require__(26)(IteratorPrototype,__webpack_require__(13)(\"iterator\"),function(){return this});module.exports=function(Constructor,NAME,next){Constructor.prototype=create(IteratorPrototype,{next:descriptor(1,next)});setToStringTag(Constructor,NAME+\" Iterator\")}},function(module,exports,__webpack_require__){var dP=__webpack_require__(20);var anObject=__webpack_require__(27);var getKeys=__webpack_require__(33);module.exports=__webpack_require__(21)?Object.defineProperties:function defineProperties(O,Properties){anObject(O);var keys=getKeys(Properties);var length=keys.length;var i=0;var P;while(length>i)dP.f(O,P=keys[i++],Properties[P]);return O}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var toLength=__webpack_require__(132);var toAbsoluteIndex=__webpack_require__(133);module.exports=function(IS_INCLUDES){return function($this,el,fromIndex){var O=toIObject($this);var length=toLength(O.length);var index=toAbsoluteIndex(fromIndex,length);var value;if(IS_INCLUDES&&el!=el)while(length>index){value=O[index++];if(value!=value)return true}else for(;length>index;index++)if(IS_INCLUDES||index in O){if(O[index]===el)return IS_INCLUDES||index||0}return!IS_INCLUDES&&-1}}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var min=Math.min;module.exports=function(it){return it>0?min(toInteger(it),9007199254740991):0}},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var max=Math.max;var min=Math.min;module.exports=function(index,length){index=toInteger(index);return index<0?max(index+length,0):min(index,length)}},function(module,exports,__webpack_require__){var document=__webpack_require__(18).document;module.exports=document&&document.documentElement},function(module,exports,__webpack_require__){var toInteger=__webpack_require__(55);var defined=__webpack_require__(51);module.exports=function(TO_STRING){return function(that,pos){var s=String(defined(that));var i=toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l)return TO_STRING?\"\":undefined;a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}}},function(module,exports,__webpack_require__){var anObject=__webpack_require__(27);var get=__webpack_require__(137);module.exports=__webpack_require__(7).getIterator=function(it){var iterFn=get(it);if(typeof iterFn!=\"function\")throw TypeError(it+\" is not iterable!\");return anObject(iterFn.call(it))}},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).getIteratorMethod=function(it){if(it!=undefined)return it[ITERATOR]||it[\"@@iterator\"]||Iterators[classof(it)]}},function(module,exports,__webpack_require__){__webpack_require__(139);var $Object=__webpack_require__(7).Object;module.exports=function create(P,D){return $Object.create(P,D)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{create:__webpack_require__(54)})},function(module,exports,__webpack_require__){__webpack_require__(141);module.exports=__webpack_require__(7).Object.keys},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $keys=__webpack_require__(33);__webpack_require__(87)(\"keys\",function(){return function keys(it){return $keys(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(143),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(60);__webpack_require__(49);module.exports=__webpack_require__(61).f(\"iterator\")},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(145),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(146);__webpack_require__(151);__webpack_require__(152);__webpack_require__(153);module.exports=__webpack_require__(7).Symbol},function(module,exports,__webpack_require__){\"use strict\";var global=__webpack_require__(18);var has=__webpack_require__(22);var DESCRIPTORS=__webpack_require__(21);var $export=__webpack_require__(17);var redefine=__webpack_require__(83);var META=__webpack_require__(147).KEY;var $fails=__webpack_require__(28);var shared=__webpack_require__(57);var setToStringTag=__webpack_require__(59);var uid=__webpack_require__(40);var wks=__webpack_require__(13);var wksExt=__webpack_require__(61);var wksDefine=__webpack_require__(62);var enumKeys=__webpack_require__(148);var isArray=__webpack_require__(149);var anObject=__webpack_require__(27);var toIObject=__webpack_require__(25);var toPrimitive=__webpack_require__(53);var createDesc=__webpack_require__(39);var _create=__webpack_require__(54);var gOPNExt=__webpack_require__(150);var $GOPD=__webpack_require__(89);var $DP=__webpack_require__(20);var $keys=__webpack_require__(33);var gOPD=$GOPD.f;var dP=$DP.f;var gOPN=gOPNExt.f;var $Symbol=global.Symbol;var $JSON=global.JSON;var _stringify=$JSON&&$JSON.stringify;var PROTOTYPE=\"prototype\";var HIDDEN=wks(\"_hidden\");var TO_PRIMITIVE=wks(\"toPrimitive\");var isEnum={}.propertyIsEnumerable;var SymbolRegistry=shared(\"symbol-registry\");var AllSymbols=shared(\"symbols\");var OPSymbols=shared(\"op-symbols\");var ObjectProto=Object[PROTOTYPE];var USE_NATIVE=typeof $Symbol==\"function\";var QObject=global.QObject;var setter=!QObject||!QObject[PROTOTYPE]||!QObject[PROTOTYPE].findChild;var setSymbolDesc=DESCRIPTORS&&$fails(function(){return _create(dP({},\"a\",{get:function(){return dP(this,\"a\",{value:7}).a}})).a!=7})?function(it,key,D){var protoDesc=gOPD(ObjectProto,key);if(protoDesc)delete ObjectProto[key];dP(it,key,D);if(protoDesc&&it!==ObjectProto)dP(ObjectProto,key,protoDesc)}:dP;var wrap=function(tag){var sym=AllSymbols[tag]=_create($Symbol[PROTOTYPE]);sym._k=tag;return sym};var isSymbol=USE_NATIVE&&typeof $Symbol.iterator==\"symbol\"?function(it){return typeof it==\"symbol\"}:function(it){return it instanceof $Symbol};var $defineProperty=function defineProperty(it,key,D){if(it===ObjectProto)$defineProperty(OPSymbols,key,D);anObject(it);key=toPrimitive(key,true);anObject(D);if(has(AllSymbols,key)){if(!D.enumerable){if(!has(it,HIDDEN))dP(it,HIDDEN,createDesc(1,{}));it[HIDDEN][key]=true}else{if(has(it,HIDDEN)&&it[HIDDEN][key])it[HIDDEN][key]=false;D=_create(D,{enumerable:createDesc(0,false)})}return setSymbolDesc(it,key,D)}return dP(it,key,D)};var $defineProperties=function defineProperties(it,P){anObject(it);var keys=enumKeys(P=toIObject(P));var i=0;var l=keys.length;var key;while(l>i)$defineProperty(it,key=keys[i++],P[key]);return it};var $create=function create(it,P){return P===undefined?_create(it):$defineProperties(_create(it),P)};var $propertyIsEnumerable=function propertyIsEnumerable(key){var E=isEnum.call(this,key=toPrimitive(key,true));if(this===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return false;return E||!has(this,key)||!has(AllSymbols,key)||has(this,HIDDEN)&&this[HIDDEN][key]?E:true};var $getOwnPropertyDescriptor=function getOwnPropertyDescriptor(it,key){it=toIObject(it);key=toPrimitive(key,true);if(it===ObjectProto&&has(AllSymbols,key)&&!has(OPSymbols,key))return;var D=gOPD(it,key);if(D&&has(AllSymbols,key)&&!(has(it,HIDDEN)&&it[HIDDEN][key]))D.enumerable=true;return D};var $getOwnPropertyNames=function getOwnPropertyNames(it){var names=gOPN(toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(!has(AllSymbols,key=names[i++])&&key!=HIDDEN&&key!=META)result.push(key)}return result};var $getOwnPropertySymbols=function getOwnPropertySymbols(it){var IS_OP=it===ObjectProto;var names=gOPN(IS_OP?OPSymbols:toIObject(it));var result=[];var i=0;var key;while(names.length>i){if(has(AllSymbols,key=names[i++])&&(IS_OP?has(ObjectProto,key):true))result.push(AllSymbols[key])}return result};if(!USE_NATIVE){$Symbol=function Symbol(){if(this instanceof $Symbol)throw TypeError(\"Symbol is not a constructor!\");var tag=uid(arguments.length>0?arguments[0]:undefined);var $set=function(value){if(this===ObjectProto)$set.call(OPSymbols,value);if(has(this,HIDDEN)&&has(this[HIDDEN],tag))this[HIDDEN][tag]=false;setSymbolDesc(this,tag,createDesc(1,value))};if(DESCRIPTORS&&setter)setSymbolDesc(ObjectProto,tag,{configurable:true,set:$set});return wrap(tag)};redefine($Symbol[PROTOTYPE],\"toString\",function toString(){return this._k});$GOPD.f=$getOwnPropertyDescriptor;$DP.f=$defineProperty;__webpack_require__(88).f=gOPNExt.f=$getOwnPropertyNames;__webpack_require__(42).f=$propertyIsEnumerable;__webpack_require__(63).f=$getOwnPropertySymbols;if(DESCRIPTORS&&!__webpack_require__(52)){redefine(ObjectProto,\"propertyIsEnumerable\",$propertyIsEnumerable,true)}wksExt.f=function(name){return wrap(wks(name))}}$export($export.G+$export.W+$export.F*!USE_NATIVE,{Symbol:$Symbol});for(var es6Symbols=\"hasInstance,isConcatSpreadable,iterator,match,replace,search,species,split,toPrimitive,toStringTag,unscopables\".split(\",\"),j=0;es6Symbols.length>j;)wks(es6Symbols[j++]);for(var wellKnownSymbols=$keys(wks.store),k=0;wellKnownSymbols.length>k;)wksDefine(wellKnownSymbols[k++]);$export($export.S+$export.F*!USE_NATIVE,\"Symbol\",{for:function(key){return has(SymbolRegistry,key+=\"\")?SymbolRegistry[key]:SymbolRegistry[key]=$Symbol(key)},keyFor:function keyFor(sym){if(!isSymbol(sym))throw TypeError(sym+\" is not a symbol!\");for(var key in SymbolRegistry)if(SymbolRegistry[key]===sym)return key},useSetter:function(){setter=true},useSimple:function(){setter=false}});$export($export.S+$export.F*!USE_NATIVE,\"Object\",{create:$create,defineProperty:$defineProperty,defineProperties:$defineProperties,getOwnPropertyDescriptor:$getOwnPropertyDescriptor,getOwnPropertyNames:$getOwnPropertyNames,getOwnPropertySymbols:$getOwnPropertySymbols});$JSON&&$export($export.S+$export.F*(!USE_NATIVE||$fails(function(){var S=$Symbol();return _stringify([S])!=\"[null]\"||_stringify({a:S})!=\"{}\"||_stringify(Object(S))!=\"{}\"})),\"JSON\",{stringify:function stringify(it){if(it===undefined||isSymbol(it))return;var args=[it];var i=1;var replacer,$replacer;while(arguments.length>i)args.push(arguments[i++]);replacer=args[1];if(typeof replacer==\"function\")$replacer=replacer;if($replacer||!isArray(replacer))replacer=function(key,value){if($replacer)value=$replacer.call(this,key,value);if(!isSymbol(value))return value};args[1]=replacer;return _stringify.apply($JSON,args)}});$Symbol[PROTOTYPE][TO_PRIMITIVE]||__webpack_require__(26)($Symbol[PROTOTYPE],TO_PRIMITIVE,$Symbol[PROTOTYPE].valueOf);setToStringTag($Symbol,\"Symbol\");setToStringTag(Math,\"Math\",true);setToStringTag(global.JSON,\"JSON\",true)},function(module,exports,__webpack_require__){var META=__webpack_require__(40)(\"meta\");var isObject=__webpack_require__(32);var has=__webpack_require__(22);var setDesc=__webpack_require__(20).f;var id=0;var isExtensible=Object.isExtensible||function(){return true};var FREEZE=!__webpack_require__(28)(function(){return isExtensible(Object.preventExtensions({}))});var setMeta=function(it){setDesc(it,META,{value:{i:\"O\"+ ++id,w:{}}})};var fastKey=function(it,create){if(!isObject(it))return typeof it==\"symbol\"?it:(typeof it==\"string\"?\"S\":\"P\")+it;if(!has(it,META)){if(!isExtensible(it))return\"F\";if(!create)return\"E\";setMeta(it)}return it[META].i};var getWeak=function(it,create){if(!has(it,META)){if(!isExtensible(it))return true;if(!create)return false;setMeta(it)}return it[META].w};var onFreeze=function(it){if(FREEZE&&meta.NEED&&isExtensible(it)&&!has(it,META))setMeta(it);return it};var meta=module.exports={KEY:META,NEED:false,fastKey:fastKey,getWeak:getWeak,onFreeze:onFreeze}},function(module,exports,__webpack_require__){var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);module.exports=function(it){var result=getKeys(it);var getSymbols=gOPS.f;if(getSymbols){var symbols=getSymbols(it);var isEnum=pIE.f;var i=0;var key;while(symbols.length>i)if(isEnum.call(it,key=symbols[i++]))result.push(key)}return result}},function(module,exports,__webpack_require__){var cof=__webpack_require__(50);module.exports=Array.isArray||function isArray(arg){return cof(arg)==\"Array\"}},function(module,exports,__webpack_require__){var toIObject=__webpack_require__(25);var gOPN=__webpack_require__(88).f;var toString={}.toString;var windowNames=typeof window==\"object\"&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];var getWindowNames=function(it){try{return gOPN(it)}catch(e){return windowNames.slice()}};module.exports.f=function getOwnPropertyNames(it){return windowNames&&toString.call(it)==\"[object Window]\"?getWindowNames(it):gOPN(toIObject(it))}},function(module,exports){},function(module,exports,__webpack_require__){__webpack_require__(62)(\"asyncIterator\")},function(module,exports,__webpack_require__){__webpack_require__(62)(\"observable\")},function(module,exports,__webpack_require__){(function(module){var require;(function(global,factory){true?module.exports=factory():typeof define===\"function\"&&define.amd?define(factory):global.moment=factory()})(this,function(){\"use strict\";var hookCallback;function hooks(){return hookCallback.apply(null,arguments)}function setHookCallback(callback){hookCallback=callback}function isArray(input){return input instanceof Array||Object.prototype.toString.call(input)===\"[object Array]\"}function isObject(input){return input!=null&&Object.prototype.toString.call(input)===\"[object Object]\"}function isObjectEmpty(obj){if(Object.getOwnPropertyNames){return Object.getOwnPropertyNames(obj).length===0}else{var k;for(k in obj){if(obj.hasOwnProperty(k)){return false}}return true}}function isUndefined(input){return input===void 0}function isNumber(input){return typeof input===\"number\"||Object.prototype.toString.call(input)===\"[object Number]\"}function isDate(input){return input instanceof Date||Object.prototype.toString.call(input)===\"[object Date]\"}function map(arr,fn){var res=[],i;for(i=0;i<arr.length;++i){res.push(fn(arr[i],i))}return res}function hasOwnProp(a,b){return Object.prototype.hasOwnProperty.call(a,b)}function extend(a,b){for(var i in b){if(hasOwnProp(b,i)){a[i]=b[i]}}if(hasOwnProp(b,\"toString\")){a.toString=b.toString}if(hasOwnProp(b,\"valueOf\")){a.valueOf=b.valueOf}return a}function createUTC(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,true).utc()}function defaultParsingFlags(){return{empty:false,unusedTokens:[],unusedInput:[],overflow:-2,charsLeftOver:0,nullInput:false,invalidMonth:null,invalidFormat:false,userInvalidated:false,iso:false,parsedDateParts:[],meridiem:null,rfc2822:false,weekdayMismatch:false}}function getParsingFlags(m){if(m._pf==null){m._pf=defaultParsingFlags()}return m._pf}var some;if(Array.prototype.some){some=Array.prototype.some}else{some=function(fun){var t=Object(this);var len=t.length>>>0;for(var i=0;i<len;i++){if(i in t&&fun.call(this,t[i],i,t)){return true}}return false}}function isValid(m){if(m._isValid==null){var flags=getParsingFlags(m);var parsedParts=some.call(flags.parsedDateParts,function(i){return i!=null});var isNowValid=!isNaN(m._d.getTime())&&flags.overflow<0&&!flags.empty&&!flags.invalidMonth&&!flags.invalidWeekday&&!flags.weekdayMismatch&&!flags.nullInput&&!flags.invalidFormat&&!flags.userInvalidated&&(!flags.meridiem||flags.meridiem&&parsedParts);if(m._strict){isNowValid=isNowValid&&flags.charsLeftOver===0&&flags.unusedTokens.length===0&&flags.bigHour===undefined}if(Object.isFrozen==null||!Object.isFrozen(m)){m._isValid=isNowValid}else{return isNowValid}}return m._isValid}function createInvalid(flags){var m=createUTC(NaN);if(flags!=null){extend(getParsingFlags(m),flags)}else{getParsingFlags(m).userInvalidated=true}return m}var momentProperties=hooks.momentProperties=[];function copyConfig(to,from){var i,prop,val;if(!isUndefined(from._isAMomentObject)){to._isAMomentObject=from._isAMomentObject}if(!isUndefined(from._i)){to._i=from._i}if(!isUndefined(from._f)){to._f=from._f}if(!isUndefined(from._l)){to._l=from._l}if(!isUndefined(from._strict)){to._strict=from._strict}if(!isUndefined(from._tzm)){to._tzm=from._tzm}if(!isUndefined(from._isUTC)){to._isUTC=from._isUTC}if(!isUndefined(from._offset)){to._offset=from._offset}if(!isUndefined(from._pf)){to._pf=getParsingFlags(from)}if(!isUndefined(from._locale)){to._locale=from._locale}if(momentProperties.length>0){for(i=0;i<momentProperties.length;i++){prop=momentProperties[i];val=from[prop];if(!isUndefined(val)){to[prop]=val}}}return to}var updateInProgress=false;function Moment(config){copyConfig(this,config);this._d=new Date(config._d!=null?config._d.getTime():NaN);if(!this.isValid()){this._d=new Date(NaN)}if(updateInProgress===false){updateInProgress=true;hooks.updateOffset(this);updateInProgress=false}}function isMoment(obj){return obj instanceof Moment||obj!=null&&obj._isAMomentObject!=null}function absFloor(number){if(number<0){return Math.ceil(number)||0}else{return Math.floor(number)}}function toInt(argumentForCoercion){var coercedNumber=+argumentForCoercion,value=0;if(coercedNumber!==0&&isFinite(coercedNumber)){value=absFloor(coercedNumber)}return value}function compareArrays(array1,array2,dontConvert){var len=Math.min(array1.length,array2.length),lengthDiff=Math.abs(array1.length-array2.length),diffs=0,i;for(i=0;i<len;i++){if(dontConvert&&array1[i]!==array2[i]||!dontConvert&&toInt(array1[i])!==toInt(array2[i])){diffs++}}return diffs+lengthDiff}function warn(msg){if(hooks.suppressDeprecationWarnings===false&&typeof console!==\"undefined\"&&console.warn){console.warn(\"Deprecation warning: \"+msg)}}function deprecate(msg,fn){var firstTime=true;return extend(function(){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(null,msg)}if(firstTime){var args=[];var arg;for(var i=0;i<arguments.length;i++){arg=\"\";if(typeof arguments[i]===\"object\"){arg+=\"\\n[\"+i+\"] \";for(var key in arguments[0]){arg+=key+\": \"+arguments[0][key]+\", \"}arg=arg.slice(0,-2)}else{arg=arguments[i]}args.push(arg)}warn(msg+\"\\nArguments: \"+Array.prototype.slice.call(args).join(\"\")+\"\\n\"+(new Error).stack);firstTime=false}return fn.apply(this,arguments)},fn)}var deprecations={};function deprecateSimple(name,msg){if(hooks.deprecationHandler!=null){hooks.deprecationHandler(name,msg)}if(!deprecations[name]){warn(msg);deprecations[name]=true}}hooks.suppressDeprecationWarnings=false;hooks.deprecationHandler=null;function isFunction(input){return input instanceof Function||Object.prototype.toString.call(input)===\"[object Function]\"}function set(config){var prop,i;for(i in config){prop=config[i];if(isFunction(prop)){this[i]=prop}else{this[\"_\"+i]=prop}}this._config=config;this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+\"|\"+/\\d{1,2}/.source)}function mergeConfigs(parentConfig,childConfig){var res=extend({},parentConfig),prop;for(prop in childConfig){if(hasOwnProp(childConfig,prop)){if(isObject(parentConfig[prop])&&isObject(childConfig[prop])){res[prop]={};extend(res[prop],parentConfig[prop]);extend(res[prop],childConfig[prop])}else if(childConfig[prop]!=null){res[prop]=childConfig[prop]}else{delete res[prop]}}}for(prop in parentConfig){if(hasOwnProp(parentConfig,prop)&&!hasOwnProp(childConfig,prop)&&isObject(parentConfig[prop])){res[prop]=extend({},res[prop])}}return res}function Locale(config){if(config!=null){this.set(config)}}var keys;if(Object.keys){keys=Object.keys}else{keys=function(obj){var i,res=[];for(i in obj){if(hasOwnProp(obj,i)){res.push(i)}}return res}}var defaultCalendar={sameDay:\"[Today at] LT\",nextDay:\"[Tomorrow at] LT\",nextWeek:\"dddd [at] LT\",lastDay:\"[Yesterday at] LT\",lastWeek:\"[Last] dddd [at] LT\",sameElse:\"L\"};function calendar(key,mom,now){var output=this._calendar[key]||this._calendar[\"sameElse\"];return isFunction(output)?output.call(mom,now):output}var defaultLongDateFormat={LTS:\"h:mm:ss A\",LT:\"h:mm A\",L:\"MM/DD/YYYY\",LL:\"MMMM D, YYYY\",LLL:\"MMMM D, YYYY h:mm A\",LLLL:\"dddd, MMMM D, YYYY h:mm A\"};function longDateFormat(key){var format=this._longDateFormat[key],formatUpper=this._longDateFormat[key.toUpperCase()];if(format||!formatUpper){return format}this._longDateFormat[key]=formatUpper.replace(/MMMM|MM|DD|dddd/g,function(val){return val.slice(1)});return this._longDateFormat[key]}var defaultInvalidDate=\"Invalid date\";function invalidDate(){return this._invalidDate}var defaultOrdinal=\"%d\";var defaultDayOfMonthOrdinalParse=/\\d{1,2}/;function ordinal(number){return this._ordinal.replace(\"%d\",number)}var defaultRelativeTime={future:\"in %s\",past:\"%s ago\",s:\"a few seconds\",ss:\"%d seconds\",m:\"a minute\",mm:\"%d minutes\",h:\"an hour\",hh:\"%d hours\",d:\"a day\",dd:\"%d days\",M:\"a month\",MM:\"%d months\",y:\"a year\",yy:\"%d years\"};function relativeTime(number,withoutSuffix,string,isFuture){var output=this._relativeTime[string];return isFunction(output)?output(number,withoutSuffix,string,isFuture):output.replace(/%d/i,number)}function pastFuture(diff,output){var format=this._relativeTime[diff>0?\"future\":\"past\"];return isFunction(format)?format(output):format.replace(/%s/i,output)}var aliases={};function addUnitAlias(unit,shorthand){var lowerCase=unit.toLowerCase();aliases[lowerCase]=aliases[lowerCase+\"s\"]=aliases[shorthand]=unit}function normalizeUnits(units){return typeof units===\"string\"?aliases[units]||aliases[units.toLowerCase()]:undefined}function normalizeObjectUnits(inputObject){var normalizedInput={},normalizedProp,prop;for(prop in inputObject){if(hasOwnProp(inputObject,prop)){normalizedProp=normalizeUnits(prop);if(normalizedProp){normalizedInput[normalizedProp]=inputObject[prop]}}}return normalizedInput}var priorities={};function addUnitPriority(unit,priority){priorities[unit]=priority}function getPrioritizedUnits(unitsObj){var units=[];for(var u in unitsObj){units.push({unit:u,priority:priorities[u]})}units.sort(function(a,b){return a.priority-b.priority});return units}function zeroFill(number,targetLength,forceSign){var absNumber=\"\"+Math.abs(number),zerosToFill=targetLength-absNumber.length,sign=number>=0;return(sign?forceSign?\"+\":\"\":\"-\")+Math.pow(10,Math.max(0,zerosToFill)).toString().substr(1)+absNumber}var formattingTokens=/(\\[[^\\[]*\\])|(\\\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;var localFormattingTokens=/(\\[[^\\[]*\\])|(\\\\)?(LTS|LT|LL?L?L?|l{1,4})/g;var formatFunctions={};var formatTokenFunctions={};function addFormatToken(token,padded,ordinal,callback){var func=callback;if(typeof callback===\"string\"){func=function(){return this[callback]()}}if(token){formatTokenFunctions[token]=func}if(padded){formatTokenFunctions[padded[0]]=function(){return zeroFill(func.apply(this,arguments),padded[1],padded[2])}}if(ordinal){formatTokenFunctions[ordinal]=function(){return this.localeData().ordinal(func.apply(this,arguments),token)}}}function removeFormattingTokens(input){if(input.match(/\\[[\\s\\S]/)){return input.replace(/^\\[|\\]$/g,\"\")}return input.replace(/\\\\/g,\"\")}function makeFormatFunction(format){var array=format.match(formattingTokens),i,length;for(i=0,length=array.length;i<length;i++){if(formatTokenFunctions[array[i]]){array[i]=formatTokenFunctions[array[i]]}else{array[i]=removeFormattingTokens(array[i])}}return function(mom){var output=\"\",i;for(i=0;i<length;i++){output+=isFunction(array[i])?array[i].call(mom,format):array[i]}return output}}function formatMoment(m,format){if(!m.isValid()){return m.localeData().invalidDate()}format=expandFormat(format,m.localeData());formatFunctions[format]=formatFunctions[format]||makeFormatFunction(format);return formatFunctions[format](m)}function expandFormat(format,locale){var i=5;function replaceLongDateFormatTokens(input){return locale.longDateFormat(input)||input}localFormattingTokens.lastIndex=0;while(i>=0&&localFormattingTokens.test(format)){format=format.replace(localFormattingTokens,replaceLongDateFormatTokens);localFormattingTokens.lastIndex=0;i-=1}return format}var match1=/\\d/;var match2=/\\d\\d/;var match3=/\\d{3}/;var match4=/\\d{4}/;var match6=/[+-]?\\d{6}/;var match1to2=/\\d\\d?/;var match3to4=/\\d\\d\\d\\d?/;var match5to6=/\\d\\d\\d\\d\\d\\d?/;var match1to3=/\\d{1,3}/;var match1to4=/\\d{1,4}/;var match1to6=/[+-]?\\d{1,6}/;var matchUnsigned=/\\d+/;var matchSigned=/[+-]?\\d+/;var matchOffset=/Z|[+-]\\d\\d:?\\d\\d/gi;var matchShortOffset=/Z|[+-]\\d\\d(?::?\\d\\d)?/gi;var matchTimestamp=/[+-]?\\d+(\\.\\d{1,3})?/;var matchWord=/[0-9]*['a-z\\u00A0-\\u05FF\\u0700-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+|[\\u0600-\\u06FF\\/]+(\\s*?[\\u0600-\\u06FF]+){1,2}/i;var regexes={};function addRegexToken(token,regex,strictRegex){regexes[token]=isFunction(regex)?regex:function(isStrict,localeData){return isStrict&&strictRegex?strictRegex:regex}}function getParseRegexForToken(token,config){if(!hasOwnProp(regexes,token)){return new RegExp(unescapeFormat(token))}return regexes[token](config._strict,config._locale)}function unescapeFormat(s){return regexEscape(s.replace(\"\\\\\",\"\").replace(/\\\\(\\[)|\\\\(\\])|\\[([^\\]\\[]*)\\]|\\\\(.)/g,function(matched,p1,p2,p3,p4){return p1||p2||p3||p4}))}function regexEscape(s){return s.replace(/[-\\/\\\\^$*+?.()|[\\]{}]/g,\"\\\\$&\")}var tokens={};function addParseToken(token,callback){var i,func=callback;if(typeof token===\"string\"){token=[token]}if(isNumber(callback)){func=function(input,array){array[callback]=toInt(input)}}for(i=0;i<token.length;i++){tokens[token[i]]=func}}function addWeekParseToken(token,callback){addParseToken(token,function(input,array,config,token){config._w=config._w||{};callback(input,config._w,config,token)})}function addTimeToArrayFromToken(token,input,config){if(input!=null&&hasOwnProp(tokens,token)){tokens[token](input,config._a,config,token)}}var YEAR=0;var MONTH=1;var DATE=2;var HOUR=3;var MINUTE=4;var SECOND=5;var MILLISECOND=6;var WEEK=7;var WEEKDAY=8;addFormatToken(\"Y\",0,0,function(){var y=this.year();return y<=9999?\"\"+y:\"+\"+y});addFormatToken(0,[\"YY\",2],0,function(){return this.year()%100});addFormatToken(0,[\"YYYY\",4],0,\"year\");addFormatToken(0,[\"YYYYY\",5],0,\"year\");addFormatToken(0,[\"YYYYYY\",6,true],0,\"year\");addUnitAlias(\"year\",\"y\");addUnitPriority(\"year\",1);addRegexToken(\"Y\",matchSigned)\n;addRegexToken(\"YY\",match1to2,match2);addRegexToken(\"YYYY\",match1to4,match4);addRegexToken(\"YYYYY\",match1to6,match6);addRegexToken(\"YYYYYY\",match1to6,match6);addParseToken([\"YYYYY\",\"YYYYYY\"],YEAR);addParseToken(\"YYYY\",function(input,array){array[YEAR]=input.length===2?hooks.parseTwoDigitYear(input):toInt(input)});addParseToken(\"YY\",function(input,array){array[YEAR]=hooks.parseTwoDigitYear(input)});addParseToken(\"Y\",function(input,array){array[YEAR]=parseInt(input,10)});function daysInYear(year){return isLeapYear(year)?366:365}function isLeapYear(year){return year%4===0&&year%100!==0||year%400===0}hooks.parseTwoDigitYear=function(input){return toInt(input)+(toInt(input)>68?1900:2e3)};var getSetYear=makeGetSet(\"FullYear\",true);function getIsLeapYear(){return isLeapYear(this.year())}function makeGetSet(unit,keepTime){return function(value){if(value!=null){set$1(this,unit,value);hooks.updateOffset(this,keepTime);return this}else{return get(this,unit)}}}function get(mom,unit){return mom.isValid()?mom._d[\"get\"+(mom._isUTC?\"UTC\":\"\")+unit]():NaN}function set$1(mom,unit,value){if(mom.isValid()&&!isNaN(value)){if(unit===\"FullYear\"&&isLeapYear(mom.year())){mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value,mom.month(),daysInMonth(value,mom.month()))}else{mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+unit](value)}}}function stringGet(units){units=normalizeUnits(units);if(isFunction(this[units])){return this[units]()}return this}function stringSet(units,value){if(typeof units===\"object\"){units=normalizeObjectUnits(units);var prioritized=getPrioritizedUnits(units);for(var i=0;i<prioritized.length;i++){this[prioritized[i].unit](units[prioritized[i].unit])}}else{units=normalizeUnits(units);if(isFunction(this[units])){return this[units](value)}}return this}function mod(n,x){return(n%x+x)%x}var indexOf;if(Array.prototype.indexOf){indexOf=Array.prototype.indexOf}else{indexOf=function(o){var i;for(i=0;i<this.length;++i){if(this[i]===o){return i}}return-1}}function daysInMonth(year,month){if(isNaN(year)||isNaN(month)){return NaN}var modMonth=mod(month,12);year+=(month-modMonth)/12;return modMonth===1?isLeapYear(year)?29:28:31-modMonth%7%2}addFormatToken(\"M\",[\"MM\",2],\"Mo\",function(){return this.month()+1});addFormatToken(\"MMM\",0,0,function(format){return this.localeData().monthsShort(this,format)});addFormatToken(\"MMMM\",0,0,function(format){return this.localeData().months(this,format)});addUnitAlias(\"month\",\"M\");addUnitPriority(\"month\",8);addRegexToken(\"M\",match1to2);addRegexToken(\"MM\",match1to2,match2);addRegexToken(\"MMM\",function(isStrict,locale){return locale.monthsShortRegex(isStrict)});addRegexToken(\"MMMM\",function(isStrict,locale){return locale.monthsRegex(isStrict)});addParseToken([\"M\",\"MM\"],function(input,array){array[MONTH]=toInt(input)-1});addParseToken([\"MMM\",\"MMMM\"],function(input,array,config,token){var month=config._locale.monthsParse(input,token,config._strict);if(month!=null){array[MONTH]=month}else{getParsingFlags(config).invalidMonth=input}});var MONTHS_IN_FORMAT=/D[oD]?(\\[[^\\[\\]]*\\]|\\s)+MMMM?/;var defaultLocaleMonths=\"January_February_March_April_May_June_July_August_September_October_November_December\".split(\"_\");function localeMonths(m,format){if(!m){return isArray(this._months)?this._months:this._months[\"standalone\"]}return isArray(this._months)?this._months[m.month()]:this._months[(this._months.isFormat||MONTHS_IN_FORMAT).test(format)?\"format\":\"standalone\"][m.month()]}var defaultLocaleMonthsShort=\"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec\".split(\"_\");function localeMonthsShort(m,format){if(!m){return isArray(this._monthsShort)?this._monthsShort:this._monthsShort[\"standalone\"]}return isArray(this._monthsShort)?this._monthsShort[m.month()]:this._monthsShort[MONTHS_IN_FORMAT.test(format)?\"format\":\"standalone\"][m.month()]}function handleStrictParse(monthName,format,strict){var i,ii,mom,llc=monthName.toLocaleLowerCase();if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[];for(i=0;i<12;++i){mom=createUTC([2e3,i]);this._shortMonthsParse[i]=this.monthsShort(mom,\"\").toLocaleLowerCase();this._longMonthsParse[i]=this.months(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}}else{if(format===\"MMM\"){ii=indexOf.call(this._shortMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._longMonthsParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._longMonthsParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortMonthsParse,llc);return ii!==-1?ii:null}}}function localeMonthsParse(monthName,format,strict){var i,mom,regex;if(this._monthsParseExact){return handleStrictParse.call(this,monthName,format,strict)}if(!this._monthsParse){this._monthsParse=[];this._longMonthsParse=[];this._shortMonthsParse=[]}for(i=0;i<12;i++){mom=createUTC([2e3,i]);if(strict&&!this._longMonthsParse[i]){this._longMonthsParse[i]=new RegExp(\"^\"+this.months(mom,\"\").replace(\".\",\"\")+\"$\",\"i\");this._shortMonthsParse[i]=new RegExp(\"^\"+this.monthsShort(mom,\"\").replace(\".\",\"\")+\"$\",\"i\")}if(!strict&&!this._monthsParse[i]){regex=\"^\"+this.months(mom,\"\")+\"|^\"+this.monthsShort(mom,\"\");this._monthsParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"MMMM\"&&this._longMonthsParse[i].test(monthName)){return i}else if(strict&&format===\"MMM\"&&this._shortMonthsParse[i].test(monthName)){return i}else if(!strict&&this._monthsParse[i].test(monthName)){return i}}}function setMonth(mom,value){var dayOfMonth;if(!mom.isValid()){return mom}if(typeof value===\"string\"){if(/^\\d+$/.test(value)){value=toInt(value)}else{value=mom.localeData().monthsParse(value);if(!isNumber(value)){return mom}}}dayOfMonth=Math.min(mom.date(),daysInMonth(mom.year(),value));mom._d[\"set\"+(mom._isUTC?\"UTC\":\"\")+\"Month\"](value,dayOfMonth);return mom}function getSetMonth(value){if(value!=null){setMonth(this,value);hooks.updateOffset(this,true);return this}else{return get(this,\"Month\")}}function getDaysInMonth(){return daysInMonth(this.year(),this.month())}var defaultMonthsShortRegex=matchWord;function monthsShortRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsShortStrictRegex}else{return this._monthsShortRegex}}else{if(!hasOwnProp(this,\"_monthsShortRegex\")){this._monthsShortRegex=defaultMonthsShortRegex}return this._monthsShortStrictRegex&&isStrict?this._monthsShortStrictRegex:this._monthsShortRegex}}var defaultMonthsRegex=matchWord;function monthsRegex(isStrict){if(this._monthsParseExact){if(!hasOwnProp(this,\"_monthsRegex\")){computeMonthsParse.call(this)}if(isStrict){return this._monthsStrictRegex}else{return this._monthsRegex}}else{if(!hasOwnProp(this,\"_monthsRegex\")){this._monthsRegex=defaultMonthsRegex}return this._monthsStrictRegex&&isStrict?this._monthsStrictRegex:this._monthsRegex}}function computeMonthsParse(){function cmpLenRev(a,b){return b.length-a.length}var shortPieces=[],longPieces=[],mixedPieces=[],i,mom;for(i=0;i<12;i++){mom=createUTC([2e3,i]);shortPieces.push(this.monthsShort(mom,\"\"));longPieces.push(this.months(mom,\"\"));mixedPieces.push(this.months(mom,\"\"));mixedPieces.push(this.monthsShort(mom,\"\"))}shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<12;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i])}for(i=0;i<24;i++){mixedPieces[i]=regexEscape(mixedPieces[i])}this._monthsRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._monthsShortRegex=this._monthsRegex;this._monthsStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._monthsShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\")}function createDate(y,m,d,h,M,s,ms){var date=new Date(y,m,d,h,M,s,ms);if(y<100&&y>=0&&isFinite(date.getFullYear())){date.setFullYear(y)}return date}function createUTCDate(y){var date=new Date(Date.UTC.apply(null,arguments));if(y<100&&y>=0&&isFinite(date.getUTCFullYear())){date.setUTCFullYear(y)}return date}function firstWeekOffset(year,dow,doy){var fwd=7+dow-doy,fwdlw=(7+createUTCDate(year,0,fwd).getUTCDay()-dow)%7;return-fwdlw+fwd-1}function dayOfYearFromWeeks(year,week,weekday,dow,doy){var localWeekday=(7+weekday-dow)%7,weekOffset=firstWeekOffset(year,dow,doy),dayOfYear=1+7*(week-1)+localWeekday+weekOffset,resYear,resDayOfYear;if(dayOfYear<=0){resYear=year-1;resDayOfYear=daysInYear(resYear)+dayOfYear}else if(dayOfYear>daysInYear(year)){resYear=year+1;resDayOfYear=dayOfYear-daysInYear(year)}else{resYear=year;resDayOfYear=dayOfYear}return{year:resYear,dayOfYear:resDayOfYear}}function weekOfYear(mom,dow,doy){var weekOffset=firstWeekOffset(mom.year(),dow,doy),week=Math.floor((mom.dayOfYear()-weekOffset-1)/7)+1,resWeek,resYear;if(week<1){resYear=mom.year()-1;resWeek=week+weeksInYear(resYear,dow,doy)}else if(week>weeksInYear(mom.year(),dow,doy)){resWeek=week-weeksInYear(mom.year(),dow,doy);resYear=mom.year()+1}else{resYear=mom.year();resWeek=week}return{week:resWeek,year:resYear}}function weeksInYear(year,dow,doy){var weekOffset=firstWeekOffset(year,dow,doy),weekOffsetNext=firstWeekOffset(year+1,dow,doy);return(daysInYear(year)-weekOffset+weekOffsetNext)/7}addFormatToken(\"w\",[\"ww\",2],\"wo\",\"week\");addFormatToken(\"W\",[\"WW\",2],\"Wo\",\"isoWeek\");addUnitAlias(\"week\",\"w\");addUnitAlias(\"isoWeek\",\"W\");addUnitPriority(\"week\",5);addUnitPriority(\"isoWeek\",5);addRegexToken(\"w\",match1to2);addRegexToken(\"ww\",match1to2,match2);addRegexToken(\"W\",match1to2);addRegexToken(\"WW\",match1to2,match2);addWeekParseToken([\"w\",\"ww\",\"W\",\"WW\"],function(input,week,config,token){week[token.substr(0,1)]=toInt(input)});function localeWeek(mom){return weekOfYear(mom,this._week.dow,this._week.doy).week}var defaultLocaleWeek={dow:0,doy:6};function localeFirstDayOfWeek(){return this._week.dow}function localeFirstDayOfYear(){return this._week.doy}function getSetWeek(input){var week=this.localeData().week(this);return input==null?week:this.add((input-week)*7,\"d\")}function getSetISOWeek(input){var week=weekOfYear(this,1,4).week;return input==null?week:this.add((input-week)*7,\"d\")}addFormatToken(\"d\",0,\"do\",\"day\");addFormatToken(\"dd\",0,0,function(format){return this.localeData().weekdaysMin(this,format)});addFormatToken(\"ddd\",0,0,function(format){return this.localeData().weekdaysShort(this,format)});addFormatToken(\"dddd\",0,0,function(format){return this.localeData().weekdays(this,format)});addFormatToken(\"e\",0,0,\"weekday\");addFormatToken(\"E\",0,0,\"isoWeekday\");addUnitAlias(\"day\",\"d\");addUnitAlias(\"weekday\",\"e\");addUnitAlias(\"isoWeekday\",\"E\");addUnitPriority(\"day\",11);addUnitPriority(\"weekday\",11);addUnitPriority(\"isoWeekday\",11);addRegexToken(\"d\",match1to2);addRegexToken(\"e\",match1to2);addRegexToken(\"E\",match1to2);addRegexToken(\"dd\",function(isStrict,locale){return locale.weekdaysMinRegex(isStrict)});addRegexToken(\"ddd\",function(isStrict,locale){return locale.weekdaysShortRegex(isStrict)});addRegexToken(\"dddd\",function(isStrict,locale){return locale.weekdaysRegex(isStrict)});addWeekParseToken([\"dd\",\"ddd\",\"dddd\"],function(input,week,config,token){var weekday=config._locale.weekdaysParse(input,token,config._strict);if(weekday!=null){week.d=weekday}else{getParsingFlags(config).invalidWeekday=input}});addWeekParseToken([\"d\",\"e\",\"E\"],function(input,week,config,token){week[token]=toInt(input)});function parseWeekday(input,locale){if(typeof input!==\"string\"){return input}if(!isNaN(input)){return parseInt(input,10)}input=locale.weekdaysParse(input);if(typeof input===\"number\"){return input}return null}function parseIsoWeekday(input,locale){if(typeof input===\"string\"){return locale.weekdaysParse(input)%7||7}return isNaN(input)?null:input}var defaultLocaleWeekdays=\"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday\".split(\"_\");function localeWeekdays(m,format){if(!m){return isArray(this._weekdays)?this._weekdays:this._weekdays[\"standalone\"]}return isArray(this._weekdays)?this._weekdays[m.day()]:this._weekdays[this._weekdays.isFormat.test(format)?\"format\":\"standalone\"][m.day()]}var defaultLocaleWeekdaysShort=\"Sun_Mon_Tue_Wed_Thu_Fri_Sat\".split(\"_\");function localeWeekdaysShort(m){return m?this._weekdaysShort[m.day()]:this._weekdaysShort}var defaultLocaleWeekdaysMin=\"Su_Mo_Tu_We_Th_Fr_Sa\".split(\"_\");function localeWeekdaysMin(m){return m?this._weekdaysMin[m.day()]:this._weekdaysMin}function handleStrictParse$1(weekdayName,format,strict){var i,ii,mom,llc=weekdayName.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[];this._shortWeekdaysParse=[];this._minWeekdaysParse=[];for(i=0;i<7;++i){mom=createUTC([2e3,1]).day(i);this._minWeekdaysParse[i]=this.weekdaysMin(mom,\"\").toLocaleLowerCase();this._shortWeekdaysParse[i]=this.weekdaysShort(mom,\"\").toLocaleLowerCase();this._weekdaysParse[i]=this.weekdays(mom,\"\").toLocaleLowerCase()}}if(strict){if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}}else{if(format===\"dddd\"){ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else if(format===\"ddd\"){ii=indexOf.call(this._shortWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._minWeekdaysParse,llc);return ii!==-1?ii:null}else{ii=indexOf.call(this._minWeekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._weekdaysParse,llc);if(ii!==-1){return ii}ii=indexOf.call(this._shortWeekdaysParse,llc);return ii!==-1?ii:null}}}function localeWeekdaysParse(weekdayName,format,strict){var i,mom,regex;if(this._weekdaysParseExact){return handleStrictParse$1.call(this,weekdayName,format,strict)}if(!this._weekdaysParse){this._weekdaysParse=[];this._minWeekdaysParse=[];this._shortWeekdaysParse=[];this._fullWeekdaysParse=[]}for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);if(strict&&!this._fullWeekdaysParse[i]){this._fullWeekdaysParse[i]=new RegExp(\"^\"+this.weekdays(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._shortWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysShort(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\");this._minWeekdaysParse[i]=new RegExp(\"^\"+this.weekdaysMin(mom,\"\").replace(\".\",\".?\")+\"$\",\"i\")}if(!this._weekdaysParse[i]){regex=\"^\"+this.weekdays(mom,\"\")+\"|^\"+this.weekdaysShort(mom,\"\")+\"|^\"+this.weekdaysMin(mom,\"\");this._weekdaysParse[i]=new RegExp(regex.replace(\".\",\"\"),\"i\")}if(strict&&format===\"dddd\"&&this._fullWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"ddd\"&&this._shortWeekdaysParse[i].test(weekdayName)){return i}else if(strict&&format===\"dd\"&&this._minWeekdaysParse[i].test(weekdayName)){return i}else if(!strict&&this._weekdaysParse[i].test(weekdayName)){return i}}}function getSetDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var day=this._isUTC?this._d.getUTCDay():this._d.getDay();if(input!=null){input=parseWeekday(input,this.localeData());return this.add(input-day,\"d\")}else{return day}}function getSetLocaleDayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}var weekday=(this.day()+7-this.localeData()._week.dow)%7;return input==null?weekday:this.add(input-weekday,\"d\")}function getSetISODayOfWeek(input){if(!this.isValid()){return input!=null?this:NaN}if(input!=null){var weekday=parseIsoWeekday(input,this.localeData());return this.day(this.day()%7?weekday:weekday-7)}else{return this.day()||7}}var defaultWeekdaysRegex=matchWord;function weekdaysRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysStrictRegex}else{return this._weekdaysRegex}}else{if(!hasOwnProp(this,\"_weekdaysRegex\")){this._weekdaysRegex=defaultWeekdaysRegex}return this._weekdaysStrictRegex&&isStrict?this._weekdaysStrictRegex:this._weekdaysRegex}}var defaultWeekdaysShortRegex=matchWord;function weekdaysShortRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysShortStrictRegex}else{return this._weekdaysShortRegex}}else{if(!hasOwnProp(this,\"_weekdaysShortRegex\")){this._weekdaysShortRegex=defaultWeekdaysShortRegex}return this._weekdaysShortStrictRegex&&isStrict?this._weekdaysShortStrictRegex:this._weekdaysShortRegex}}var defaultWeekdaysMinRegex=matchWord;function weekdaysMinRegex(isStrict){if(this._weekdaysParseExact){if(!hasOwnProp(this,\"_weekdaysRegex\")){computeWeekdaysParse.call(this)}if(isStrict){return this._weekdaysMinStrictRegex}else{return this._weekdaysMinRegex}}else{if(!hasOwnProp(this,\"_weekdaysMinRegex\")){this._weekdaysMinRegex=defaultWeekdaysMinRegex}return this._weekdaysMinStrictRegex&&isStrict?this._weekdaysMinStrictRegex:this._weekdaysMinRegex}}function computeWeekdaysParse(){function cmpLenRev(a,b){return b.length-a.length}var minPieces=[],shortPieces=[],longPieces=[],mixedPieces=[],i,mom,minp,shortp,longp;for(i=0;i<7;i++){mom=createUTC([2e3,1]).day(i);minp=this.weekdaysMin(mom,\"\");shortp=this.weekdaysShort(mom,\"\");longp=this.weekdays(mom,\"\");minPieces.push(minp);shortPieces.push(shortp);longPieces.push(longp);mixedPieces.push(minp);mixedPieces.push(shortp);mixedPieces.push(longp)}minPieces.sort(cmpLenRev);shortPieces.sort(cmpLenRev);longPieces.sort(cmpLenRev);mixedPieces.sort(cmpLenRev);for(i=0;i<7;i++){shortPieces[i]=regexEscape(shortPieces[i]);longPieces[i]=regexEscape(longPieces[i]);mixedPieces[i]=regexEscape(mixedPieces[i])}this._weekdaysRegex=new RegExp(\"^(\"+mixedPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortRegex=this._weekdaysRegex;this._weekdaysMinRegex=this._weekdaysRegex;this._weekdaysStrictRegex=new RegExp(\"^(\"+longPieces.join(\"|\")+\")\",\"i\");this._weekdaysShortStrictRegex=new RegExp(\"^(\"+shortPieces.join(\"|\")+\")\",\"i\");this._weekdaysMinStrictRegex=new RegExp(\"^(\"+minPieces.join(\"|\")+\")\",\"i\")}function hFormat(){return this.hours()%12||12}function kFormat(){return this.hours()||24}addFormatToken(\"H\",[\"HH\",2],0,\"hour\");addFormatToken(\"h\",[\"hh\",2],0,hFormat);addFormatToken(\"k\",[\"kk\",2],0,kFormat);addFormatToken(\"hmm\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)});addFormatToken(\"hmmss\",0,0,function(){return\"\"+hFormat.apply(this)+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});addFormatToken(\"Hmm\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)});addFormatToken(\"Hmmss\",0,0,function(){return\"\"+this.hours()+zeroFill(this.minutes(),2)+zeroFill(this.seconds(),2)});function meridiem(token,lowercase){addFormatToken(token,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),lowercase)})}meridiem(\"a\",true);meridiem(\"A\",false);addUnitAlias(\"hour\",\"h\");addUnitPriority(\"hour\",13);function matchMeridiem(isStrict,locale){return locale._meridiemParse}addRegexToken(\"a\",matchMeridiem);addRegexToken(\"A\",matchMeridiem);addRegexToken(\"H\",match1to2);addRegexToken(\"h\",match1to2);addRegexToken(\"k\",match1to2);addRegexToken(\"HH\",match1to2,match2);addRegexToken(\"hh\",match1to2,match2);addRegexToken(\"kk\",match1to2,match2);addRegexToken(\"hmm\",match3to4);addRegexToken(\"hmmss\",match5to6);addRegexToken(\"Hmm\",match3to4);addRegexToken(\"Hmmss\",match5to6);addParseToken([\"H\",\"HH\"],HOUR);addParseToken([\"k\",\"kk\"],function(input,array,config){var kInput=toInt(input);array[HOUR]=kInput===24?0:kInput});addParseToken([\"a\",\"A\"],function(input,array,config){config._isPm=config._locale.isPM(input);config._meridiem=input});addParseToken([\"h\",\"hh\"],function(input,array,config){array[HOUR]=toInt(input);getParsingFlags(config).bigHour=true});addParseToken(\"hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos));getParsingFlags(config).bigHour=true});addParseToken(\"hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2));getParsingFlags(config).bigHour=true});addParseToken(\"Hmm\",function(input,array,config){var pos=input.length-2;array[HOUR]=toInt(input.substr(0,pos));array[MINUTE]=toInt(input.substr(pos))});addParseToken(\"Hmmss\",function(input,array,config){var pos1=input.length-4;var pos2=input.length-2;array[HOUR]=toInt(input.substr(0,pos1));array[MINUTE]=toInt(input.substr(pos1,2));array[SECOND]=toInt(input.substr(pos2))});function localeIsPM(input){return(input+\"\").toLowerCase().charAt(0)===\"p\"}var defaultLocaleMeridiemParse=/[ap]\\.?m?\\.?/i;function localeMeridiem(hours,minutes,isLower){if(hours>11){return isLower?\"pm\":\"PM\"}else{return isLower?\"am\":\"AM\"}}var getSetHour=makeGetSet(\"Hours\",true);var baseConfig={calendar:defaultCalendar,longDateFormat:defaultLongDateFormat,invalidDate:defaultInvalidDate,ordinal:defaultOrdinal,dayOfMonthOrdinalParse:defaultDayOfMonthOrdinalParse,relativeTime:defaultRelativeTime,months:defaultLocaleMonths,monthsShort:defaultLocaleMonthsShort,week:defaultLocaleWeek,weekdays:defaultLocaleWeekdays,weekdaysMin:defaultLocaleWeekdaysMin,weekdaysShort:defaultLocaleWeekdaysShort,meridiemParse:defaultLocaleMeridiemParse};var locales={};var localeFamilies={};var globalLocale;function normalizeLocale(key){return key?key.toLowerCase().replace(\"_\",\"-\"):key}function chooseLocale(names){var i=0,j,next,locale,split;while(i<names.length){split=normalizeLocale(names[i]).split(\"-\");j=split.length;next=normalizeLocale(names[i+1]);next=next?next.split(\"-\"):null;while(j>0){locale=loadLocale(split.slice(0,j).join(\"-\"));if(locale){return locale}if(next&&next.length>=j&&compareArrays(split,next,true)>=j-1){break}j--}i++}return null}function loadLocale(name){var oldLocale=null;if(!locales[name]&&typeof module!==\"undefined\"&&module&&module.exports){try{oldLocale=globalLocale._abbr;var aliasedRequire=require;!function webpackMissingModule(){var e=new Error('Cannot find module \"./locale\"');e.code=\"MODULE_NOT_FOUND\";throw e}();getSetGlobalLocale(oldLocale)}catch(e){}}return locales[name]}function getSetGlobalLocale(key,values){var data;if(key){if(isUndefined(values)){data=getLocale(key)}else{data=defineLocale(key,values)}if(data){globalLocale=data}}return globalLocale._abbr}function defineLocale(name,config){if(config!==null){var parentConfig=baseConfig;config.abbr=name;if(locales[name]!=null){deprecateSimple(\"defineLocaleOverride\",\"use moment.updateLocale(localeName, config) to change \"+\"an existing locale. moment.defineLocale(localeName, \"+\"config) should only be used for creating a new locale \"+\"See http://momentjs.com/guides/#/warnings/define-locale/ for more info.\");parentConfig=locales[name]._config}else if(config.parentLocale!=null){if(locales[config.parentLocale]!=null){parentConfig=locales[config.parentLocale]._config}else{if(!localeFamilies[config.parentLocale]){localeFamilies[config.parentLocale]=[]}localeFamilies[config.parentLocale].push({name:name,config:config});return null}}locales[name]=new Locale(mergeConfigs(parentConfig,config));if(localeFamilies[name]){localeFamilies[name].forEach(function(x){defineLocale(x.name,x.config)})}getSetGlobalLocale(name);return locales[name]}else{delete locales[name];return null}}function updateLocale(name,config){if(config!=null){var locale,parentConfig=baseConfig;if(locales[name]!=null){parentConfig=locales[name]._config}config=mergeConfigs(parentConfig,config);locale=new Locale(config);locale.parentLocale=locales[name];locales[name]=locale;getSetGlobalLocale(name)}else{if(locales[name]!=null){if(locales[name].parentLocale!=null){locales[name]=locales[name].parentLocale}else if(locales[name]!=null){delete locales[name]}}}return locales[name]}function getLocale(key){var locale;if(key&&key._locale&&key._locale._abbr){key=key._locale._abbr}if(!key){return globalLocale}if(!isArray(key)){locale=loadLocale(key);if(locale){return locale}key=[key]}return chooseLocale(key)}function listLocales(){return keys(locales)}function checkOverflow(m){var overflow;var a=m._a;if(a&&getParsingFlags(m).overflow===-2){overflow=a[MONTH]<0||a[MONTH]>11?MONTH:a[DATE]<1||a[DATE]>daysInMonth(a[YEAR],a[MONTH])?DATE:a[HOUR]<0||a[HOUR]>24||a[HOUR]===24&&(a[MINUTE]!==0||a[SECOND]!==0||a[MILLISECOND]!==0)?HOUR:a[MINUTE]<0||a[MINUTE]>59?MINUTE:a[SECOND]<0||a[SECOND]>59?SECOND:a[MILLISECOND]<0||a[MILLISECOND]>999?MILLISECOND:-1;if(getParsingFlags(m)._overflowDayOfYear&&(overflow<YEAR||overflow>DATE)){overflow=DATE}if(getParsingFlags(m)._overflowWeeks&&overflow===-1){overflow=WEEK}if(getParsingFlags(m)._overflowWeekday&&overflow===-1){overflow=WEEKDAY}getParsingFlags(m).overflow=overflow}return m}function defaults(a,b,c){if(a!=null){return a}if(b!=null){return b}return c}function currentDateArray(config){var nowValue=new Date(hooks.now());if(config._useUTC){return[nowValue.getUTCFullYear(),nowValue.getUTCMonth(),nowValue.getUTCDate()]}return[nowValue.getFullYear(),nowValue.getMonth(),nowValue.getDate()]}function configFromArray(config){var i,date,input=[],currentDate,yearToUse;if(config._d){return}currentDate=currentDateArray(config);if(config._w&&config._a[DATE]==null&&config._a[MONTH]==null){dayOfYearFromWeekInfo(config)}if(config._dayOfYear!=null){yearToUse=defaults(config._a[YEAR],currentDate[YEAR]);if(config._dayOfYear>daysInYear(yearToUse)||config._dayOfYear===0){getParsingFlags(config)._overflowDayOfYear=true}date=createUTCDate(yearToUse,0,config._dayOfYear);config._a[MONTH]=date.getUTCMonth();config._a[DATE]=date.getUTCDate()}for(i=0;i<3&&config._a[i]==null;++i){config._a[i]=input[i]=currentDate[i]}for(;i<7;i++){config._a[i]=input[i]=config._a[i]==null?i===2?1:0:config._a[i]}if(config._a[HOUR]===24&&config._a[MINUTE]===0&&config._a[SECOND]===0&&config._a[MILLISECOND]===0){config._nextDay=true;config._a[HOUR]=0}config._d=(config._useUTC?createUTCDate:createDate).apply(null,input);if(config._tzm!=null){config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm)}if(config._nextDay){config._a[HOUR]=24}if(config._w&&typeof config._w.d!==\"undefined\"&&config._w.d!==config._d.getDay()){getParsingFlags(config).weekdayMismatch=true}}function dayOfYearFromWeekInfo(config){var w,weekYear,week,weekday,dow,doy,temp,weekdayOverflow;w=config._w;if(w.GG!=null||w.W!=null||w.E!=null){dow=1;doy=4;weekYear=defaults(w.GG,config._a[YEAR],weekOfYear(createLocal(),1,4).year);week=defaults(w.W,1);weekday=defaults(w.E,1);if(weekday<1||weekday>7){weekdayOverflow=true}}else{dow=config._locale._week.dow;doy=config._locale._week.doy;var curWeek=weekOfYear(createLocal(),dow,doy);weekYear=defaults(w.gg,config._a[YEAR],curWeek.year);week=defaults(w.w,curWeek.week);if(w.d!=null){weekday=w.d;if(weekday<0||weekday>6){weekdayOverflow=true}}else if(w.e!=null){weekday=w.e+dow;if(w.e<0||w.e>6){weekdayOverflow=true}}else{weekday=dow}}if(week<1||week>weeksInYear(weekYear,dow,doy)){getParsingFlags(config)._overflowWeeks=true}else if(weekdayOverflow!=null){getParsingFlags(config)._overflowWeekday=true}else{temp=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy);config._a[YEAR]=temp.year;config._dayOfYear=temp.dayOfYear}}var extendedIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})-(?:\\d\\d-\\d\\d|W\\d\\d-\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?::\\d\\d(?::\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var basicIsoRegex=/^\\s*((?:[+-]\\d{6}|\\d{4})(?:\\d\\d\\d\\d|W\\d\\d\\d|W\\d\\d|\\d\\d\\d|\\d\\d))(?:(T| )(\\d\\d(?:\\d\\d(?:\\d\\d(?:[.,]\\d+)?)?)?)([\\+\\-]\\d\\d(?::?\\d\\d)?|\\s*Z)?)?$/;var tzRegex=/Z|[+-]\\d\\d(?::?\\d\\d)?/;var isoDates=[[\"YYYYYY-MM-DD\",/[+-]\\d{6}-\\d\\d-\\d\\d/],[\"YYYY-MM-DD\",/\\d{4}-\\d\\d-\\d\\d/],[\"GGGG-[W]WW-E\",/\\d{4}-W\\d\\d-\\d/],[\"GGGG-[W]WW\",/\\d{4}-W\\d\\d/,false],[\"YYYY-DDD\",/\\d{4}-\\d{3}/],[\"YYYY-MM\",/\\d{4}-\\d\\d/,false],[\"YYYYYYMMDD\",/[+-]\\d{10}/],[\"YYYYMMDD\",/\\d{8}/],[\"GGGG[W]WWE\",/\\d{4}W\\d{3}/],[\"GGGG[W]WW\",/\\d{4}W\\d{2}/,false],[\"YYYYDDD\",/\\d{7}/]];var isoTimes=[[\"HH:mm:ss.SSSS\",/\\d\\d:\\d\\d:\\d\\d\\.\\d+/],[\"HH:mm:ss,SSSS\",/\\d\\d:\\d\\d:\\d\\d,\\d+/],[\"HH:mm:ss\",/\\d\\d:\\d\\d:\\d\\d/],[\"HH:mm\",/\\d\\d:\\d\\d/],[\"HHmmss.SSSS\",/\\d\\d\\d\\d\\d\\d\\.\\d+/],[\"HHmmss,SSSS\",/\\d\\d\\d\\d\\d\\d,\\d+/],[\"HHmmss\",/\\d\\d\\d\\d\\d\\d/],[\"HHmm\",/\\d\\d\\d\\d/],[\"HH\",/\\d\\d/]];var aspNetJsonRegex=/^\\/?Date\\((\\-?\\d+)/i;function configFromISO(config){var i,l,string=config._i,match=extendedIsoRegex.exec(string)||basicIsoRegex.exec(string),allowTime,dateFormat,timeFormat,tzFormat;if(match){getParsingFlags(config).iso=true;for(i=0,l=isoDates.length;i<l;i++){if(isoDates[i][1].exec(match[1])){dateFormat=isoDates[i][0];allowTime=isoDates[i][2]!==false;break}}if(dateFormat==null){config._isValid=false;return}if(match[3]){for(i=0,l=isoTimes.length;i<l;i++){if(isoTimes[i][1].exec(match[3])){timeFormat=(match[2]||\" \")+isoTimes[i][0];break}}if(timeFormat==null){config._isValid=false;return}}if(!allowTime&&timeFormat!=null){config._isValid=false;return}if(match[4]){if(tzRegex.exec(match[4])){tzFormat=\"Z\"}else{config._isValid=false;return}}config._f=dateFormat+(timeFormat||\"\")+(tzFormat||\"\");configFromStringAndFormat(config)}else{config._isValid=false}}var rfc2822=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\\s)?(\\d{1,2})\\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\\s(\\d{2,4})\\s(\\d\\d):(\\d\\d)(?::(\\d\\d))?\\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\\d{4}))$/;function extractFromRFC2822Strings(yearStr,monthStr,dayStr,hourStr,minuteStr,secondStr){var result=[untruncateYear(yearStr),defaultLocaleMonthsShort.indexOf(monthStr),parseInt(dayStr,10),parseInt(hourStr,10),parseInt(minuteStr,10)];if(secondStr){result.push(parseInt(secondStr,10))}return result}function untruncateYear(yearStr){var year=parseInt(yearStr,10);if(year<=49){return 2e3+year}else if(year<=999){return 1900+year}return year}function preprocessRFC2822(s){return s.replace(/\\([^)]*\\)|[\\n\\t]/g,\" \").replace(/(\\s\\s+)/g,\" \").trim()}function checkWeekday(weekdayStr,parsedInput,config){if(weekdayStr){var weekdayProvided=defaultLocaleWeekdaysShort.indexOf(weekdayStr),weekdayActual=new Date(parsedInput[0],parsedInput[1],parsedInput[2]).getDay();if(weekdayProvided!==weekdayActual){getParsingFlags(config).weekdayMismatch=true;config._isValid=false;return false}}return true}var obsOffsets={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function calculateOffset(obsOffset,militaryOffset,numOffset){if(obsOffset){return obsOffsets[obsOffset]}else if(militaryOffset){return 0}else{var hm=parseInt(numOffset,10);var m=hm%100,h=(hm-m)/100;return h*60+m}}function configFromRFC2822(config){var match=rfc2822.exec(preprocessRFC2822(config._i));if(match){var parsedArray=extractFromRFC2822Strings(match[4],match[3],match[2],match[5],match[6],match[7]);if(!checkWeekday(match[1],parsedArray,config)){return}config._a=parsedArray;config._tzm=calculateOffset(match[8],match[9],match[10]);config._d=createUTCDate.apply(null,config._a);config._d.setUTCMinutes(config._d.getUTCMinutes()-config._tzm);getParsingFlags(config).rfc2822=true}else{config._isValid=false}}function configFromString(config){var matched=aspNetJsonRegex.exec(config._i);if(matched!==null){config._d=new Date(+matched[1]);return}configFromISO(config);if(config._isValid===false){delete config._isValid}else{return}configFromRFC2822(config);if(config._isValid===false){delete config._isValid}else{return}hooks.createFromInputFallback(config)}hooks.createFromInputFallback=deprecate(\"value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), \"+\"which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are \"+\"discouraged and will be removed in an upcoming major release. Please refer to \"+\"http://momentjs.com/guides/#/warnings/js-date/ for more info.\",function(config){config._d=new Date(config._i+(config._useUTC?\" UTC\":\"\"))});hooks.ISO_8601=function(){};hooks.RFC_2822=function(){};function configFromStringAndFormat(config){if(config._f===hooks.ISO_8601){configFromISO(config);return}if(config._f===hooks.RFC_2822){configFromRFC2822(config);return}config._a=[];getParsingFlags(config).empty=true\n;var string=\"\"+config._i,i,parsedInput,tokens,token,skipped,stringLength=string.length,totalParsedInputLength=0;tokens=expandFormat(config._f,config._locale).match(formattingTokens)||[];for(i=0;i<tokens.length;i++){token=tokens[i];parsedInput=(string.match(getParseRegexForToken(token,config))||[])[0];if(parsedInput){skipped=string.substr(0,string.indexOf(parsedInput));if(skipped.length>0){getParsingFlags(config).unusedInput.push(skipped)}string=string.slice(string.indexOf(parsedInput)+parsedInput.length);totalParsedInputLength+=parsedInput.length}if(formatTokenFunctions[token]){if(parsedInput){getParsingFlags(config).empty=false}else{getParsingFlags(config).unusedTokens.push(token)}addTimeToArrayFromToken(token,parsedInput,config)}else if(config._strict&&!parsedInput){getParsingFlags(config).unusedTokens.push(token)}}getParsingFlags(config).charsLeftOver=stringLength-totalParsedInputLength;if(string.length>0){getParsingFlags(config).unusedInput.push(string)}if(config._a[HOUR]<=12&&getParsingFlags(config).bigHour===true&&config._a[HOUR]>0){getParsingFlags(config).bigHour=undefined}getParsingFlags(config).parsedDateParts=config._a.slice(0);getParsingFlags(config).meridiem=config._meridiem;config._a[HOUR]=meridiemFixWrap(config._locale,config._a[HOUR],config._meridiem);configFromArray(config);checkOverflow(config)}function meridiemFixWrap(locale,hour,meridiem){var isPm;if(meridiem==null){return hour}if(locale.meridiemHour!=null){return locale.meridiemHour(hour,meridiem)}else if(locale.isPM!=null){isPm=locale.isPM(meridiem);if(isPm&&hour<12){hour+=12}if(!isPm&&hour===12){hour=0}return hour}else{return hour}}function configFromStringAndArray(config){var tempConfig,bestMoment,scoreToBeat,i,currentScore;if(config._f.length===0){getParsingFlags(config).invalidFormat=true;config._d=new Date(NaN);return}for(i=0;i<config._f.length;i++){currentScore=0;tempConfig=copyConfig({},config);if(config._useUTC!=null){tempConfig._useUTC=config._useUTC}tempConfig._f=config._f[i];configFromStringAndFormat(tempConfig);if(!isValid(tempConfig)){continue}currentScore+=getParsingFlags(tempConfig).charsLeftOver;currentScore+=getParsingFlags(tempConfig).unusedTokens.length*10;getParsingFlags(tempConfig).score=currentScore;if(scoreToBeat==null||currentScore<scoreToBeat){scoreToBeat=currentScore;bestMoment=tempConfig}}extend(config,bestMoment||tempConfig)}function configFromObject(config){if(config._d){return}var i=normalizeObjectUnits(config._i);config._a=map([i.year,i.month,i.day||i.date,i.hour,i.minute,i.second,i.millisecond],function(obj){return obj&&parseInt(obj,10)});configFromArray(config)}function createFromConfig(config){var res=new Moment(checkOverflow(prepareConfig(config)));if(res._nextDay){res.add(1,\"d\");res._nextDay=undefined}return res}function prepareConfig(config){var input=config._i,format=config._f;config._locale=config._locale||getLocale(config._l);if(input===null||format===undefined&&input===\"\"){return createInvalid({nullInput:true})}if(typeof input===\"string\"){config._i=input=config._locale.preparse(input)}if(isMoment(input)){return new Moment(checkOverflow(input))}else if(isDate(input)){config._d=input}else if(isArray(format)){configFromStringAndArray(config)}else if(format){configFromStringAndFormat(config)}else{configFromInput(config)}if(!isValid(config)){config._d=null}return config}function configFromInput(config){var input=config._i;if(isUndefined(input)){config._d=new Date(hooks.now())}else if(isDate(input)){config._d=new Date(input.valueOf())}else if(typeof input===\"string\"){configFromString(config)}else if(isArray(input)){config._a=map(input.slice(0),function(obj){return parseInt(obj,10)});configFromArray(config)}else if(isObject(input)){configFromObject(config)}else if(isNumber(input)){config._d=new Date(input)}else{hooks.createFromInputFallback(config)}}function createLocalOrUTC(input,format,locale,strict,isUTC){var c={};if(locale===true||locale===false){strict=locale;locale=undefined}if(isObject(input)&&isObjectEmpty(input)||isArray(input)&&input.length===0){input=undefined}c._isAMomentObject=true;c._useUTC=c._isUTC=isUTC;c._l=locale;c._i=input;c._f=format;c._strict=strict;return createFromConfig(c)}function createLocal(input,format,locale,strict){return createLocalOrUTC(input,format,locale,strict,false)}var prototypeMin=deprecate(\"moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other<this?this:other}else{return createInvalid()}});var prototypeMax=deprecate(\"moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/\",function(){var other=createLocal.apply(null,arguments);if(this.isValid()&&other.isValid()){return other>this?this:other}else{return createInvalid()}});function pickBy(fn,moments){var res,i;if(moments.length===1&&isArray(moments[0])){moments=moments[0]}if(!moments.length){return createLocal()}res=moments[0];for(i=1;i<moments.length;++i){if(!moments[i].isValid()||moments[i][fn](res)){res=moments[i]}}return res}function min(){var args=[].slice.call(arguments,0);return pickBy(\"isBefore\",args)}function max(){var args=[].slice.call(arguments,0);return pickBy(\"isAfter\",args)}var now=function(){return Date.now?Date.now():+new Date};var ordering=[\"year\",\"quarter\",\"month\",\"week\",\"day\",\"hour\",\"minute\",\"second\",\"millisecond\"];function isDurationValid(m){for(var key in m){if(!(indexOf.call(ordering,key)!==-1&&(m[key]==null||!isNaN(m[key])))){return false}}var unitHasDecimal=false;for(var i=0;i<ordering.length;++i){if(m[ordering[i]]){if(unitHasDecimal){return false}if(parseFloat(m[ordering[i]])!==toInt(m[ordering[i]])){unitHasDecimal=true}}}return true}function isValid$1(){return this._isValid}function createInvalid$1(){return createDuration(NaN)}function Duration(duration){var normalizedInput=normalizeObjectUnits(duration),years=normalizedInput.year||0,quarters=normalizedInput.quarter||0,months=normalizedInput.month||0,weeks=normalizedInput.week||0,days=normalizedInput.day||0,hours=normalizedInput.hour||0,minutes=normalizedInput.minute||0,seconds=normalizedInput.second||0,milliseconds=normalizedInput.millisecond||0;this._isValid=isDurationValid(normalizedInput);this._milliseconds=+milliseconds+seconds*1e3+minutes*6e4+hours*1e3*60*60;this._days=+days+weeks*7;this._months=+months+quarters*3+years*12;this._data={};this._locale=getLocale();this._bubble()}function isDuration(obj){return obj instanceof Duration}function absRound(number){if(number<0){return Math.round(-1*number)*-1}else{return Math.round(number)}}function offset(token,separator){addFormatToken(token,0,0,function(){var offset=this.utcOffset();var sign=\"+\";if(offset<0){offset=-offset;sign=\"-\"}return sign+zeroFill(~~(offset/60),2)+separator+zeroFill(~~offset%60,2)})}offset(\"Z\",\":\");offset(\"ZZ\",\"\");addRegexToken(\"Z\",matchShortOffset);addRegexToken(\"ZZ\",matchShortOffset);addParseToken([\"Z\",\"ZZ\"],function(input,array,config){config._useUTC=true;config._tzm=offsetFromString(matchShortOffset,input)});var chunkOffset=/([\\+\\-]|\\d\\d)/gi;function offsetFromString(matcher,string){var matches=(string||\"\").match(matcher);if(matches===null){return null}var chunk=matches[matches.length-1]||[];var parts=(chunk+\"\").match(chunkOffset)||[\"-\",0,0];var minutes=+(parts[1]*60)+toInt(parts[2]);return minutes===0?0:parts[0]===\"+\"?minutes:-minutes}function cloneWithOffset(input,model){var res,diff;if(model._isUTC){res=model.clone();diff=(isMoment(input)||isDate(input)?input.valueOf():createLocal(input).valueOf())-res.valueOf();res._d.setTime(res._d.valueOf()+diff);hooks.updateOffset(res,false);return res}else{return createLocal(input).local()}}function getDateOffset(m){return-Math.round(m._d.getTimezoneOffset()/15)*15}hooks.updateOffset=function(){};function getSetOffset(input,keepLocalTime,keepMinutes){var offset=this._offset||0,localAdjust;if(!this.isValid()){return input!=null?this:NaN}if(input!=null){if(typeof input===\"string\"){input=offsetFromString(matchShortOffset,input);if(input===null){return this}}else if(Math.abs(input)<16&&!keepMinutes){input=input*60}if(!this._isUTC&&keepLocalTime){localAdjust=getDateOffset(this)}this._offset=input;this._isUTC=true;if(localAdjust!=null){this.add(localAdjust,\"m\")}if(offset!==input){if(!keepLocalTime||this._changeInProgress){addSubtract(this,createDuration(input-offset,\"m\"),1,false)}else if(!this._changeInProgress){this._changeInProgress=true;hooks.updateOffset(this,true);this._changeInProgress=null}}return this}else{return this._isUTC?offset:getDateOffset(this)}}function getSetZone(input,keepLocalTime){if(input!=null){if(typeof input!==\"string\"){input=-input}this.utcOffset(input,keepLocalTime);return this}else{return-this.utcOffset()}}function setOffsetToUTC(keepLocalTime){return this.utcOffset(0,keepLocalTime)}function setOffsetToLocal(keepLocalTime){if(this._isUTC){this.utcOffset(0,keepLocalTime);this._isUTC=false;if(keepLocalTime){this.subtract(getDateOffset(this),\"m\")}}return this}function setOffsetToParsedOffset(){if(this._tzm!=null){this.utcOffset(this._tzm,false,true)}else if(typeof this._i===\"string\"){var tZone=offsetFromString(matchOffset,this._i);if(tZone!=null){this.utcOffset(tZone)}else{this.utcOffset(0,true)}}return this}function hasAlignedHourOffset(input){if(!this.isValid()){return false}input=input?createLocal(input).utcOffset():0;return(this.utcOffset()-input)%60===0}function isDaylightSavingTime(){return this.utcOffset()>this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function isDaylightSavingTimeShifted(){if(!isUndefined(this._isDSTShifted)){return this._isDSTShifted}var c={};copyConfig(c,this);c=prepareConfig(c);if(c._a){var other=c._isUTC?createUTC(c._a):createLocal(c._a);this._isDSTShifted=this.isValid()&&compareArrays(c._a,other.toArray())>0}else{this._isDSTShifted=false}return this._isDSTShifted}function isLocal(){return this.isValid()?!this._isUTC:false}function isUtcOffset(){return this.isValid()?this._isUTC:false}function isUtc(){return this.isValid()?this._isUTC&&this._offset===0:false}var aspNetRegex=/^(\\-|\\+)?(?:(\\d*)[. ])?(\\d+)\\:(\\d+)(?:\\:(\\d+)(\\.\\d*)?)?$/;var isoRegex=/^(-|\\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function createDuration(input,key){var duration=input,match=null,sign,ret,diffRes;if(isDuration(input)){duration={ms:input._milliseconds,d:input._days,M:input._months}}else if(isNumber(input)){duration={};if(key){duration[key]=input}else{duration.milliseconds=input}}else if(!!(match=aspNetRegex.exec(input))){sign=match[1]===\"-\"?-1:1;duration={y:0,d:toInt(match[DATE])*sign,h:toInt(match[HOUR])*sign,m:toInt(match[MINUTE])*sign,s:toInt(match[SECOND])*sign,ms:toInt(absRound(match[MILLISECOND]*1e3))*sign}}else if(!!(match=isoRegex.exec(input))){sign=match[1]===\"-\"?-1:match[1]===\"+\"?1:1;duration={y:parseIso(match[2],sign),M:parseIso(match[3],sign),w:parseIso(match[4],sign),d:parseIso(match[5],sign),h:parseIso(match[6],sign),m:parseIso(match[7],sign),s:parseIso(match[8],sign)}}else if(duration==null){duration={}}else if(typeof duration===\"object\"&&(\"from\"in duration||\"to\"in duration)){diffRes=momentsDifference(createLocal(duration.from),createLocal(duration.to));duration={};duration.ms=diffRes.milliseconds;duration.M=diffRes.months}ret=new Duration(duration);if(isDuration(input)&&hasOwnProp(input,\"_locale\")){ret._locale=input._locale}return ret}createDuration.fn=Duration.prototype;createDuration.invalid=createInvalid$1;function parseIso(inp,sign){var res=inp&&parseFloat(inp.replace(\",\",\".\"));return(isNaN(res)?0:res)*sign}function positiveMomentsDifference(base,other){var res={milliseconds:0,months:0};res.months=other.month()-base.month()+(other.year()-base.year())*12;if(base.clone().add(res.months,\"M\").isAfter(other)){--res.months}res.milliseconds=+other-+base.clone().add(res.months,\"M\");return res}function momentsDifference(base,other){var res;if(!(base.isValid()&&other.isValid())){return{milliseconds:0,months:0}}other=cloneWithOffset(other,base);if(base.isBefore(other)){res=positiveMomentsDifference(base,other)}else{res=positiveMomentsDifference(other,base);res.milliseconds=-res.milliseconds;res.months=-res.months}return res}function createAdder(direction,name){return function(val,period){var dur,tmp;if(period!==null&&!isNaN(+period)){deprecateSimple(name,\"moment().\"+name+\"(period, number) is deprecated. Please use moment().\"+name+\"(number, period). \"+\"See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.\");tmp=val;val=period;period=tmp}val=typeof val===\"string\"?+val:val;dur=createDuration(val,period);addSubtract(this,dur,direction);return this}}function addSubtract(mom,duration,isAdding,updateOffset){var milliseconds=duration._milliseconds,days=absRound(duration._days),months=absRound(duration._months);if(!mom.isValid()){return}updateOffset=updateOffset==null?true:updateOffset;if(months){setMonth(mom,get(mom,\"Month\")+months*isAdding)}if(days){set$1(mom,\"Date\",get(mom,\"Date\")+days*isAdding)}if(milliseconds){mom._d.setTime(mom._d.valueOf()+milliseconds*isAdding)}if(updateOffset){hooks.updateOffset(mom,days||months)}}var add=createAdder(1,\"add\");var subtract=createAdder(-1,\"subtract\");function getCalendarFormat(myMoment,now){var diff=myMoment.diff(now,\"days\",true);return diff<-6?\"sameElse\":diff<-1?\"lastWeek\":diff<0?\"lastDay\":diff<1?\"sameDay\":diff<2?\"nextDay\":diff<7?\"nextWeek\":\"sameElse\"}function calendar$1(time,formats){var now=time||createLocal(),sod=cloneWithOffset(now,this).startOf(\"day\"),format=hooks.calendarFormat(this,sod)||\"sameElse\";var output=formats&&(isFunction(formats[format])?formats[format].call(this,now):formats[format]);return this.format(output||this.localeData().calendar(format,this,createLocal(now)))}function clone(){return new Moment(this)}function isAfter(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()>localInput.valueOf()}else{return localInput.valueOf()<this.clone().startOf(units).valueOf()}}function isBefore(input,units){var localInput=isMoment(input)?input:createLocal(input);if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(!isUndefined(units)?units:\"millisecond\");if(units===\"millisecond\"){return this.valueOf()<localInput.valueOf()}else{return this.clone().endOf(units).valueOf()<localInput.valueOf()}}function isBetween(from,to,units,inclusivity){inclusivity=inclusivity||\"()\";return(inclusivity[0]===\"(\"?this.isAfter(from,units):!this.isBefore(from,units))&&(inclusivity[1]===\")\"?this.isBefore(to,units):!this.isAfter(to,units))}function isSame(input,units){var localInput=isMoment(input)?input:createLocal(input),inputMs;if(!(this.isValid()&&localInput.isValid())){return false}units=normalizeUnits(units||\"millisecond\");if(units===\"millisecond\"){return this.valueOf()===localInput.valueOf()}else{inputMs=localInput.valueOf();return this.clone().startOf(units).valueOf()<=inputMs&&inputMs<=this.clone().endOf(units).valueOf()}}function isSameOrAfter(input,units){return this.isSame(input,units)||this.isAfter(input,units)}function isSameOrBefore(input,units){return this.isSame(input,units)||this.isBefore(input,units)}function diff(input,units,asFloat){var that,zoneDelta,delta,output;if(!this.isValid()){return NaN}that=cloneWithOffset(input,this);if(!that.isValid()){return NaN}zoneDelta=(that.utcOffset()-this.utcOffset())*6e4;units=normalizeUnits(units);switch(units){case\"year\":output=monthDiff(this,that)/12;break;case\"month\":output=monthDiff(this,that);break;case\"quarter\":output=monthDiff(this,that)/3;break;case\"second\":output=(this-that)/1e3;break;case\"minute\":output=(this-that)/6e4;break;case\"hour\":output=(this-that)/36e5;break;case\"day\":output=(this-that-zoneDelta)/864e5;break;case\"week\":output=(this-that-zoneDelta)/6048e5;break;default:output=this-that}return asFloat?output:absFloor(output)}function monthDiff(a,b){var wholeMonthDiff=(b.year()-a.year())*12+(b.month()-a.month()),anchor=a.clone().add(wholeMonthDiff,\"months\"),anchor2,adjust;if(b-anchor<0){anchor2=a.clone().add(wholeMonthDiff-1,\"months\");adjust=(b-anchor)/(anchor-anchor2)}else{anchor2=a.clone().add(wholeMonthDiff+1,\"months\");adjust=(b-anchor)/(anchor2-anchor)}return-(wholeMonthDiff+adjust)||0}hooks.defaultFormat=\"YYYY-MM-DDTHH:mm:ssZ\";hooks.defaultFormatUtc=\"YYYY-MM-DDTHH:mm:ss[Z]\";function toString(){return this.clone().locale(\"en\").format(\"ddd MMM DD YYYY HH:mm:ss [GMT]ZZ\")}function toISOString(){if(!this.isValid()){return null}var m=this.clone().utc();if(m.year()<0||m.year()>9999){return formatMoment(m,\"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}if(isFunction(Date.prototype.toISOString)){return this.toDate().toISOString()}return formatMoment(m,\"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]\")}function inspect(){if(!this.isValid()){return\"moment.invalid(/* \"+this._i+\" */)\"}var func=\"moment\";var zone=\"\";if(!this.isLocal()){func=this.utcOffset()===0?\"moment.utc\":\"moment.parseZone\";zone=\"Z\"}var prefix=\"[\"+func+'(\"]';var year=0<=this.year()&&this.year()<=9999?\"YYYY\":\"YYYYYY\";var datetime=\"-MM-DD[T]HH:mm:ss.SSS\";var suffix=zone+'[\")]';return this.format(prefix+year+datetime+suffix)}function format(inputString){if(!inputString){inputString=this.isUtc()?hooks.defaultFormatUtc:hooks.defaultFormat}var output=formatMoment(this,inputString);return this.localeData().postformat(output)}function from(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({to:this,from:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function fromNow(withoutSuffix){return this.from(createLocal(),withoutSuffix)}function to(time,withoutSuffix){if(this.isValid()&&(isMoment(time)&&time.isValid()||createLocal(time).isValid())){return createDuration({from:this,to:time}).locale(this.locale()).humanize(!withoutSuffix)}else{return this.localeData().invalidDate()}}function toNow(withoutSuffix){return this.to(createLocal(),withoutSuffix)}function locale(key){var newLocaleData;if(key===undefined){return this._locale._abbr}else{newLocaleData=getLocale(key);if(newLocaleData!=null){this._locale=newLocaleData}return this}}var lang=deprecate(\"moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.\",function(key){if(key===undefined){return this.localeData()}else{return this.locale(key)}});function localeData(){return this._locale}function startOf(units){units=normalizeUnits(units);switch(units){case\"year\":this.month(0);case\"quarter\":case\"month\":this.date(1);case\"week\":case\"isoWeek\":case\"day\":case\"date\":this.hours(0);case\"hour\":this.minutes(0);case\"minute\":this.seconds(0);case\"second\":this.milliseconds(0)}if(units===\"week\"){this.weekday(0)}if(units===\"isoWeek\"){this.isoWeekday(1)}if(units===\"quarter\"){this.month(Math.floor(this.month()/3)*3)}return this}function endOf(units){units=normalizeUnits(units);if(units===undefined||units===\"millisecond\"){return this}if(units===\"date\"){units=\"day\"}return this.startOf(units).add(1,units===\"isoWeek\"?\"week\":units).subtract(1,\"ms\")}function valueOf(){return this._d.valueOf()-(this._offset||0)*6e4}function unix(){return Math.floor(this.valueOf()/1e3)}function toDate(){return new Date(this.valueOf())}function toArray(){var m=this;return[m.year(),m.month(),m.date(),m.hour(),m.minute(),m.second(),m.millisecond()]}function toObject(){var m=this;return{years:m.year(),months:m.month(),date:m.date(),hours:m.hours(),minutes:m.minutes(),seconds:m.seconds(),milliseconds:m.milliseconds()}}function toJSON(){return this.isValid()?this.toISOString():null}function isValid$2(){return isValid(this)}function parsingFlags(){return extend({},getParsingFlags(this))}function invalidAt(){return getParsingFlags(this).overflow}function creationData(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}addFormatToken(0,[\"gg\",2],0,function(){return this.weekYear()%100});addFormatToken(0,[\"GG\",2],0,function(){return this.isoWeekYear()%100});function addWeekYearFormatToken(token,getter){addFormatToken(0,[token,token.length],0,getter)}addWeekYearFormatToken(\"gggg\",\"weekYear\");addWeekYearFormatToken(\"ggggg\",\"weekYear\");addWeekYearFormatToken(\"GGGG\",\"isoWeekYear\");addWeekYearFormatToken(\"GGGGG\",\"isoWeekYear\");addUnitAlias(\"weekYear\",\"gg\");addUnitAlias(\"isoWeekYear\",\"GG\");addUnitPriority(\"weekYear\",1);addUnitPriority(\"isoWeekYear\",1);addRegexToken(\"G\",matchSigned);addRegexToken(\"g\",matchSigned);addRegexToken(\"GG\",match1to2,match2);addRegexToken(\"gg\",match1to2,match2);addRegexToken(\"GGGG\",match1to4,match4);addRegexToken(\"gggg\",match1to4,match4);addRegexToken(\"GGGGG\",match1to6,match6);addRegexToken(\"ggggg\",match1to6,match6);addWeekParseToken([\"gggg\",\"ggggg\",\"GGGG\",\"GGGGG\"],function(input,week,config,token){week[token.substr(0,2)]=toInt(input)});addWeekParseToken([\"gg\",\"GG\"],function(input,week,config,token){week[token]=hooks.parseTwoDigitYear(input)});function getSetWeekYear(input){return getSetWeekYearHelper.call(this,input,this.week(),this.weekday(),this.localeData()._week.dow,this.localeData()._week.doy)}function getSetISOWeekYear(input){return getSetWeekYearHelper.call(this,input,this.isoWeek(),this.isoWeekday(),1,4)}function getISOWeeksInYear(){return weeksInYear(this.year(),1,4)}function getWeeksInYear(){var weekInfo=this.localeData()._week;return weeksInYear(this.year(),weekInfo.dow,weekInfo.doy)}function getSetWeekYearHelper(input,week,weekday,dow,doy){var weeksTarget;if(input==null){return weekOfYear(this,dow,doy).year}else{weeksTarget=weeksInYear(input,dow,doy);if(week>weeksTarget){week=weeksTarget}return setWeekAll.call(this,input,week,weekday,dow,doy)}}function setWeekAll(weekYear,week,weekday,dow,doy){var dayOfYearData=dayOfYearFromWeeks(weekYear,week,weekday,dow,doy),date=createUTCDate(dayOfYearData.year,0,dayOfYearData.dayOfYear);this.year(date.getUTCFullYear());this.month(date.getUTCMonth());this.date(date.getUTCDate());return this}addFormatToken(\"Q\",0,\"Qo\",\"quarter\");addUnitAlias(\"quarter\",\"Q\");addUnitPriority(\"quarter\",7);addRegexToken(\"Q\",match1);addParseToken(\"Q\",function(input,array){array[MONTH]=(toInt(input)-1)*3});function getSetQuarter(input){return input==null?Math.ceil((this.month()+1)/3):this.month((input-1)*3+this.month()%3)}addFormatToken(\"D\",[\"DD\",2],\"Do\",\"date\");addUnitAlias(\"date\",\"D\");addUnitPriority(\"date\",9);addRegexToken(\"D\",match1to2);addRegexToken(\"DD\",match1to2,match2);addRegexToken(\"Do\",function(isStrict,locale){return isStrict?locale._dayOfMonthOrdinalParse||locale._ordinalParse:locale._dayOfMonthOrdinalParseLenient});addParseToken([\"D\",\"DD\"],DATE);addParseToken(\"Do\",function(input,array){array[DATE]=toInt(input.match(match1to2)[0],10)});var getSetDayOfMonth=makeGetSet(\"Date\",true);addFormatToken(\"DDD\",[\"DDDD\",3],\"DDDo\",\"dayOfYear\");addUnitAlias(\"dayOfYear\",\"DDD\");addUnitPriority(\"dayOfYear\",4);addRegexToken(\"DDD\",match1to3);addRegexToken(\"DDDD\",match3);addParseToken([\"DDD\",\"DDDD\"],function(input,array,config){config._dayOfYear=toInt(input)});function getSetDayOfYear(input){var dayOfYear=Math.round((this.clone().startOf(\"day\")-this.clone().startOf(\"year\"))/864e5)+1;return input==null?dayOfYear:this.add(input-dayOfYear,\"d\")}addFormatToken(\"m\",[\"mm\",2],0,\"minute\");addUnitAlias(\"minute\",\"m\");addUnitPriority(\"minute\",14);addRegexToken(\"m\",match1to2);addRegexToken(\"mm\",match1to2,match2);addParseToken([\"m\",\"mm\"],MINUTE);var getSetMinute=makeGetSet(\"Minutes\",false);addFormatToken(\"s\",[\"ss\",2],0,\"second\");addUnitAlias(\"second\",\"s\");addUnitPriority(\"second\",15);addRegexToken(\"s\",match1to2);addRegexToken(\"ss\",match1to2,match2);addParseToken([\"s\",\"ss\"],SECOND);var getSetSecond=makeGetSet(\"Seconds\",false);addFormatToken(\"S\",0,0,function(){return~~(this.millisecond()/100)});addFormatToken(0,[\"SS\",2],0,function(){return~~(this.millisecond()/10)});addFormatToken(0,[\"SSS\",3],0,\"millisecond\");addFormatToken(0,[\"SSSS\",4],0,function(){return this.millisecond()*10});addFormatToken(0,[\"SSSSS\",5],0,function(){return this.millisecond()*100});addFormatToken(0,[\"SSSSSS\",6],0,function(){return this.millisecond()*1e3});addFormatToken(0,[\"SSSSSSS\",7],0,function(){return this.millisecond()*1e4});addFormatToken(0,[\"SSSSSSSS\",8],0,function(){return this.millisecond()*1e5});addFormatToken(0,[\"SSSSSSSSS\",9],0,function(){return this.millisecond()*1e6});addUnitAlias(\"millisecond\",\"ms\");addUnitPriority(\"millisecond\",16);addRegexToken(\"S\",match1to3,match1);addRegexToken(\"SS\",match1to3,match2);addRegexToken(\"SSS\",match1to3,match3);var token;for(token=\"SSSS\";token.length<=9;token+=\"S\"){addRegexToken(token,matchUnsigned)}function parseMs(input,array){array[MILLISECOND]=toInt((\"0.\"+input)*1e3)}for(token=\"S\";token.length<=9;token+=\"S\"){addParseToken(token,parseMs)}var getSetMillisecond=makeGetSet(\"Milliseconds\",false);addFormatToken(\"z\",0,0,\"zoneAbbr\");addFormatToken(\"zz\",0,0,\"zoneName\");function getZoneAbbr(){return this._isUTC?\"UTC\":\"\"}function getZoneName(){return this._isUTC?\"Coordinated Universal Time\":\"\"}var proto=Moment.prototype;proto.add=add;proto.calendar=calendar$1;proto.clone=clone;proto.diff=diff;proto.endOf=endOf;proto.format=format;proto.from=from;proto.fromNow=fromNow;proto.to=to;proto.toNow=toNow;proto.get=stringGet;proto.invalidAt=invalidAt;proto.isAfter=isAfter;proto.isBefore=isBefore;proto.isBetween=isBetween;proto.isSame=isSame;proto.isSameOrAfter=isSameOrAfter;proto.isSameOrBefore=isSameOrBefore;proto.isValid=isValid$2;proto.lang=lang;proto.locale=locale;proto.localeData=localeData;proto.max=prototypeMax;proto.min=prototypeMin;proto.parsingFlags=parsingFlags;proto.set=stringSet;proto.startOf=startOf;proto.subtract=subtract;proto.toArray=toArray;proto.toObject=toObject;proto.toDate=toDate;proto.toISOString=toISOString;proto.inspect=inspect;proto.toJSON=toJSON;proto.toString=toString;proto.unix=unix;proto.valueOf=valueOf;proto.creationData=creationData;proto.year=getSetYear;proto.isLeapYear=getIsLeapYear;proto.weekYear=getSetWeekYear;proto.isoWeekYear=getSetISOWeekYear;proto.quarter=proto.quarters=getSetQuarter;proto.month=getSetMonth;proto.daysInMonth=getDaysInMonth;proto.week=proto.weeks=getSetWeek;proto.isoWeek=proto.isoWeeks=getSetISOWeek;proto.weeksInYear=getWeeksInYear;proto.isoWeeksInYear=getISOWeeksInYear;proto.date=getSetDayOfMonth;proto.day=proto.days=getSetDayOfWeek;proto.weekday=getSetLocaleDayOfWeek;proto.isoWeekday=getSetISODayOfWeek;proto.dayOfYear=getSetDayOfYear;proto.hour=proto.hours=getSetHour;proto.minute=proto.minutes=getSetMinute;proto.second=proto.seconds=getSetSecond;proto.millisecond=proto.milliseconds=getSetMillisecond;proto.utcOffset=getSetOffset;proto.utc=setOffsetToUTC;proto.local=setOffsetToLocal;proto.parseZone=setOffsetToParsedOffset;proto.hasAlignedHourOffset=hasAlignedHourOffset;proto.isDST=isDaylightSavingTime;proto.isLocal=isLocal;proto.isUtcOffset=isUtcOffset;proto.isUtc=isUtc;proto.isUTC=isUtc;proto.zoneAbbr=getZoneAbbr;proto.zoneName=getZoneName;proto.dates=deprecate(\"dates accessor is deprecated. Use date instead.\",getSetDayOfMonth);proto.months=deprecate(\"months accessor is deprecated. Use month instead\",getSetMonth);proto.years=deprecate(\"years accessor is deprecated. Use year instead\",getSetYear);proto.zone=deprecate(\"moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/\",getSetZone);proto.isDSTShifted=deprecate(\"isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information\",isDaylightSavingTimeShifted);function createUnix(input){return createLocal(input*1e3)}function createInZone(){return createLocal.apply(null,arguments).parseZone()}function preParsePostFormat(string){return string}var proto$1=Locale.prototype;proto$1.calendar=calendar;proto$1.longDateFormat=longDateFormat;proto$1.invalidDate=invalidDate;proto$1.ordinal=ordinal;proto$1.preparse=preParsePostFormat;proto$1.postformat=preParsePostFormat;proto$1.relativeTime=relativeTime;proto$1.pastFuture=pastFuture;proto$1.set=set;proto$1.months=localeMonths;proto$1.monthsShort=localeMonthsShort;proto$1.monthsParse=localeMonthsParse;proto$1.monthsRegex=monthsRegex;proto$1.monthsShortRegex=monthsShortRegex;proto$1.week=localeWeek;proto$1.firstDayOfYear=localeFirstDayOfYear;proto$1.firstDayOfWeek=localeFirstDayOfWeek;proto$1.weekdays=localeWeekdays;proto$1.weekdaysMin=localeWeekdaysMin;proto$1.weekdaysShort=localeWeekdaysShort;proto$1.weekdaysParse=localeWeekdaysParse;proto$1.weekdaysRegex=weekdaysRegex;proto$1.weekdaysShortRegex=weekdaysShortRegex;proto$1.weekdaysMinRegex=weekdaysMinRegex;proto$1.isPM=localeIsPM;proto$1.meridiem=localeMeridiem;function get$1(format,index,field,setter){var locale=getLocale();var utc=createUTC().set(setter,index);return locale[field](utc,format)}function listMonthsImpl(format,index,field){if(isNumber(format)){index=format;format=undefined}format=format||\"\";if(index!=null){return get$1(format,index,field,\"month\")}var i;var out=[];for(i=0;i<12;i++){out[i]=get$1(format,i,field,\"month\")}return out}function listWeekdaysImpl(localeSorted,format,index,field){if(typeof localeSorted===\"boolean\"){if(isNumber(format)){index=format;format=undefined}format=format||\"\"}else{format=localeSorted;index=format;localeSorted=false;if(isNumber(format)){index=format;format=undefined}format=format||\"\"}var locale=getLocale(),shift=localeSorted?locale._week.dow:0;if(index!=null){return get$1(format,(index+shift)%7,field,\"day\")}var i;var out=[];for(i=0;i<7;i++){out[i]=get$1(format,(i+shift)%7,field,\"day\")}return out}function listMonths(format,index){return listMonthsImpl(format,index,\"months\")}function listMonthsShort(format,index){return listMonthsImpl(format,index,\"monthsShort\")}function listWeekdays(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdays\")}function listWeekdaysShort(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysShort\")}function listWeekdaysMin(localeSorted,format,index){return listWeekdaysImpl(localeSorted,format,index,\"weekdaysMin\")}getSetGlobalLocale(\"en\",{dayOfMonthOrdinalParse:/\\d{1,2}(th|st|nd|rd)/,ordinal:function(number){var b=number%10,output=toInt(number%100/10)===1?\"th\":b===1?\"st\":b===2?\"nd\":b===3?\"rd\":\"th\";return number+output}});hooks.lang=deprecate(\"moment.lang is deprecated. Use moment.locale instead.\",getSetGlobalLocale);hooks.langData=deprecate(\"moment.langData is deprecated. Use moment.localeData instead.\",getLocale);var mathAbs=Math.abs;function abs(){var data=this._data;this._milliseconds=mathAbs(this._milliseconds);this._days=mathAbs(this._days);this._months=mathAbs(this._months);data.milliseconds=mathAbs(data.milliseconds);data.seconds=mathAbs(data.seconds);data.minutes=mathAbs(data.minutes);data.hours=mathAbs(data.hours);data.months=mathAbs(data.months);data.years=mathAbs(data.years);return this}function addSubtract$1(duration,input,value,direction){var other=createDuration(input,value);duration._milliseconds+=direction*other._milliseconds;duration._days+=direction*other._days;duration._months+=direction*other._months;return duration._bubble()}function add$1(input,value){return addSubtract$1(this,input,value,1)}function subtract$1(input,value){return addSubtract$1(this,input,value,-1)}function absCeil(number){if(number<0){return Math.floor(number)}else{return Math.ceil(number)}}function bubble(){var milliseconds=this._milliseconds;var days=this._days;var months=this._months;var data=this._data;var seconds,minutes,hours,years,monthsFromDays;if(!(milliseconds>=0&&days>=0&&months>=0||milliseconds<=0&&days<=0&&months<=0)){milliseconds+=absCeil(monthsToDays(months)+days)*864e5;days=0;months=0}data.milliseconds=milliseconds%1e3;seconds=absFloor(milliseconds/1e3);data.seconds=seconds%60;minutes=absFloor(seconds/60)\n;data.minutes=minutes%60;hours=absFloor(minutes/60);data.hours=hours%24;days+=absFloor(hours/24);monthsFromDays=absFloor(daysToMonths(days));months+=monthsFromDays;days-=absCeil(monthsToDays(monthsFromDays));years=absFloor(months/12);months%=12;data.days=days;data.months=months;data.years=years;return this}function daysToMonths(days){return days*4800/146097}function monthsToDays(months){return months*146097/4800}function as(units){if(!this.isValid()){return NaN}var days;var months;var milliseconds=this._milliseconds;units=normalizeUnits(units);if(units===\"month\"||units===\"year\"){days=this._days+milliseconds/864e5;months=this._months+daysToMonths(days);return units===\"month\"?months:months/12}else{days=this._days+Math.round(monthsToDays(this._months));switch(units){case\"week\":return days/7+milliseconds/6048e5;case\"day\":return days+milliseconds/864e5;case\"hour\":return days*24+milliseconds/36e5;case\"minute\":return days*1440+milliseconds/6e4;case\"second\":return days*86400+milliseconds/1e3;case\"millisecond\":return Math.floor(days*864e5)+milliseconds;default:throw new Error(\"Unknown unit \"+units)}}}function valueOf$1(){if(!this.isValid()){return NaN}return this._milliseconds+this._days*864e5+this._months%12*2592e6+toInt(this._months/12)*31536e6}function makeAs(alias){return function(){return this.as(alias)}}var asMilliseconds=makeAs(\"ms\");var asSeconds=makeAs(\"s\");var asMinutes=makeAs(\"m\");var asHours=makeAs(\"h\");var asDays=makeAs(\"d\");var asWeeks=makeAs(\"w\");var asMonths=makeAs(\"M\");var asYears=makeAs(\"y\");function clone$1(){return createDuration(this)}function get$2(units){units=normalizeUnits(units);return this.isValid()?this[units+\"s\"]():NaN}function makeGetter(name){return function(){return this.isValid()?this._data[name]:NaN}}var milliseconds=makeGetter(\"milliseconds\");var seconds=makeGetter(\"seconds\");var minutes=makeGetter(\"minutes\");var hours=makeGetter(\"hours\");var days=makeGetter(\"days\");var months=makeGetter(\"months\");var years=makeGetter(\"years\");function weeks(){return absFloor(this.days()/7)}var round=Math.round;var thresholds={ss:44,s:45,m:45,h:22,d:26,M:11};function substituteTimeAgo(string,number,withoutSuffix,isFuture,locale){return locale.relativeTime(number||1,!!withoutSuffix,string,isFuture)}function relativeTime$1(posNegDuration,withoutSuffix,locale){var duration=createDuration(posNegDuration).abs();var seconds=round(duration.as(\"s\"));var minutes=round(duration.as(\"m\"));var hours=round(duration.as(\"h\"));var days=round(duration.as(\"d\"));var months=round(duration.as(\"M\"));var years=round(duration.as(\"y\"));var a=seconds<=thresholds.ss&&[\"s\",seconds]||seconds<thresholds.s&&[\"ss\",seconds]||minutes<=1&&[\"m\"]||minutes<thresholds.m&&[\"mm\",minutes]||hours<=1&&[\"h\"]||hours<thresholds.h&&[\"hh\",hours]||days<=1&&[\"d\"]||days<thresholds.d&&[\"dd\",days]||months<=1&&[\"M\"]||months<thresholds.M&&[\"MM\",months]||years<=1&&[\"y\"]||[\"yy\",years];a[2]=withoutSuffix;a[3]=+posNegDuration>0;a[4]=locale;return substituteTimeAgo.apply(null,a)}function getSetRelativeTimeRounding(roundingFunction){if(roundingFunction===undefined){return round}if(typeof roundingFunction===\"function\"){round=roundingFunction;return true}return false}function getSetRelativeTimeThreshold(threshold,limit){if(thresholds[threshold]===undefined){return false}if(limit===undefined){return thresholds[threshold]}thresholds[threshold]=limit;if(threshold===\"s\"){thresholds.ss=limit-1}return true}function humanize(withSuffix){if(!this.isValid()){return this.localeData().invalidDate()}var locale=this.localeData();var output=relativeTime$1(this,!withSuffix,locale);if(withSuffix){output=locale.pastFuture(+this,output)}return locale.postformat(output)}var abs$1=Math.abs;function sign(x){return(x>0)-(x<0)||+x}function toISOString$1(){if(!this.isValid()){return this.localeData().invalidDate()}var seconds=abs$1(this._milliseconds)/1e3;var days=abs$1(this._days);var months=abs$1(this._months);var minutes,hours,years;minutes=absFloor(seconds/60);hours=absFloor(minutes/60);seconds%=60;minutes%=60;years=absFloor(months/12);months%=12;var Y=years;var M=months;var D=days;var h=hours;var m=minutes;var s=seconds?seconds.toFixed(3).replace(/\\.?0+$/,\"\"):\"\";var total=this.asSeconds();if(!total){return\"P0D\"}var totalSign=total<0?\"-\":\"\";var ymSign=sign(this._months)!==sign(total)?\"-\":\"\";var daysSign=sign(this._days)!==sign(total)?\"-\":\"\";var hmsSign=sign(this._milliseconds)!==sign(total)?\"-\":\"\";return totalSign+\"P\"+(Y?ymSign+Y+\"Y\":\"\")+(M?ymSign+M+\"M\":\"\")+(D?daysSign+D+\"D\":\"\")+(h||m||s?\"T\":\"\")+(h?hmsSign+h+\"H\":\"\")+(m?hmsSign+m+\"M\":\"\")+(s?hmsSign+s+\"S\":\"\")}var proto$2=Duration.prototype;proto$2.isValid=isValid$1;proto$2.abs=abs;proto$2.add=add$1;proto$2.subtract=subtract$1;proto$2.as=as;proto$2.asMilliseconds=asMilliseconds;proto$2.asSeconds=asSeconds;proto$2.asMinutes=asMinutes;proto$2.asHours=asHours;proto$2.asDays=asDays;proto$2.asWeeks=asWeeks;proto$2.asMonths=asMonths;proto$2.asYears=asYears;proto$2.valueOf=valueOf$1;proto$2._bubble=bubble;proto$2.clone=clone$1;proto$2.get=get$2;proto$2.milliseconds=milliseconds;proto$2.seconds=seconds;proto$2.minutes=minutes;proto$2.hours=hours;proto$2.days=days;proto$2.weeks=weeks;proto$2.months=months;proto$2.years=years;proto$2.humanize=humanize;proto$2.toISOString=toISOString$1;proto$2.toString=toISOString$1;proto$2.toJSON=toISOString$1;proto$2.locale=locale;proto$2.localeData=localeData;proto$2.toIsoString=deprecate(\"toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)\",toISOString$1);proto$2.lang=lang;addFormatToken(\"X\",0,0,\"unix\");addFormatToken(\"x\",0,0,\"valueOf\");addRegexToken(\"x\",matchSigned);addRegexToken(\"X\",matchTimestamp);addParseToken(\"X\",function(input,array,config){config._d=new Date(parseFloat(input,10)*1e3)});addParseToken(\"x\",function(input,array,config){config._d=new Date(toInt(input))});hooks.version=\"2.19.1\";setHookCallback(createLocal);hooks.fn=proto;hooks.min=min;hooks.max=max;hooks.now=now;hooks.utc=createUTC;hooks.unix=createUnix;hooks.months=listMonths;hooks.isDate=isDate;hooks.locale=getSetGlobalLocale;hooks.invalid=createInvalid;hooks.duration=createDuration;hooks.isMoment=isMoment;hooks.weekdays=listWeekdays;hooks.parseZone=createInZone;hooks.localeData=getLocale;hooks.isDuration=isDuration;hooks.monthsShort=listMonthsShort;hooks.weekdaysMin=listWeekdaysMin;hooks.defineLocale=defineLocale;hooks.updateLocale=updateLocale;hooks.locales=listLocales;hooks.weekdaysShort=listWeekdaysShort;hooks.normalizeUnits=normalizeUnits;hooks.relativeTimeRounding=getSetRelativeTimeRounding;hooks.relativeTimeThreshold=getSetRelativeTimeThreshold;hooks.calendarFormat=getCalendarFormat;hooks.prototype=proto;return hooks})}).call(exports,__webpack_require__(155)(module))},function(module,exports){module.exports=function(module){if(!module.webpackPolyfill){module.deprecate=function(){};module.paths=[];if(!module.children)module.children=[];Object.defineProperty(module,\"loaded\",{enumerable:true,get:function(){return module.l}});Object.defineProperty(module,\"id\",{enumerable:true,get:function(){return module.i}});module.webpackPolyfill=1}return module}},function(module,exports){function webpackEmptyContext(req){throw new Error(\"Cannot find module '\"+req+\"'.\")}webpackEmptyContext.keys=function(){return[]};webpackEmptyContext.resolve=webpackEmptyContext;module.exports=webpackEmptyContext;webpackEmptyContext.id=156},function(module,exports,__webpack_require__){\"use strict\";(function(global){var _rng;var globalVar=typeof window!==\"undefined\"?window:typeof global!==\"undefined\"?global:null;if(globalVar&&globalVar.crypto&&crypto.getRandomValues){var _rnds8=new Uint8Array(16);_rng=function whatwgRNG(){crypto.getRandomValues(_rnds8);return _rnds8}}if(!_rng){var _rnds=new Array(16);_rng=function _rng(){for(var i=0,r;i<16;i++){if((i&3)===0)r=Math.random()*4294967296;_rnds[i]=r>>>((i&3)<<3)&255}return _rnds}}var _byteToHex=[];var _hexToByte={};for(var i=0;i<256;i++){_byteToHex[i]=(i+256).toString(16).substr(1);_hexToByte[_byteToHex[i]]=i}function parse(s,buf,offset){var i=buf&&offset||0,ii=0;buf=buf||[];s.toLowerCase().replace(/[0-9a-f]{2}/g,function(oct){if(ii<16){buf[i+ii++]=_hexToByte[oct]}});while(ii<16){buf[i+ii++]=0}return buf}function unparse(buf,offset){var i=offset||0,bth=_byteToHex;return bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+\"-\"+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]+bth[buf[i++]]}var _seedBytes=_rng();var _nodeId=[_seedBytes[0]|1,_seedBytes[1],_seedBytes[2],_seedBytes[3],_seedBytes[4],_seedBytes[5]];var _clockseq=(_seedBytes[6]<<8|_seedBytes[7])&16383;var _lastMSecs=0,_lastNSecs=0;function v1(options,buf,offset){var i=buf&&offset||0;var b=buf||[];options=options||{};var clockseq=options.clockseq!==undefined?options.clockseq:_clockseq;var msecs=options.msecs!==undefined?options.msecs:(new Date).getTime();var nsecs=options.nsecs!==undefined?options.nsecs:_lastNSecs+1;var dt=msecs-_lastMSecs+(nsecs-_lastNSecs)/1e4;if(dt<0&&options.clockseq===undefined){clockseq=clockseq+1&16383}if((dt<0||msecs>_lastMSecs)&&options.nsecs===undefined){nsecs=0}if(nsecs>=1e4){throw new Error(\"uuid.v1(): Can't create more than 10M uuids/sec\")}_lastMSecs=msecs;_lastNSecs=nsecs;_clockseq=clockseq;msecs+=122192928e5;var tl=((msecs&268435455)*1e4+nsecs)%4294967296;b[i++]=tl>>>24&255;b[i++]=tl>>>16&255;b[i++]=tl>>>8&255;b[i++]=tl&255;var tmh=msecs/4294967296*1e4&268435455;b[i++]=tmh>>>8&255;b[i++]=tmh&255;b[i++]=tmh>>>24&15|16;b[i++]=tmh>>>16&255;b[i++]=clockseq>>>8|128;b[i++]=clockseq&255;var node=options.node||_nodeId;for(var n=0;n<6;n++){b[i+n]=node[n]}return buf?buf:unparse(b)}function v4(options,buf,offset){var i=buf&&offset||0;if(typeof options==\"string\"){buf=options==\"binary\"?new Array(16):null;options=null}options=options||{};var rnds=options.random||(options.rng||_rng)();rnds[6]=rnds[6]&15|64;rnds[8]=rnds[8]&63|128;if(buf){for(var ii=0;ii<16;ii++){buf[i+ii]=rnds[ii]}}return buf||unparse(rnds)}var uuid=v4;uuid.v1=v1;uuid.v4=v4;uuid.parse=parse;uuid.unparse=unparse;module.exports=uuid}).call(exports,__webpack_require__(158))},function(module,exports){var g;g=function(){return this}();try{g=g||Function(\"return this\")()||(1,eval)(\"this\")}catch(e){if(typeof window===\"object\")g=window}module.exports=g},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Graph3d=__webpack_require__(161);exports.graph3d={Camera:__webpack_require__(95),Filter:__webpack_require__(96),Point2d:__webpack_require__(91),Point3d:__webpack_require__(34),Slider:__webpack_require__(92),StepNumber:__webpack_require__(93)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){var core=__webpack_require__(7);var $JSON=core.JSON||(core.JSON={stringify:JSON.stringify});module.exports=function stringify(it){return $JSON.stringify.apply($JSON,arguments)}},function(module,exports,__webpack_require__){\"use strict\";var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var Point3d=__webpack_require__(34);var Point2d=__webpack_require__(91);var Slider=__webpack_require__(92);var StepNumber=__webpack_require__(93);var Settings=__webpack_require__(94);var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(172),allOptions=_require2.allOptions;var DataGroup=__webpack_require__(173);Graph3d.STYLE=Settings.STYLE;var autoByDefault=undefined;Graph3d.DEFAULTS={width:\"400px\",height:\"400px\",filterLabel:\"time\",legendLabel:\"value\",xLabel:\"x\",yLabel:\"y\",zLabel:\"z\",xValueLabel:function xValueLabel(v){return v},yValueLabel:function yValueLabel(v){return v},zValueLabel:function zValueLabel(v){return v},showXAxis:true,showYAxis:true,showZAxis:true,showGrid:true,showPerspective:true,showShadow:false,keepAspectRatio:true,verticalRatio:.5,dotSizeRatio:.02,dotSizeMinFraction:.5,dotSizeMaxFraction:2.5,showAnimationControls:autoByDefault,animationInterval:1e3,animationPreload:false,animationAutoStart:autoByDefault,axisColor:\"#4D4D4D\",gridColor:\"#D3D3D3\",xCenter:\"55%\",yCenter:\"50%\",style:Graph3d.STYLE.DOT,tooltip:false,tooltipStyle:{content:{padding:\"10px\",border:\"1px solid #4d4d4d\",color:\"#1a1a1a\",background:\"rgba(255,255,255,0.7)\",borderRadius:\"2px\",boxShadow:\"5px 5px 10px rgba(128,128,128,0.5)\"},line:{height:\"40px\",width:\"0\",borderLeft:\"1px solid #4d4d4d\"},dot:{height:\"0\",width:\"0\",border:\"5px solid #4d4d4d\",borderRadius:\"5px\"}},dataColor:{fill:\"#7DC1FF\",stroke:\"#3267D2\",strokeWidth:1},cameraPosition:{horizontal:1,vertical:.5,distance:1.7},showLegend:autoByDefault,backgroundColor:autoByDefault,xBarWidth:autoByDefault,yBarWidth:autoByDefault,valueMin:autoByDefault,valueMax:autoByDefault,xMin:autoByDefault,xMax:autoByDefault,xStep:autoByDefault,yMin:autoByDefault,yMax:autoByDefault,yStep:autoByDefault,zMin:autoByDefault,zMax:autoByDefault,zStep:autoByDefault};function Graph3d(container,data,options){if(!(this instanceof Graph3d)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.containerElement=container;this.dataGroup=new DataGroup;this.dataPoints=null;this.create();Settings.setDefaults(Graph3d.DEFAULTS,this);this.colX=undefined;this.colY=undefined;this.colZ=undefined;this.colValue=undefined;this.setOptions(options);this.setData(data)}Emitter(Graph3d.prototype);Graph3d.prototype._setScale=function(){this.scale=new Point3d(1/this.xRange.range(),1/this.yRange.range(),1/this.zRange.range());if(this.keepAspectRatio){if(this.scale.x<this.scale.y){this.scale.y=this.scale.x}else{this.scale.x=this.scale.y}}this.scale.z*=this.verticalRatio;if(this.valueRange!==undefined){this.scale.value=1/this.valueRange.range()}var xCenter=this.xRange.center()*this.scale.x;var yCenter=this.yRange.center()*this.scale.y;var zCenter=this.zRange.center()*this.scale.z;this.camera.setArmLocation(xCenter,yCenter,zCenter)};Graph3d.prototype._convert3Dto2D=function(point3d){var translation=this._convertPointToTranslation(point3d);return this._convertTranslationToScreen(translation)};Graph3d.prototype._convertPointToTranslation=function(point3d){var cameraLocation=this.camera.getCameraLocation(),cameraRotation=this.camera.getCameraRotation(),ax=point3d.x*this.scale.x,ay=point3d.y*this.scale.y,az=point3d.z*this.scale.z,cx=cameraLocation.x,cy=cameraLocation.y,cz=cameraLocation.z,sinTx=Math.sin(cameraRotation.x),cosTx=Math.cos(cameraRotation.x),sinTy=Math.sin(cameraRotation.y),cosTy=Math.cos(cameraRotation.y),sinTz=Math.sin(cameraRotation.z),cosTz=Math.cos(cameraRotation.z),dx=cosTy*(sinTz*(ay-cy)+cosTz*(ax-cx))-sinTy*(az-cz),dy=sinTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))+cosTx*(cosTz*(ay-cy)-sinTz*(ax-cx)),dz=cosTx*(cosTy*(az-cz)+sinTy*(sinTz*(ay-cy)+cosTz*(ax-cx)))-sinTx*(cosTz*(ay-cy)-sinTz*(ax-cx));return new Point3d(dx,dy,dz)};Graph3d.prototype._convertTranslationToScreen=function(translation){var ex=this.eye.x,ey=this.eye.y,ez=this.eye.z,dx=translation.x,dy=translation.y,dz=translation.z;var bx;var by;if(this.showPerspective){bx=(dx-ex)*(ez/dz);by=(dy-ey)*(ez/dz)}else{bx=dx*-(ez/this.camera.getArmLength());by=dy*-(ez/this.camera.getArmLength())}return new Point2d(this.currentXCenter+bx*this.frame.canvas.clientWidth,this.currentYCenter-by*this.frame.canvas.clientWidth)};Graph3d.prototype._calcTranslations=function(points){for(var i=0;i<points.length;i++){var point=points[i];point.trans=this._convertPointToTranslation(point.point);point.screen=this._convertTranslationToScreen(point.trans);var transBottom=this._convertPointToTranslation(point.bottom);point.dist=this.showPerspective?transBottom.length():-transBottom.z}var sortDepth=function sortDepth(a,b){return b.dist-a.dist};points.sort(sortDepth)};Graph3d.prototype._initializeRanges=function(){var dg=this.dataGroup;this.xRange=dg.xRange;this.yRange=dg.yRange;this.zRange=dg.zRange;this.valueRange=dg.valueRange;this.xStep=dg.xStep;this.yStep=dg.yStep;this.zStep=dg.zStep;this.xBarWidth=dg.xBarWidth;this.yBarWidth=dg.yBarWidth;this.colX=dg.colX;this.colY=dg.colY;this.colZ=dg.colZ;this.colValue=dg.colValue;this._setScale()};Graph3d.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};Graph3d.prototype._getDataPoints=function(data){var x,y,i,obj;var dataPoints=[];if(this.style===Graph3d.STYLE.GRID||this.style===Graph3d.STYLE.SURFACE){var dataX=this.dataGroup.getDistinctValues(this.colX,data);var dataY=this.dataGroup.getDistinctValues(this.colY,data);dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Graph3d.STYLE.LINE){for(i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};Graph3d.prototype.create=function(){while(this.containerElement.hasChildNodes()){this.containerElement.removeChild(this.containerElement.firstChild)}this.frame=document.createElement(\"div\");this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);{var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}this.frame.filter=document.createElement(\"div\");this.frame.filter.style.position=\"absolute\";this.frame.filter.style.bottom=\"0px\";this.frame.filter.style.left=\"0px\";this.frame.filter.style.width=\"100%\";this.frame.appendChild(this.frame.filter);var me=this;var onmousedown=function onmousedown(event){me._onMouseDown(event)};var ontouchstart=function ontouchstart(event){me._onTouchStart(event)};var onmousewheel=function onmousewheel(event){me._onWheel(event)};var ontooltip=function ontooltip(event){me._onTooltip(event)};var onclick=function onclick(event){me._onClick(event)};util.addEventListener(this.frame.canvas,\"mousedown\",onmousedown);util.addEventListener(this.frame.canvas,\"touchstart\",ontouchstart);util.addEventListener(this.frame.canvas,\"mousewheel\",onmousewheel);util.addEventListener(this.frame.canvas,\"mousemove\",ontooltip);util.addEventListener(this.frame.canvas,\"click\",onclick);this.containerElement.appendChild(this.frame)};Graph3d.prototype._setSize=function(width,height){this.frame.style.width=width;this.frame.style.height=height;this._resizeCanvas()};Graph3d.prototype._resizeCanvas=function(){this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=this.frame.canvas.clientWidth;this.frame.canvas.height=this.frame.canvas.clientHeight;this.frame.filter.style.width=this.frame.canvas.clientWidth-2*10+\"px\"};Graph3d.prototype.animationStart=function(){if(!this.animationAutoStart||!this.dataGroup.dataFilter)return;if(!this.frame.filter||!this.frame.filter.slider)throw new Error(\"No animation available\");this.frame.filter.slider.play()};Graph3d.prototype.animationStop=function(){if(!this.frame.filter||!this.frame.filter.slider)return;this.frame.filter.slider.stop()};Graph3d.prototype._resizeCenter=function(){if(this.xCenter.charAt(this.xCenter.length-1)===\"%\"){this.currentXCenter=parseFloat(this.xCenter)/100*this.frame.canvas.clientWidth}else{this.currentXCenter=parseFloat(this.xCenter)}if(this.yCenter.charAt(this.yCenter.length-1)===\"%\"){this.currentYCenter=parseFloat(this.yCenter)/100*(this.frame.canvas.clientHeight-this.frame.filter.clientHeight)}else{this.currentYCenter=parseFloat(this.yCenter)}};Graph3d.prototype.getCameraPosition=function(){var pos=this.camera.getArmRotation();pos.distance=this.camera.getArmLength();return pos};Graph3d.prototype._readData=function(data){this.dataPoints=this.dataGroup.initializeData(this,data,this.style);this._initializeRanges();this._redrawFilter()};Graph3d.prototype.setData=function(data){if(data===undefined||data===null)return;this._readData(data);this.redraw();this.animationStart()};Graph3d.prototype.setOptions=function(options){if(options===undefined)return;var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}this.animationStop();Settings.setOptions(options,this);this.setPointDrawingMethod();this._setSize(this.width,this.height);this.setData(this.dataGroup.getDataTable());this.animationStart()};Graph3d.prototype.setPointDrawingMethod=function(){var method=undefined;switch(this.style){case Graph3d.STYLE.BAR:method=Graph3d.prototype._redrawBarGraphPoint;break;case Graph3d.STYLE.BARCOLOR:method=Graph3d.prototype._redrawBarColorGraphPoint;break;case Graph3d.STYLE.BARSIZE:method=Graph3d.prototype._redrawBarSizeGraphPoint;break;case Graph3d.STYLE.DOT:method=Graph3d.prototype._redrawDotGraphPoint;break;case Graph3d.STYLE.DOTLINE:method=Graph3d.prototype._redrawDotLineGraphPoint;break;case Graph3d.STYLE.DOTCOLOR:method=Graph3d.prototype._redrawDotColorGraphPoint;break;case Graph3d.STYLE.DOTSIZE:method=Graph3d.prototype._redrawDotSizeGraphPoint;break;case Graph3d.STYLE.SURFACE:method=Graph3d.prototype._redrawSurfaceGraphPoint;break;case Graph3d.STYLE.GRID:method=Graph3d.prototype._redrawGridGraphPoint;break;case Graph3d.STYLE.LINE:method=Graph3d.prototype._redrawLineGraphPoint;break;default:throw new Error(\"Can not determine point drawing method \"+\"for graph style '\"+this.style+\"'\")}this._pointDrawingMethod=method};Graph3d.prototype.redraw=function(){if(this.dataPoints===undefined){throw new Error(\"Graph data not initialized\")}this._resizeCanvas();this._resizeCenter();this._redrawSlider();this._redrawClear();this._redrawAxis();this._redrawDataGraph();this._redrawInfo();this._redrawLegend()};Graph3d.prototype._getContext=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.lineJoin=\"round\";ctx.lineCap=\"round\";return ctx};Graph3d.prototype._redrawClear=function(){var canvas=this.frame.canvas;var ctx=canvas.getContext(\"2d\");ctx.clearRect(0,0,canvas.width,canvas.height)};Graph3d.prototype._dotSize=function(){return this.frame.clientWidth*this.dotSizeRatio};Graph3d.prototype._getLegendWidth=function(){var width;if(this.style===Graph3d.STYLE.DOTSIZE){var dotSize=this._dotSize();width=dotSize*this.dotSizeMaxFraction}else if(this.style===Graph3d.STYLE.BARSIZE){width=this.xBarWidth}else{width=20}return width};Graph3d.prototype._redrawLegend=function(){if(this.showLegend!==true){return}if(this.style===Graph3d.STYLE.LINE||this.style===Graph3d.STYLE.BARSIZE){return}var isSizeLegend=this.style===Graph3d.STYLE.BARSIZE||this.style===Graph3d.STYLE.DOTSIZE;var isValueLegend=this.style===Graph3d.STYLE.DOTSIZE||this.style===Graph3d.STYLE.DOTCOLOR||this.style===Graph3d.STYLE.BARCOLOR;var height=Math.max(this.frame.clientHeight*.25,100);var top=this.margin;var width=this._getLegendWidth();var right=this.frame.clientWidth-this.margin;var left=right-width;var bottom=top+height;var ctx=this._getContext();ctx.lineWidth=1;ctx.font=\"14px arial\";if(isSizeLegend===false){var ymin=0;var ymax=height;var y;for(y=ymin;y<ymax;y++){var f=(y-ymin)/(ymax-ymin);var hue=f*240;var color=this._hsv2rgb(hue,1,1);ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(left,top+y);ctx.lineTo(right,top+y);ctx.stroke()}ctx.strokeStyle=this.axisColor;ctx.strokeRect(left,top,width,height)}else{var widthMin;if(this.style===Graph3d.STYLE.DOTSIZE){widthMin=width*(this.dotSizeMinFraction/this.dotSizeMaxFraction)}else if(this.style===Graph3d.STYLE.BARSIZE){}ctx.strokeStyle=this.axisColor;ctx.fillStyle=this.dataColor.fill;ctx.beginPath();ctx.moveTo(left,top);ctx.lineTo(right,top);ctx.lineTo(left+widthMin,bottom);ctx.lineTo(left,bottom);ctx.closePath();ctx.fill();ctx.stroke()}var gridLineLen=5;var legendMin=isValueLegend?this.valueRange.min:this.zRange.min;var legendMax=isValueLegend?this.valueRange.max:this.zRange.max;var step=new StepNumber(legendMin,legendMax,(legendMax-legendMin)/5,true);step.start(true);var from;var to;while(!step.end()){y=bottom-(step.getCurrent()-legendMin)/(legendMax-legendMin)*height;from=new Point2d(left-gridLineLen,y);to=new Point2d(left,y);this._line(ctx,from,to);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(step.getCurrent(),left-2*gridLineLen,y);step.next()}ctx.textAlign=\"right\";ctx.textBaseline=\"top\";var label=this.legendLabel;ctx.fillText(label,right,bottom+this.margin)};Graph3d.prototype._redrawFilter=function(){var dataFilter=this.dataGroup.dataFilter;var filter=this.frame.filter;filter.innerHTML=\"\";if(!dataFilter){filter.slider=undefined;return}var options={visible:this.showAnimationControls};var slider=new Slider(filter,options);filter.slider=slider;filter.style.padding=\"10px\";slider.setValues(dataFilter.values);slider.setPlayInterval(this.animationInterval);var me=this;var onchange=function onchange(){var dataFilter=me.dataGroup.dataFilter;var index=slider.getIndex();dataFilter.selectValue(index);me.dataPoints=dataFilter._getDataPoints();me.redraw()};slider.setOnChangeCallback(onchange)};Graph3d.prototype._redrawSlider=function(){if(this.frame.filter.slider!==undefined){this.frame.filter.slider.redraw()}};Graph3d.prototype._redrawInfo=function(){var info=this.dataGroup.getInfo();if(info===undefined)return;var ctx=this._getContext();ctx.font=\"14px arial\";ctx.lineStyle=\"gray\";ctx.fillStyle=\"gray\";ctx.textAlign=\"left\";ctx.textBaseline=\"top\";var x=this.margin;var y=this.margin;ctx.fillText(info,x,y)};Graph3d.prototype._line=function(ctx,from,to,strokeStyle){if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(from.x,from.y);ctx.lineTo(to.x,to.y);ctx.stroke()};Graph3d.prototype.drawAxisLabelX=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)>0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)<0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelY=function(ctx,point3d,text,armAngle,yMargin){if(yMargin===undefined){yMargin=0}var point2d=this._convert3Dto2D(point3d);if(Math.cos(armAngle*2)<0){ctx.textAlign=\"center\";ctx.textBaseline=\"top\";point2d.y+=yMargin}else if(Math.sin(armAngle*2)>0){ctx.textAlign=\"right\";ctx.textBaseline=\"middle\"}else{ctx.textAlign=\"left\";ctx.textBaseline=\"middle\"}ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x,point2d.y)};Graph3d.prototype.drawAxisLabelZ=function(ctx,point3d,text,offset){if(offset===undefined){offset=0}var point2d=this._convert3Dto2D(point3d);ctx.textAlign=\"right\";ctx.textBaseline=\"middle\";ctx.fillStyle=this.axisColor;ctx.fillText(text,point2d.x-offset,point2d.y)};Graph3d.prototype._line3d=function(ctx,from,to,strokeStyle){var from2d=this._convert3Dto2D(from);var to2d=this._convert3Dto2D(to);this._line(ctx,from2d,to2d,strokeStyle)};Graph3d.prototype._redrawAxis=function(){var ctx=this._getContext(),from,to,step,prettyStep,text,xText,yText,zText,offset,xOffset,yOffset;ctx.font=24/this.camera.getArmLength()+\"px arial\";var gridLenX=.025/this.scale.x;var gridLenY=.025/this.scale.y;var textMargin=5/this.camera.getArmLength();var armAngle=this.camera.getArmRotation().horizontal;var armVector=new Point2d(Math.cos(armAngle),Math.sin(armAngle));var xRange=this.xRange;var yRange=this.yRange;var zRange=this.zRange;var point3d;ctx.lineWidth=1;prettyStep=this.defaultXStep===undefined;step=new StepNumber(xRange.min,xRange.max,this.xStep,prettyStep);step.start(true);while(!step.end()){var x=step.getCurrent();if(this.showGrid){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.max,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showXAxis){from=new Point3d(x,yRange.min,zRange.min);to=new Point3d(x,yRange.min+gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(x,yRange.max,zRange.min);to=new Point3d(x,yRange.max-gridLenX,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){yText=armVector.x>0?yRange.min:yRange.max;point3d=new Point3d(x,yText,zRange.min);var msg=\"  \"+this.xValueLabel(x)+\"  \";this.drawAxisLabelX(ctx,point3d,msg,armAngle,textMargin)}step.next()}ctx.lineWidth=1;prettyStep=this.defaultYStep===undefined;step=new StepNumber(yRange.min,yRange.max,this.yStep,prettyStep);step.start(true);while(!step.end()){var y=step.getCurrent();if(this.showGrid){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.max,y,zRange.min);this._line3d(ctx,from,to,this.gridColor)}else if(this.showYAxis){from=new Point3d(xRange.min,y,zRange.min);to=new Point3d(xRange.min+gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,y,zRange.min);to=new Point3d(xRange.max-gridLenY,y,zRange.min);this._line3d(ctx,from,to,this.axisColor)}if(this.showYAxis){xText=armVector.y>0?xRange.min:xRange.max;point3d=new Point3d(xText,y,zRange.min);var _msg=\"  \"+this.yValueLabel(y)+\"  \";this.drawAxisLabelY(ctx,point3d,_msg,armAngle,textMargin)}step.next()}if(this.showZAxis){ctx.lineWidth=1;prettyStep=this.defaultZStep===undefined;step=new StepNumber(zRange.min,zRange.max,this.zStep,prettyStep);step.start(true);xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;while(!step.end()){var z=step.getCurrent();var from3d=new Point3d(xText,yText,z);var from2d=this._convert3Dto2D(from3d);to=new Point2d(from2d.x-textMargin,from2d.y);this._line(ctx,from2d,to,this.axisColor);var _msg2=this.zValueLabel(z)+\" \";this.drawAxisLabelZ(ctx,from3d,_msg2,5);step.next()}ctx.lineWidth=1;from=new Point3d(xText,yText,zRange.min);to=new Point3d(xText,yText,zRange.max);this._line3d(ctx,from,to,this.axisColor)}if(this.showXAxis){var xMin2d;var xMax2d;ctx.lineWidth=1;xMin2d=new Point3d(xRange.min,yRange.min,zRange.min);xMax2d=new Point3d(xRange.max,yRange.min,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor);xMin2d=new Point3d(xRange.min,yRange.max,zRange.min);xMax2d=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,xMin2d,xMax2d,this.axisColor)}if(this.showYAxis){ctx.lineWidth=1;from=new Point3d(xRange.min,yRange.min,zRange.min);to=new Point3d(xRange.min,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor);from=new Point3d(xRange.max,yRange.min,zRange.min);to=new Point3d(xRange.max,yRange.max,zRange.min);this._line3d(ctx,from,to,this.axisColor)}var xLabel=this.xLabel;if(xLabel.length>0&&this.showXAxis){yOffset=.1/this.scale.y;xText=(xRange.max+3*xRange.min)/4;yText=armVector.x>0?yRange.min-yOffset:yRange.max+yOffset\n;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelX(ctx,text,xLabel,armAngle)}var yLabel=this.yLabel;if(yLabel.length>0&&this.showYAxis){xOffset=.1/this.scale.x;xText=armVector.y>0?xRange.min-xOffset:xRange.max+xOffset;yText=(yRange.max+3*yRange.min)/4;text=new Point3d(xText,yText,zRange.min);this.drawAxisLabelY(ctx,text,yLabel,armAngle)}var zLabel=this.zLabel;if(zLabel.length>0&&this.showZAxis){offset=30;xText=armVector.x>0?xRange.min:xRange.max;yText=armVector.y<0?yRange.min:yRange.max;zText=(zRange.max+3*zRange.min)/4;text=new Point3d(xText,yText,zText);this.drawAxisLabelZ(ctx,text,zLabel,offset)}};Graph3d.prototype._hsv2rgb=function(H,S,V){var R,G,B,C,Hi,X;C=V*S;Hi=Math.floor(H/60);X=C*(1-Math.abs(H/60%2-1));switch(Hi){case 0:R=C;G=X;B=0;break;case 1:R=X;G=C;B=0;break;case 2:R=0;G=C;B=X;break;case 3:R=0;G=X;B=C;break;case 4:R=X;G=0;B=C;break;case 5:R=C;G=0;B=X;break;default:R=0;G=0;B=0;break}return\"RGB(\"+parseInt(R*255)+\",\"+parseInt(G*255)+\",\"+parseInt(B*255)+\")\"};Graph3d.prototype._getStrokeWidth=function(point){if(point!==undefined){if(this.showPerspective){return 1/-point.trans.z*this.dataColor.strokeWidth}else{return-(this.eye.z/this.camera.getArmLength())*this.dataColor.strokeWidth}}return this.dataColor.strokeWidth};Graph3d.prototype._redrawBar=function(ctx,point,xWidth,yWidth,color,borderColor){var surface;var me=this;var point3d=point.point;var zMin=this.zRange.min;var top=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,point3d.z)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,point3d.z)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,point3d.z)}];var bottom=[{point:new Point3d(point3d.x-xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y-yWidth,zMin)},{point:new Point3d(point3d.x+xWidth,point3d.y+yWidth,zMin)},{point:new Point3d(point3d.x-xWidth,point3d.y+yWidth,zMin)}];top.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});bottom.forEach(function(obj){obj.screen=me._convert3Dto2D(obj.point)});var surfaces=[{corners:top,center:Point3d.avg(bottom[0].point,bottom[2].point)},{corners:[top[0],top[1],bottom[1],bottom[0]],center:Point3d.avg(bottom[1].point,bottom[0].point)},{corners:[top[1],top[2],bottom[2],bottom[1]],center:Point3d.avg(bottom[2].point,bottom[1].point)},{corners:[top[2],top[3],bottom[3],bottom[2]],center:Point3d.avg(bottom[3].point,bottom[2].point)},{corners:[top[3],top[0],bottom[0],bottom[3]],center:Point3d.avg(bottom[0].point,bottom[3].point)}];point.surfaces=surfaces;for(var j=0;j<surfaces.length;j++){surface=surfaces[j];var transCenter=this._convertPointToTranslation(surface.center);surface.dist=this.showPerspective?transCenter.length():-transCenter.z}surfaces.sort(function(a,b){var diff=b.dist-a.dist;if(diff)return diff;if(a.corners===top)return 1;if(b.corners===top)return-1;return 0});ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;for(var _j=2;_j<surfaces.length;_j++){surface=surfaces[_j];this._polygon(ctx,surface.corners)}};Graph3d.prototype._polygon=function(ctx,points,fillStyle,strokeStyle){if(points.length<2){return}if(fillStyle!==undefined){ctx.fillStyle=fillStyle}if(strokeStyle!==undefined){ctx.strokeStyle=strokeStyle}ctx.beginPath();ctx.moveTo(points[0].screen.x,points[0].screen.y);for(var i=1;i<points.length;++i){var point=points[i];ctx.lineTo(point.screen.x,point.screen.y)}ctx.closePath();ctx.fill();ctx.stroke()};Graph3d.prototype._drawCircle=function(ctx,point,color,borderColor,size){var radius=this._calcRadius(point,size);ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=borderColor;ctx.fillStyle=color;ctx.beginPath();ctx.arc(point.screen.x,point.screen.y,radius,0,Math.PI*2,true);ctx.fill();ctx.stroke()};Graph3d.prototype._getColorsRegular=function(point){var hue=(1-(point.point.z-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var color=this._hsv2rgb(hue,1,1);var borderColor=this._hsv2rgb(hue,1,.8);return{fill:color,border:borderColor}};Graph3d.prototype._getColorsColor=function(point){var color,borderColor;if(typeof point.point.value===\"string\"){color=point.point.value;borderColor=point.point.value}else{var hue=(1-(point.point.value-this.valueRange.min)*this.scale.value)*240;color=this._hsv2rgb(hue,1,1);borderColor=this._hsv2rgb(hue,1,.8)}return{fill:color,border:borderColor}};Graph3d.prototype._getColorsSize=function(){return{fill:this.dataColor.fill,border:this.dataColor.stroke}};Graph3d.prototype._calcRadius=function(point,size){if(size===undefined){size=this._dotSize()}var radius;if(this.showPerspective){radius=size/-point.trans.z}else{radius=size*-(this.eye.z/this.camera.getArmLength())}if(radius<0){radius=0}return radius};Graph3d.prototype._redrawBarGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsRegular(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarColorGraphPoint=function(ctx,point){var xWidth=this.xBarWidth/2;var yWidth=this.yBarWidth/2;var colors=this._getColorsColor(point);this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawBarSizeGraphPoint=function(ctx,point){var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var xWidth=this.xBarWidth/2*(fraction*.8+.2);var yWidth=this.yBarWidth/2*(fraction*.8+.2);var colors=this._getColorsSize();this._redrawBar(ctx,point,xWidth,yWidth,colors.fill,colors.border)};Graph3d.prototype._redrawDotGraphPoint=function(ctx,point){var colors=this._getColorsRegular(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotLineGraphPoint=function(ctx,point){var from=this._convert3Dto2D(point.bottom);ctx.lineWidth=1;this._line(ctx,from,point.screen,this.gridColor);this._redrawDotGraphPoint(ctx,point)};Graph3d.prototype._redrawDotColorGraphPoint=function(ctx,point){var colors=this._getColorsColor(point);this._drawCircle(ctx,point,colors.fill,colors.border)};Graph3d.prototype._redrawDotSizeGraphPoint=function(ctx,point){var dotSize=this._dotSize();var fraction=(point.point.value-this.valueRange.min)/this.valueRange.range();var sizeMin=dotSize*this.dotSizeMinFraction;var sizeRange=dotSize*this.dotSizeMaxFraction-sizeMin;var size=sizeMin+sizeRange*fraction;var colors=this._getColorsSize();this._drawCircle(ctx,point,colors.fill,colors.border,size)};Graph3d.prototype._redrawSurfaceGraphPoint=function(ctx,point){var right=point.pointRight;var top=point.pointTop;var cross=point.pointCross;if(point===undefined||right===undefined||top===undefined||cross===undefined){return}var topSideVisible=true;var fillStyle;var strokeStyle;if(this.showGrayBottom||this.showShadow){var aDiff=Point3d.subtract(cross.trans,point.trans);var bDiff=Point3d.subtract(top.trans,right.trans);var crossproduct=Point3d.crossProduct(aDiff,bDiff);var len=crossproduct.length();topSideVisible=crossproduct.z>0}if(topSideVisible){var zAvg=(point.point.z+right.point.z+top.point.z+cross.point.z)/4;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;var s=1;var v;if(this.showShadow){v=Math.min(1+crossproduct.x/len/2,1);fillStyle=this._hsv2rgb(h,s,v);strokeStyle=fillStyle}else{v=1;fillStyle=this._hsv2rgb(h,s,v);strokeStyle=this.axisColor}}else{fillStyle=\"gray\";strokeStyle=this.axisColor}ctx.lineWidth=this._getStrokeWidth(point);var points=[point,right,cross,top];this._polygon(ctx,points,fillStyle,strokeStyle)};Graph3d.prototype._drawGridLine=function(ctx,from,to){if(from===undefined||to===undefined){return}var zAvg=(from.point.z+to.point.z)/2;var h=(1-(zAvg-this.zRange.min)*this.scale.z/this.verticalRatio)*240;ctx.lineWidth=this._getStrokeWidth(from)*2;ctx.strokeStyle=this._hsv2rgb(h,1,1);this._line(ctx,from.screen,to.screen)};Graph3d.prototype._redrawGridGraphPoint=function(ctx,point){this._drawGridLine(ctx,point,point.pointRight);this._drawGridLine(ctx,point,point.pointTop)};Graph3d.prototype._redrawLineGraphPoint=function(ctx,point){if(point.pointNext===undefined){return}ctx.lineWidth=this._getStrokeWidth(point);ctx.strokeStyle=this.dataColor.stroke;this._line(ctx,point.screen,point.pointNext.screen)};Graph3d.prototype._redrawDataGraph=function(){var ctx=this._getContext();var i;if(this.dataPoints===undefined||this.dataPoints.length<=0)return;this._calcTranslations(this.dataPoints);for(i=0;i<this.dataPoints.length;i++){var point=this.dataPoints[i];this._pointDrawingMethod.call(this,ctx,point)}};Graph3d.prototype._storeMousePosition=function(event){this.startMouseX=getMouseX(event);this.startMouseY=getMouseY(event);this._startCameraOffset=this.camera.getOffset()};Graph3d.prototype._onMouseDown=function(event){event=event||window.event;if(this.leftButtonDown){this._onMouseUp(event)}this.leftButtonDown=event.which?event.which===1:event.button===1;if(!this.leftButtonDown&&!this.touchDown)return;this._storeMousePosition(event);this.startStart=new Date(this.start);this.startEnd=new Date(this.end);this.startArmRotation=this.camera.getArmRotation();this.frame.style.cursor=\"move\";var me=this;this.onmousemove=function(event){me._onMouseMove(event)};this.onmouseup=function(event){me._onMouseUp(event)};util.addEventListener(document,\"mousemove\",me.onmousemove);util.addEventListener(document,\"mouseup\",me.onmouseup);util.preventDefault(event)};Graph3d.prototype._onMouseMove=function(event){this.moving=true;event=event||window.event;var diffX=parseFloat(getMouseX(event))-this.startMouseX;var diffY=parseFloat(getMouseY(event))-this.startMouseY;if(event&&event.ctrlKey===true){var scaleX=this.frame.clientWidth*.5;var scaleY=this.frame.clientHeight*.5;var offXNew=(this._startCameraOffset.x||0)-diffX/scaleX*this.camera.armLength*.8;var offYNew=(this._startCameraOffset.y||0)+diffY/scaleY*this.camera.armLength*.8;this.camera.setOffset(offXNew,offYNew);this._storeMousePosition(event)}else{var horizontalNew=this.startArmRotation.horizontal+diffX/200;var verticalNew=this.startArmRotation.vertical+diffY/200;var snapAngle=4;var snapValue=Math.sin(snapAngle/360*2*Math.PI);if(Math.abs(Math.sin(horizontalNew))<snapValue){horizontalNew=Math.round(horizontalNew/Math.PI)*Math.PI-.001}if(Math.abs(Math.cos(horizontalNew))<snapValue){horizontalNew=(Math.round(horizontalNew/Math.PI-.5)+.5)*Math.PI-.001}if(Math.abs(Math.sin(verticalNew))<snapValue){verticalNew=Math.round(verticalNew/Math.PI)*Math.PI}if(Math.abs(Math.cos(verticalNew))<snapValue){verticalNew=(Math.round(verticalNew/Math.PI-.5)+.5)*Math.PI}this.camera.setArmRotation(horizontalNew,verticalNew)}this.redraw();var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._onMouseUp=function(event){this.frame.style.cursor=\"auto\";this.leftButtonDown=false;util.removeEventListener(document,\"mousemove\",this.onmousemove);util.removeEventListener(document,\"mouseup\",this.onmouseup);util.preventDefault(event)};Graph3d.prototype._onClick=function(event){if(!this.onclick_callback)return;if(!this.moving){var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint)this.onclick_callback(dataPoint.point.data)}else{this.moving=false}util.preventDefault(event)};Graph3d.prototype._onTooltip=function(event){var delay=300;var boundingRect=this.frame.getBoundingClientRect();var mouseX=getMouseX(event)-boundingRect.left;var mouseY=getMouseY(event)-boundingRect.top;if(!this.showTooltip){return}if(this.tooltipTimeout){clearTimeout(this.tooltipTimeout)}if(this.leftButtonDown){this._hideTooltip();return}if(this.tooltip&&this.tooltip.dataPoint){var dataPoint=this._dataPointFromXY(mouseX,mouseY);if(dataPoint!==this.tooltip.dataPoint){if(dataPoint){this._showTooltip(dataPoint)}else{this._hideTooltip()}}}else{var me=this;this.tooltipTimeout=setTimeout(function(){me.tooltipTimeout=null;var dataPoint=me._dataPointFromXY(mouseX,mouseY);if(dataPoint){me._showTooltip(dataPoint)}},delay)}};Graph3d.prototype._onTouchStart=function(event){this.touchDown=true;var me=this;this.ontouchmove=function(event){me._onTouchMove(event)};this.ontouchend=function(event){me._onTouchEnd(event)};util.addEventListener(document,\"touchmove\",me.ontouchmove);util.addEventListener(document,\"touchend\",me.ontouchend);this._onMouseDown(event)};Graph3d.prototype._onTouchMove=function(event){this._onMouseMove(event)};Graph3d.prototype._onTouchEnd=function(event){this.touchDown=false;util.removeEventListener(document,\"touchmove\",this.ontouchmove);util.removeEventListener(document,\"touchend\",this.ontouchend);this._onMouseUp(event)};Graph3d.prototype._onWheel=function(event){if(!event)event=window.event;var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta){var oldLength=this.camera.getArmLength();var newLength=oldLength*(1-delta/10);this.camera.setArmLength(newLength);this.redraw();this._hideTooltip()}var parameters=this.getCameraPosition();this.emit(\"cameraPositionChange\",parameters);util.preventDefault(event)};Graph3d.prototype._insideTriangle=function(point,triangle){var a=triangle[0],b=triangle[1],c=triangle[2];function sign(x){return x>0?1:x<0?-1:0}var as=sign((b.x-a.x)*(point.y-a.y)-(b.y-a.y)*(point.x-a.x));var bs=sign((c.x-b.x)*(point.y-b.y)-(c.y-b.y)*(point.x-b.x));var cs=sign((a.x-c.x)*(point.y-c.y)-(a.y-c.y)*(point.x-c.x));return(as==0||bs==0||as==bs)&&(bs==0||cs==0||bs==cs)&&(as==0||cs==0||as==cs)};Graph3d.prototype._dataPointFromXY=function(x,y){var i,distMax=100,dataPoint=null,closestDataPoint=null,closestDist=null,center=new Point2d(x,y);if(this.style===Graph3d.STYLE.BAR||this.style===Graph3d.STYLE.BARCOLOR||this.style===Graph3d.STYLE.BARSIZE){for(i=this.dataPoints.length-1;i>=0;i--){dataPoint=this.dataPoints[i];var surfaces=dataPoint.surfaces;if(surfaces){for(var s=surfaces.length-1;s>=0;s--){var surface=surfaces[s];var corners=surface.corners;var triangle1=[corners[0].screen,corners[1].screen,corners[2].screen];var triangle2=[corners[2].screen,corners[3].screen,corners[0].screen];if(this._insideTriangle(center,triangle1)||this._insideTriangle(center,triangle2)){return dataPoint}}}}}else{for(i=0;i<this.dataPoints.length;i++){dataPoint=this.dataPoints[i];var point=dataPoint.screen;if(point){var distX=Math.abs(x-point.x);var distY=Math.abs(y-point.y);var dist=Math.sqrt(distX*distX+distY*distY);if((closestDist===null||dist<closestDist)&&dist<distMax){closestDist=dist;closestDataPoint=dataPoint}}}}return closestDataPoint};Graph3d.prototype.hasBars=function(style){return style==Graph3d.STYLE.BAR||style==Graph3d.STYLE.BARCOLOR||style==Graph3d.STYLE.BARSIZE};Graph3d.prototype._showTooltip=function(dataPoint){var content,line,dot;if(!this.tooltip){content=document.createElement(\"div\");(0,_assign2[\"default\"])(content.style,{},this.tooltipStyle.content);content.style.position=\"absolute\";line=document.createElement(\"div\");(0,_assign2[\"default\"])(line.style,{},this.tooltipStyle.line);line.style.position=\"absolute\";dot=document.createElement(\"div\");(0,_assign2[\"default\"])(dot.style,{},this.tooltipStyle.dot);dot.style.position=\"absolute\";this.tooltip={dataPoint:null,dom:{content:content,line:line,dot:dot}}}else{content=this.tooltip.dom.content;line=this.tooltip.dom.line;dot=this.tooltip.dom.dot}this._hideTooltip();this.tooltip.dataPoint=dataPoint;if(typeof this.showTooltip===\"function\"){content.innerHTML=this.showTooltip(dataPoint.point)}else{content.innerHTML=\"<table>\"+\"<tr><td>\"+this.xLabel+\":</td><td>\"+dataPoint.point.x+\"</td></tr>\"+\"<tr><td>\"+this.yLabel+\":</td><td>\"+dataPoint.point.y+\"</td></tr>\"+\"<tr><td>\"+this.zLabel+\":</td><td>\"+dataPoint.point.z+\"</td></tr>\"+\"</table>\"}content.style.left=\"0\";content.style.top=\"0\";this.frame.appendChild(content);this.frame.appendChild(line);this.frame.appendChild(dot);var contentWidth=content.offsetWidth;var contentHeight=content.offsetHeight;var lineHeight=line.offsetHeight;var dotWidth=dot.offsetWidth;var dotHeight=dot.offsetHeight;var left=dataPoint.screen.x-contentWidth/2;left=Math.min(Math.max(left,10),this.frame.clientWidth-10-contentWidth);line.style.left=dataPoint.screen.x+\"px\";line.style.top=dataPoint.screen.y-lineHeight+\"px\";content.style.left=left+\"px\";content.style.top=dataPoint.screen.y-lineHeight-contentHeight+\"px\";dot.style.left=dataPoint.screen.x-dotWidth/2+\"px\";dot.style.top=dataPoint.screen.y-dotHeight/2+\"px\"};Graph3d.prototype._hideTooltip=function(){if(this.tooltip){this.tooltip.dataPoint=null;for(var prop in this.tooltip.dom){if(this.tooltip.dom.hasOwnProperty(prop)){var elem=this.tooltip.dom[prop];if(elem&&elem.parentNode){elem.parentNode.removeChild(elem)}}}}};function getMouseX(event){if(\"clientX\"in event)return event.clientX;return event.targetTouches[0]&&event.targetTouches[0].clientX||0}function getMouseY(event){if(\"clientY\"in event)return event.clientY;return event.targetTouches[0]&&event.targetTouches[0].clientY||0}Graph3d.prototype.setCameraPosition=function(pos){Settings.setCameraPosition(pos,this);this.redraw()};Graph3d.prototype.setSize=function(width,height){this._setSize(width,height);this.redraw()};module.exports=Graph3d},function(module,exports,__webpack_require__){__webpack_require__(163);module.exports=__webpack_require__(7).Object.assign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F,\"Object\",{assign:__webpack_require__(164)})},function(module,exports,__webpack_require__){\"use strict\";var getKeys=__webpack_require__(33);var gOPS=__webpack_require__(63);var pIE=__webpack_require__(42);var toObject=__webpack_require__(41);var IObject=__webpack_require__(78);var $assign=Object.assign;module.exports=!$assign||__webpack_require__(28)(function(){var A={};var B={};var S=Symbol();var K=\"abcdefghijklmnopqrst\";A[S]=7;K.split(\"\").forEach(function(k){B[k]=k});return $assign({},A)[S]!=7||Object.keys($assign({},B)).join(\"\")!=K})?function assign(target,source){var T=toObject(target);var aLen=arguments.length;var index=1;var getSymbols=gOPS.f;var isEnum=pIE.f;while(aLen>index){var S=IObject(arguments[index++]);var keys=getSymbols?getKeys(S).concat(getSymbols(S)):getKeys(S);var length=keys.length;var j=0;var key;while(length>j)if(isEnum.call(S,key=keys[j++]))T[key]=S[key]}return T}:$assign},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(166),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(167);module.exports=__webpack_require__(7).Math.sign},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Math\",{sign:__webpack_require__(168)})},function(module,exports){module.exports=Math.sign||function sign(x){return(x=+x)==0||x!=x?x:x<0?-1:1}},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(170),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(171);var $Object=__webpack_require__(7).Object;module.exports=function defineProperty(it,key,desc){return $Object.defineProperty(it,key,desc)}},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S+$export.F*!__webpack_require__(21),\"Object\",{defineProperty:__webpack_require__(20).f})},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var string=\"string\";var bool=\"boolean\";var number=\"number\";var object=\"object\";var colorOptions={fill:{string:string},stroke:{string:string},strokeWidth:{number:number},__type__:{string:string,object:object,undefined:\"undefined\"}};var allOptions={animationAutoStart:{boolean:bool,undefined:\"undefined\"},animationInterval:{number:number},animationPreload:{boolean:bool},axisColor:{string:string},backgroundColor:colorOptions,xBarWidth:{number:number,undefined:\"undefined\"},yBarWidth:{number:number,undefined:\"undefined\"},cameraPosition:{distance:{number:number},horizontal:{number:number},vertical:{number:number},__type__:{object:object}},xCenter:{string:string},yCenter:{string:string},dataColor:colorOptions,dotSizeMinFraction:{number:number},dotSizeMaxFraction:{number:number},dotSizeRatio:{number:number},filterLabel:{string:string},gridColor:{string:string},onclick:{function:\"function\"},keepAspectRatio:{boolean:bool},xLabel:{string:string},yLabel:{string:string},zLabel:{string:string},legendLabel:{string:string},xMin:{number:number,undefined:\"undefined\"},yMin:{number:number,undefined:\"undefined\"},zMin:{number:number,undefined:\"undefined\"},xMax:{number:number,undefined:\"undefined\"},yMax:{number:number,undefined:\"undefined\"},zMax:{number:number,undefined:\"undefined\"},showAnimationControls:{boolean:bool,undefined:\"undefined\"},showGrid:{boolean:bool},showLegend:{boolean:bool,undefined:\"undefined\"},showPerspective:{boolean:bool},showShadow:{boolean:bool},showXAxis:{boolean:bool},showYAxis:{boolean:bool},showZAxis:{boolean:bool},xStep:{number:number,undefined:\"undefined\"},yStep:{number:number,undefined:\"undefined\"},zStep:{number:number,undefined:\"undefined\"},style:{number:number,string:[\"bar\",\"bar-color\",\"bar-size\",\"dot\",\"dot-line\",\"dot-color\",\"dot-size\",\"line\",\"grid\",\"surface\"]},tooltip:{boolean:bool,function:\"function\"},tooltipStyle:{content:{color:{string:string},background:{string:string},border:{string:string},borderRadius:{string:string},boxShadow:{string:string},padding:{string:string},__type__:{object:object}},line:{borderLeft:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},dot:{border:{string:string},borderRadius:{string:string},height:{string:string},width:{string:string},__type__:{object:object}},__type__:{object:object}},xValueLabel:{function:\"function\"},yValueLabel:{function:\"function\"},zValueLabel:{function:\"function\"},valueMax:{number:number,undefined:\"undefined\"},valueMin:{number:number,undefined:\"undefined\"},verticalRatio:{number:number},height:{string:string},width:{string:string},__type__:{object:object}};exports.allOptions=allOptions},function(module,exports,__webpack_require__){\"use strict\";var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(174);var Filter=__webpack_require__(96);var Settings=__webpack_require__(94);var Point3d=__webpack_require__(34);function DataGroup(){this.dataTable=null}DataGroup.prototype.initializeData=function(graph3d,rawData,style){if(rawData===undefined)return;if(Array.isArray(rawData)){rawData=new DataSet(rawData)}var data;if(rawData instanceof DataSet||rawData instanceof DataView){data=rawData.get()}else{throw new Error(\"Array, DataSet, or DataView expected\")}if(data.length==0)return;this.style=style;if(this.dataSet){this.dataSet.off(\"*\",this._onChange)}this.dataSet=rawData;this.dataTable=data;var me=this;this._onChange=function(){graph3d.setData(me.dataSet)};this.dataSet.on(\"*\",this._onChange);this.colX=\"x\";this.colY=\"y\";this.colZ=\"z\";var withBars=graph3d.hasBars(style);if(withBars){if(graph3d.defaultXBarWidth!==undefined){this.xBarWidth=graph3d.defaultXBarWidth}else{this.xBarWidth=this.getSmallestDifference(data,this.colX)||1}if(graph3d.defaultYBarWidth!==undefined){this.yBarWidth=graph3d.defaultYBarWidth}else{this.yBarWidth=this.getSmallestDifference(data,this.colY)||1}}this._initializeRange(data,this.colX,graph3d,withBars);this._initializeRange(data,this.colY,graph3d,withBars);this._initializeRange(data,this.colZ,graph3d,false);if(data[0].hasOwnProperty(\"style\")){this.colValue=\"style\";var valueRange=this.getColumnRange(data,this.colValue);this._setRangeDefaults(valueRange,graph3d.defaultValueMin,graph3d.defaultValueMax);this.valueRange=valueRange}var table=this.getDataTable();if(table[0].hasOwnProperty(\"filter\")){if(this.dataFilter===undefined){this.dataFilter=new Filter(this,\"filter\",graph3d);this.dataFilter.setOnLoadCallback(function(){graph3d.redraw()})}}var dataPoints;if(this.dataFilter){dataPoints=this.dataFilter._getDataPoints()}else{dataPoints=this._getDataPoints(this.getDataTable())}return dataPoints};DataGroup.prototype._collectRangeSettings=function(column,graph3d){var index=[\"x\",\"y\",\"z\"].indexOf(column);if(index==-1){throw new Error(\"Column '\"+column+\"' invalid\")}var upper=column.toUpperCase();return{barWidth:this[column+\"BarWidth\"],min:graph3d[\"default\"+upper+\"Min\"],max:graph3d[\"default\"+upper+\"Max\"],step:graph3d[\"default\"+upper+\"Step\"],range_label:column+\"Range\",step_label:column+\"Step\"}};DataGroup.prototype._initializeRange=function(data,column,graph3d,withBars){var NUMSTEPS=5;var settings=this._collectRangeSettings(column,graph3d);var range=this.getColumnRange(data,column);if(withBars&&column!=\"z\"){range.expand(settings.barWidth/2)}this._setRangeDefaults(range,settings.min,settings.max);this[settings.range_label]=range;this[settings.step_label]=settings.step!==undefined?settings.step:range.range()/NUMSTEPS};DataGroup.prototype.getDistinctValues=function(column,data){if(data===undefined){data=this.dataTable}var values=[];for(var i=0;i<data.length;i++){var value=data[i][column]||0;if(values.indexOf(value)===-1){values.push(value)}}return values.sort(function(a,b){return a-b})};DataGroup.prototype.getSmallestDifference=function(data,column){var values=this.getDistinctValues(data,column);var smallest_diff=null;for(var i=1;i<values.length;i++){var diff=values[i]-values[i-1];if(smallest_diff==null||smallest_diff>diff){smallest_diff=diff}}return smallest_diff};DataGroup.prototype.getColumnRange=function(data,column){var range=new Range;for(var i=0;i<data.length;i++){var item=data[i][column];range.adjust(item)}return range};DataGroup.prototype.getNumberOfRows=function(){return this.dataTable.length};DataGroup.prototype._setRangeDefaults=function(range,defaultMin,defaultMax){if(defaultMin!==undefined){range.min=defaultMin}if(defaultMax!==undefined){range.max=defaultMax}if(range.max<=range.min)range.max=range.min+1};DataGroup.prototype.getDataTable=function(){return this.dataTable};DataGroup.prototype.getDataSet=function(){return this.dataSet};DataGroup.prototype.getDataPoints=function(data){var dataPoints=[];for(var i=0;i<data.length;i++){var point=new Point3d;point.x=data[i][this.colX]||0;point.y=data[i][this.colY]||0;point.z=data[i][this.colZ]||0;point.data=data[i];if(this.colValue!==undefined){point.value=data[i][this.colValue]||0}var obj={};obj.point=point;obj.bottom=new Point3d(point.x,point.y,this.zRange.min);obj.trans=undefined;obj.screen=undefined;dataPoints.push(obj)}return dataPoints};DataGroup.prototype.initDataAsMatrix=function(data){var x,y,i,obj;var dataX=this.getDistinctValues(this.colX,data);var dataY=this.getDistinctValues(this.colY,data);var dataPoints=this.getDataPoints(data);var dataMatrix=[];for(i=0;i<dataPoints.length;i++){obj=dataPoints[i];var xIndex=dataX.indexOf(obj.point.x);var yIndex=dataY.indexOf(obj.point.y);if(dataMatrix[xIndex]===undefined){dataMatrix[xIndex]=[]}dataMatrix[xIndex][yIndex]=obj}for(x=0;x<dataMatrix.length;x++){for(y=0;y<dataMatrix[x].length;y++){if(dataMatrix[x][y]){dataMatrix[x][y].pointRight=x<dataMatrix.length-1?dataMatrix[x+1][y]:undefined;dataMatrix[x][y].pointTop=y<dataMatrix[x].length-1?dataMatrix[x][y+1]:undefined;dataMatrix[x][y].pointCross=x<dataMatrix.length-1&&y<dataMatrix[x].length-1?dataMatrix[x+1][y+1]:undefined}}}return dataPoints};DataGroup.prototype.getInfo=function(){var dataFilter=this.dataFilter;if(!dataFilter)return undefined;return dataFilter.getLabel()+\": \"+dataFilter.getSelectedValue()};DataGroup.prototype.reload=function(){if(this.dataTable){this.setData(this.dataTable)}};DataGroup.prototype._getDataPoints=function(data){var dataPoints=[];if(this.style===Settings.STYLE.GRID||this.style===Settings.STYLE.SURFACE){dataPoints=this.initDataAsMatrix(data)}else{this._checkValueField(data);dataPoints=this.getDataPoints(data);if(this.style===Settings.STYLE.LINE){for(var i=0;i<dataPoints.length;i++){if(i>0){dataPoints[i-1].pointNext=dataPoints[i]}}}}return dataPoints};DataGroup.prototype._checkValueField=function(data){var hasValueField=this.style===Settings.STYLE.BARCOLOR||this.style===Settings.STYLE.BARSIZE||this.style===Settings.STYLE.DOTCOLOR||this.style===Settings.STYLE.DOTSIZE;if(!hasValueField){return}if(this.colValue===undefined){throw new Error(\"Expected data to have \"+\" field 'style' \"+\" for graph style '\"+this.style+\"'\")}if(data[0][this.colValue]===undefined){throw new Error(\"Expected data to have \"+\" field '\"+this.colValue+\"' \"+\" for graph style '\"+this.style+\"'\")}};module.exports=DataGroup},function(module,exports,__webpack_require__){\"use strict\";function Range(){this.min=undefined;this.max=undefined}Range.prototype.adjust=function(value){if(value===undefined)return;if(this.min===undefined||this.min>value){this.min=value}if(this.max===undefined||this.max<value){this.max=value}};Range.prototype.combine=function(range){this.add(range.min);this.add(range.max)};Range.prototype.expand=function(val){if(val===undefined){return}var newMin=this.min-val;var newMax=this.max+val;if(newMin>newMax){throw new Error(\"Passed expansion value makes range invalid\")}this.min=newMin;this.max=newMax};Range.prototype.range=function(){return this.max-this.min};Range.prototype.center=function(){return(this.min+this.max)/2};module.exports=Range},function(module,exports,__webpack_require__){\"use strict\";var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__;(function(factory){if(true){!(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,__WEBPACK_AMD_DEFINE_RESULT__=typeof __WEBPACK_AMD_DEFINE_FACTORY__===\"function\"?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof exports===\"object\"){module.exports=factory()}else{window.propagating=factory()}})(function(){var _firstTarget=null;return function propagating(hammer,options){var _options=options||{preventDefault:false};if(hammer.Manager){var Hammer=hammer;var PropagatingHammer=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer(element,o),o)};Hammer.assign(PropagatingHammer,Hammer);PropagatingHammer.Manager=function(element,options){var o=Object.create(_options);if(options)Hammer.assign(o,options);return propagating(new Hammer.Manager(element,o),o)};return PropagatingHammer}var wrapper=Object.create(hammer);var element=hammer.element;if(!element.hammer)element.hammer=[];element.hammer.push(wrapper);hammer.on(\"hammer.input\",function(event){if(_options.preventDefault===true||_options.preventDefault===event.pointerType){event.preventDefault()}if(event.isFirst){_firstTarget=event.target}});wrapper._handlers={};wrapper.on=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(!_handlers){wrapper._handlers[event]=_handlers=[];hammer.on(event,propagatedHandler)}_handlers.push(handler)});return wrapper};wrapper.off=function(events,handler){split(events).forEach(function(event){var _handlers=wrapper._handlers[event];if(_handlers){_handlers=handler?_handlers.filter(function(h){return h!==handler}):[];if(_handlers.length>0){wrapper._handlers[event]=_handlers}else{hammer.off(event,propagatedHandler);delete wrapper._handlers[event]}}});return wrapper};wrapper.emit=function(eventType,event){_firstTarget=event.target;hammer.emit(eventType,event)};wrapper.destroy=function(){var hammers=hammer.element.hammer;var idx=hammers.indexOf(wrapper);if(idx!==-1)hammers.splice(idx,1);if(!hammers.length)delete hammer.element.hammer;wrapper._handlers={};hammer.destroy()};function split(events){return events.match(/[^ ]+/g)}function propagatedHandler(event){if(event.type!==\"hammer.input\"){if(!event.srcEvent._handled){event.srcEvent._handled={}}if(event.srcEvent._handled[event.type]){return}else{event.srcEvent._handled[event.type]=true}}var stopped=false\n;event.stopPropagation=function(){stopped=true};var srcStop=event.srcEvent.stopPropagation.bind(event.srcEvent);if(typeof srcStop==\"function\"){event.srcEvent.stopPropagation=function(){srcStop();event.stopPropagation()}}event.firstTarget=_firstTarget;var elem=_firstTarget;while(elem&&!stopped){var elemHammer=elem.hammer;if(elemHammer){var _handlers;for(var k=0;k<elemHammer.length;k++){_handlers=elemHammer[k]._handlers[event.type];if(_handlers)for(var i=0;i<_handlers.length&&!stopped;i++){_handlers[i](event)}}}elem=elem.parentNode}}return wrapper}})},function(module,exports,__webpack_require__){var __WEBPACK_AMD_DEFINE_RESULT__;(function(window,document,exportName,undefined){\"use strict\";var VENDOR_PREFIXES=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"];var TEST_ELEMENT=document.createElement(\"div\");var TYPE_FUNCTION=\"function\";var round=Math.round;var abs=Math.abs;var now=Date.now;function setTimeoutContext(fn,timeout,context){return setTimeout(bindFn(fn,context),timeout)}function invokeArrayArg(arg,fn,context){if(Array.isArray(arg)){each(arg,context[fn],context);return true}return false}function each(obj,iterator,context){var i;if(!obj){return}if(obj.forEach){obj.forEach(iterator,context)}else if(obj.length!==undefined){i=0;while(i<obj.length){iterator.call(context,obj[i],i,obj);i++}}else{for(i in obj){obj.hasOwnProperty(i)&&iterator.call(context,obj[i],i,obj)}}}function deprecate(method,name,message){var deprecationMessage=\"DEPRECATED METHOD: \"+name+\"\\n\"+message+\" AT \\n\";return function(){var e=new Error(\"get-stack-trace\");var stack=e&&e.stack?e.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\";var log=window.console&&(window.console.warn||window.console.log);if(log){log.call(window.console,deprecationMessage,stack)}return method.apply(this,arguments)}}var assign;if(typeof Object.assign!==\"function\"){assign=function assign(target){if(target===undefined||target===null){throw new TypeError(\"Cannot convert undefined or null to object\")}var output=Object(target);for(var index=1;index<arguments.length;index++){var source=arguments[index];if(source!==undefined&&source!==null){for(var nextKey in source){if(source.hasOwnProperty(nextKey)){output[nextKey]=source[nextKey]}}}}return output}}else{assign=Object.assign}var extend=deprecate(function extend(dest,src,merge){var keys=Object.keys(src);var i=0;while(i<keys.length){if(!merge||merge&&dest[keys[i]]===undefined){dest[keys[i]]=src[keys[i]]}i++}return dest},\"extend\",\"Use `assign`.\");var merge=deprecate(function merge(dest,src){return extend(dest,src,true)},\"merge\",\"Use `assign`.\");function inherit(child,base,properties){var baseP=base.prototype,childP;childP=child.prototype=Object.create(baseP);childP.constructor=child;childP._super=baseP;if(properties){assign(childP,properties)}}function bindFn(fn,context){return function boundFn(){return fn.apply(context,arguments)}}function boolOrFn(val,args){if(typeof val==TYPE_FUNCTION){return val.apply(args?args[0]||undefined:undefined,args)}return val}function ifUndefined(val1,val2){return val1===undefined?val2:val1}function addEventListeners(target,types,handler){each(splitStr(types),function(type){target.addEventListener(type,handler,false)})}function removeEventListeners(target,types,handler){each(splitStr(types),function(type){target.removeEventListener(type,handler,false)})}function hasParent(node,parent){while(node){if(node==parent){return true}node=node.parentNode}return false}function inStr(str,find){return str.indexOf(find)>-1}function splitStr(str){return str.trim().split(/\\s+/g)}function inArray(src,find,findByKey){if(src.indexOf&&!findByKey){return src.indexOf(find)}else{var i=0;while(i<src.length){if(findByKey&&src[i][findByKey]==find||!findByKey&&src[i]===find){return i}i++}return-1}}function toArray(obj){return Array.prototype.slice.call(obj,0)}function uniqueArray(src,key,sort){var results=[];var values=[];var i=0;while(i<src.length){var val=key?src[i][key]:src[i];if(inArray(values,val)<0){results.push(src[i])}values[i]=val;i++}if(sort){if(!key){results=results.sort()}else{results=results.sort(function sortUniqueArray(a,b){return a[key]>b[key]})}}return results}function prefixed(obj,property){var prefix,prop;var camelProp=property[0].toUpperCase()+property.slice(1);var i=0;while(i<VENDOR_PREFIXES.length){prefix=VENDOR_PREFIXES[i];prop=prefix?prefix+camelProp:property;if(prop in obj){return prop}i++}return undefined}var _uniqueId=1;function uniqueId(){return _uniqueId++}function getWindowForElement(element){var doc=element.ownerDocument||element;return doc.defaultView||doc.parentWindow||window}var MOBILE_REGEX=/mobile|tablet|ip(ad|hone|od)|android/i;var SUPPORT_TOUCH=\"ontouchstart\"in window;var SUPPORT_POINTER_EVENTS=prefixed(window,\"PointerEvent\")!==undefined;var SUPPORT_ONLY_TOUCH=SUPPORT_TOUCH&&MOBILE_REGEX.test(navigator.userAgent);var INPUT_TYPE_TOUCH=\"touch\";var INPUT_TYPE_PEN=\"pen\";var INPUT_TYPE_MOUSE=\"mouse\";var INPUT_TYPE_KINECT=\"kinect\";var COMPUTE_INTERVAL=25;var INPUT_START=1;var INPUT_MOVE=2;var INPUT_END=4;var INPUT_CANCEL=8;var DIRECTION_NONE=1;var DIRECTION_LEFT=2;var DIRECTION_RIGHT=4;var DIRECTION_UP=8;var DIRECTION_DOWN=16;var DIRECTION_HORIZONTAL=DIRECTION_LEFT|DIRECTION_RIGHT;var DIRECTION_VERTICAL=DIRECTION_UP|DIRECTION_DOWN;var DIRECTION_ALL=DIRECTION_HORIZONTAL|DIRECTION_VERTICAL;var PROPS_XY=[\"x\",\"y\"];var PROPS_CLIENT_XY=[\"clientX\",\"clientY\"];function Input(manager,callback){var self=this;this.manager=manager;this.callback=callback;this.element=manager.element;this.target=manager.options.inputTarget;this.domHandler=function(ev){if(boolOrFn(manager.options.enable,[manager])){self.handler(ev)}};this.init()}Input.prototype={handler:function(){},init:function(){this.evEl&&addEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&addEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&addEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&removeEventListeners(this.element,this.evEl,this.domHandler);this.evTarget&&removeEventListeners(this.target,this.evTarget,this.domHandler);this.evWin&&removeEventListeners(getWindowForElement(this.element),this.evWin,this.domHandler)}};function createInputInstance(manager){var Type;var inputClass=manager.options.inputClass;if(inputClass){Type=inputClass}else if(SUPPORT_POINTER_EVENTS){Type=PointerEventInput}else if(SUPPORT_ONLY_TOUCH){Type=TouchInput}else if(!SUPPORT_TOUCH){Type=MouseInput}else{Type=TouchMouseInput}return new Type(manager,inputHandler)}function inputHandler(manager,eventType,input){var pointersLen=input.pointers.length;var changedPointersLen=input.changedPointers.length;var isFirst=eventType&INPUT_START&&pointersLen-changedPointersLen===0;var isFinal=eventType&(INPUT_END|INPUT_CANCEL)&&pointersLen-changedPointersLen===0;input.isFirst=!!isFirst;input.isFinal=!!isFinal;if(isFirst){manager.session={}}input.eventType=eventType;computeInputData(manager,input);manager.emit(\"hammer.input\",input);manager.recognize(input);manager.session.prevInput=input}function computeInputData(manager,input){var session=manager.session;var pointers=input.pointers;var pointersLength=pointers.length;if(!session.firstInput){session.firstInput=simpleCloneInputData(input)}if(pointersLength>1&&!session.firstMultiple){session.firstMultiple=simpleCloneInputData(input)}else if(pointersLength===1){session.firstMultiple=false}var firstInput=session.firstInput;var firstMultiple=session.firstMultiple;var offsetCenter=firstMultiple?firstMultiple.center:firstInput.center;var center=input.center=getCenter(pointers);input.timeStamp=now();input.deltaTime=input.timeStamp-firstInput.timeStamp;input.angle=getAngle(offsetCenter,center);input.distance=getDistance(offsetCenter,center);computeDeltaXY(session,input);input.offsetDirection=getDirection(input.deltaX,input.deltaY);var overallVelocity=getVelocity(input.deltaTime,input.deltaX,input.deltaY);input.overallVelocityX=overallVelocity.x;input.overallVelocityY=overallVelocity.y;input.overallVelocity=abs(overallVelocity.x)>abs(overallVelocity.y)?overallVelocity.x:overallVelocity.y;input.scale=firstMultiple?getScale(firstMultiple.pointers,pointers):1;input.rotation=firstMultiple?getRotation(firstMultiple.pointers,pointers):0;input.maxPointers=!session.prevInput?input.pointers.length:input.pointers.length>session.prevInput.maxPointers?input.pointers.length:session.prevInput.maxPointers;computeIntervalInputData(session,input);var target=manager.element;if(hasParent(input.srcEvent.target,target)){target=input.srcEvent.target}input.target=target}function computeDeltaXY(session,input){var center=input.center;var offset=session.offsetDelta||{};var prevDelta=session.prevDelta||{};var prevInput=session.prevInput||{};if(input.eventType===INPUT_START||prevInput.eventType===INPUT_END){prevDelta=session.prevDelta={x:prevInput.deltaX||0,y:prevInput.deltaY||0};offset=session.offsetDelta={x:center.x,y:center.y}}input.deltaX=prevDelta.x+(center.x-offset.x);input.deltaY=prevDelta.y+(center.y-offset.y)}function computeIntervalInputData(session,input){var last=session.lastInterval||input,deltaTime=input.timeStamp-last.timeStamp,velocity,velocityX,velocityY,direction;if(input.eventType!=INPUT_CANCEL&&(deltaTime>COMPUTE_INTERVAL||last.velocity===undefined)){var deltaX=input.deltaX-last.deltaX;var deltaY=input.deltaY-last.deltaY;var v=getVelocity(deltaTime,deltaX,deltaY);velocityX=v.x;velocityY=v.y;velocity=abs(v.x)>abs(v.y)?v.x:v.y;direction=getDirection(deltaX,deltaY);session.lastInterval=input}else{velocity=last.velocity;velocityX=last.velocityX;velocityY=last.velocityY;direction=last.direction}input.velocity=velocity;input.velocityX=velocityX;input.velocityY=velocityY;input.direction=direction}function simpleCloneInputData(input){var pointers=[];var i=0;while(i<input.pointers.length){pointers[i]={clientX:round(input.pointers[i].clientX),clientY:round(input.pointers[i].clientY)};i++}return{timeStamp:now(),pointers:pointers,center:getCenter(pointers),deltaX:input.deltaX,deltaY:input.deltaY}}function getCenter(pointers){var pointersLength=pointers.length;if(pointersLength===1){return{x:round(pointers[0].clientX),y:round(pointers[0].clientY)}}var x=0,y=0,i=0;while(i<pointersLength){x+=pointers[i].clientX;y+=pointers[i].clientY;i++}return{x:round(x/pointersLength),y:round(y/pointersLength)}}function getVelocity(deltaTime,x,y){return{x:x/deltaTime||0,y:y/deltaTime||0}}function getDirection(x,y){if(x===y){return DIRECTION_NONE}if(abs(x)>=abs(y)){return x<0?DIRECTION_LEFT:DIRECTION_RIGHT}return y<0?DIRECTION_UP:DIRECTION_DOWN}function getDistance(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.sqrt(x*x+y*y)}function getAngle(p1,p2,props){if(!props){props=PROPS_XY}var x=p2[props[0]]-p1[props[0]],y=p2[props[1]]-p1[props[1]];return Math.atan2(y,x)*180/Math.PI}function getRotation(start,end){return getAngle(end[1],end[0],PROPS_CLIENT_XY)+getAngle(start[1],start[0],PROPS_CLIENT_XY)}function getScale(start,end){return getDistance(end[0],end[1],PROPS_CLIENT_XY)/getDistance(start[0],start[1],PROPS_CLIENT_XY)}var MOUSE_INPUT_MAP={mousedown:INPUT_START,mousemove:INPUT_MOVE,mouseup:INPUT_END};var MOUSE_ELEMENT_EVENTS=\"mousedown\";var MOUSE_WINDOW_EVENTS=\"mousemove mouseup\";function MouseInput(){this.evEl=MOUSE_ELEMENT_EVENTS;this.evWin=MOUSE_WINDOW_EVENTS;this.pressed=false;Input.apply(this,arguments)}inherit(MouseInput,Input,{handler:function MEhandler(ev){var eventType=MOUSE_INPUT_MAP[ev.type];if(eventType&INPUT_START&&ev.button===0){this.pressed=true}if(eventType&INPUT_MOVE&&ev.which!==1){eventType=INPUT_END}if(!this.pressed){return}if(eventType&INPUT_END){this.pressed=false}this.callback(this.manager,eventType,{pointers:[ev],changedPointers:[ev],pointerType:INPUT_TYPE_MOUSE,srcEvent:ev})}});var POINTER_INPUT_MAP={pointerdown:INPUT_START,pointermove:INPUT_MOVE,pointerup:INPUT_END,pointercancel:INPUT_CANCEL,pointerout:INPUT_CANCEL};var IE10_POINTER_TYPE_ENUM={2:INPUT_TYPE_TOUCH,3:INPUT_TYPE_PEN,4:INPUT_TYPE_MOUSE,5:INPUT_TYPE_KINECT};var POINTER_ELEMENT_EVENTS=\"pointerdown\";var POINTER_WINDOW_EVENTS=\"pointermove pointerup pointercancel\";if(window.MSPointerEvent&&!window.PointerEvent){POINTER_ELEMENT_EVENTS=\"MSPointerDown\";POINTER_WINDOW_EVENTS=\"MSPointerMove MSPointerUp MSPointerCancel\"}function PointerEventInput(){this.evEl=POINTER_ELEMENT_EVENTS;this.evWin=POINTER_WINDOW_EVENTS;Input.apply(this,arguments);this.store=this.manager.session.pointerEvents=[]}inherit(PointerEventInput,Input,{handler:function PEhandler(ev){var store=this.store;var removePointer=false;var eventTypeNormalized=ev.type.toLowerCase().replace(\"ms\",\"\");var eventType=POINTER_INPUT_MAP[eventTypeNormalized];var pointerType=IE10_POINTER_TYPE_ENUM[ev.pointerType]||ev.pointerType;var isTouch=pointerType==INPUT_TYPE_TOUCH;var storeIndex=inArray(store,ev.pointerId,\"pointerId\");if(eventType&INPUT_START&&(ev.button===0||isTouch)){if(storeIndex<0){store.push(ev);storeIndex=store.length-1}}else if(eventType&(INPUT_END|INPUT_CANCEL)){removePointer=true}if(storeIndex<0){return}store[storeIndex]=ev;this.callback(this.manager,eventType,{pointers:store,changedPointers:[ev],pointerType:pointerType,srcEvent:ev});if(removePointer){store.splice(storeIndex,1)}}});var SINGLE_TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var SINGLE_TOUCH_TARGET_EVENTS=\"touchstart\";var SINGLE_TOUCH_WINDOW_EVENTS=\"touchstart touchmove touchend touchcancel\";function SingleTouchInput(){this.evTarget=SINGLE_TOUCH_TARGET_EVENTS;this.evWin=SINGLE_TOUCH_WINDOW_EVENTS;this.started=false;Input.apply(this,arguments)}inherit(SingleTouchInput,Input,{handler:function TEhandler(ev){var type=SINGLE_TOUCH_INPUT_MAP[ev.type];if(type===INPUT_START){this.started=true}if(!this.started){return}var touches=normalizeSingleTouches.call(this,ev,type);if(type&(INPUT_END|INPUT_CANCEL)&&touches[0].length-touches[1].length===0){this.started=false}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function normalizeSingleTouches(ev,type){var all=toArray(ev.touches);var changed=toArray(ev.changedTouches);if(type&(INPUT_END|INPUT_CANCEL)){all=uniqueArray(all.concat(changed),\"identifier\",true)}return[all,changed]}var TOUCH_INPUT_MAP={touchstart:INPUT_START,touchmove:INPUT_MOVE,touchend:INPUT_END,touchcancel:INPUT_CANCEL};var TOUCH_TARGET_EVENTS=\"touchstart touchmove touchend touchcancel\";function TouchInput(){this.evTarget=TOUCH_TARGET_EVENTS;this.targetIds={};Input.apply(this,arguments)}inherit(TouchInput,Input,{handler:function MTEhandler(ev){var type=TOUCH_INPUT_MAP[ev.type];var touches=getTouches.call(this,ev,type);if(!touches){return}this.callback(this.manager,type,{pointers:touches[0],changedPointers:touches[1],pointerType:INPUT_TYPE_TOUCH,srcEvent:ev})}});function getTouches(ev,type){var allTouches=toArray(ev.touches);var targetIds=this.targetIds;if(type&(INPUT_START|INPUT_MOVE)&&allTouches.length===1){targetIds[allTouches[0].identifier]=true;return[allTouches,allTouches]}var i,targetTouches,changedTouches=toArray(ev.changedTouches),changedTargetTouches=[],target=this.target;targetTouches=allTouches.filter(function(touch){return hasParent(touch.target,target)});if(type===INPUT_START){i=0;while(i<targetTouches.length){targetIds[targetTouches[i].identifier]=true;i++}}i=0;while(i<changedTouches.length){if(targetIds[changedTouches[i].identifier]){changedTargetTouches.push(changedTouches[i])}if(type&(INPUT_END|INPUT_CANCEL)){delete targetIds[changedTouches[i].identifier]}i++}if(!changedTargetTouches.length){return}return[uniqueArray(targetTouches.concat(changedTargetTouches),\"identifier\",true),changedTargetTouches]}var DEDUP_TIMEOUT=2500;var DEDUP_DISTANCE=25;function TouchMouseInput(){Input.apply(this,arguments);var handler=bindFn(this.handler,this);this.touch=new TouchInput(this.manager,handler);this.mouse=new MouseInput(this.manager,handler);this.primaryTouch=null;this.lastTouches=[]}inherit(TouchMouseInput,Input,{handler:function TMEhandler(manager,inputEvent,inputData){var isTouch=inputData.pointerType==INPUT_TYPE_TOUCH,isMouse=inputData.pointerType==INPUT_TYPE_MOUSE;if(isMouse&&inputData.sourceCapabilities&&inputData.sourceCapabilities.firesTouchEvents){return}if(isTouch){recordTouches.call(this,inputEvent,inputData)}else if(isMouse&&isSyntheticEvent.call(this,inputData)){return}this.callback(manager,inputEvent,inputData)},destroy:function destroy(){this.touch.destroy();this.mouse.destroy()}});function recordTouches(eventType,eventData){if(eventType&INPUT_START){this.primaryTouch=eventData.changedPointers[0].identifier;setLastTouch.call(this,eventData)}else if(eventType&(INPUT_END|INPUT_CANCEL)){setLastTouch.call(this,eventData)}}function setLastTouch(eventData){var touch=eventData.changedPointers[0];if(touch.identifier===this.primaryTouch){var lastTouch={x:touch.clientX,y:touch.clientY};this.lastTouches.push(lastTouch);var lts=this.lastTouches;var removeLastTouch=function(){var i=lts.indexOf(lastTouch);if(i>-1){lts.splice(i,1)}};setTimeout(removeLastTouch,DEDUP_TIMEOUT)}}function isSyntheticEvent(eventData){var x=eventData.srcEvent.clientX,y=eventData.srcEvent.clientY;for(var i=0;i<this.lastTouches.length;i++){var t=this.lastTouches[i];var dx=Math.abs(x-t.x),dy=Math.abs(y-t.y);if(dx<=DEDUP_DISTANCE&&dy<=DEDUP_DISTANCE){return true}}return false}var PREFIXED_TOUCH_ACTION=prefixed(TEST_ELEMENT.style,\"touchAction\");var NATIVE_TOUCH_ACTION=PREFIXED_TOUCH_ACTION!==undefined;var TOUCH_ACTION_COMPUTE=\"compute\";var TOUCH_ACTION_AUTO=\"auto\";var TOUCH_ACTION_MANIPULATION=\"manipulation\";var TOUCH_ACTION_NONE=\"none\";var TOUCH_ACTION_PAN_X=\"pan-x\";var TOUCH_ACTION_PAN_Y=\"pan-y\";var TOUCH_ACTION_MAP=getTouchActionProps();function TouchAction(manager,value){this.manager=manager;this.set(value)}TouchAction.prototype={set:function(value){if(value==TOUCH_ACTION_COMPUTE){value=this.compute()}if(NATIVE_TOUCH_ACTION&&this.manager.element.style&&TOUCH_ACTION_MAP[value]){this.manager.element.style[PREFIXED_TOUCH_ACTION]=value}this.actions=value.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var actions=[];each(this.manager.recognizers,function(recognizer){if(boolOrFn(recognizer.options.enable,[recognizer])){actions=actions.concat(recognizer.getTouchAction())}});return cleanTouchActions(actions.join(\" \"))},preventDefaults:function(input){var srcEvent=input.srcEvent;var direction=input.offsetDirection;if(this.manager.session.prevented){srcEvent.preventDefault();return}var actions=this.actions;var hasNone=inStr(actions,TOUCH_ACTION_NONE)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_NONE];var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_Y];var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X)&&!TOUCH_ACTION_MAP[TOUCH_ACTION_PAN_X];if(hasNone){var isTapPointer=input.pointers.length===1;var isTapMovement=input.distance<2;var isTapTouchTime=input.deltaTime<250;if(isTapPointer&&isTapMovement&&isTapTouchTime){return}}if(hasPanX&&hasPanY){return}if(hasNone||hasPanY&&direction&DIRECTION_HORIZONTAL||hasPanX&&direction&DIRECTION_VERTICAL){return this.preventSrc(srcEvent)}},preventSrc:function(srcEvent){this.manager.session.prevented=true;srcEvent.preventDefault()}};function cleanTouchActions(actions){if(inStr(actions,TOUCH_ACTION_NONE)){return TOUCH_ACTION_NONE}var hasPanX=inStr(actions,TOUCH_ACTION_PAN_X);var hasPanY=inStr(actions,TOUCH_ACTION_PAN_Y);if(hasPanX&&hasPanY){return TOUCH_ACTION_NONE}if(hasPanX||hasPanY){return hasPanX?TOUCH_ACTION_PAN_X:TOUCH_ACTION_PAN_Y}if(inStr(actions,TOUCH_ACTION_MANIPULATION)){return TOUCH_ACTION_MANIPULATION}return TOUCH_ACTION_AUTO}function getTouchActionProps(){if(!NATIVE_TOUCH_ACTION){return false}var touchMap={};var cssSupports=window.CSS&&window.CSS.supports;[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(val){touchMap[val]=cssSupports?window.CSS.supports(\"touch-action\",val):true});return touchMap}var STATE_POSSIBLE=1;var STATE_BEGAN=2;var STATE_CHANGED=4;var STATE_ENDED=8;var STATE_RECOGNIZED=STATE_ENDED;var STATE_CANCELLED=16;var STATE_FAILED=32;function Recognizer(options){this.options=assign({},this.defaults,options||{});this.id=uniqueId();this.manager=null;this.options.enable=ifUndefined(this.options.enable,true);this.state=STATE_POSSIBLE;this.simultaneous={};this.requireFail=[]}Recognizer.prototype={defaults:{},set:function(options){assign(this.options,options);this.manager&&this.manager.touchAction.update();return this},recognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"recognizeWith\",this)){return this}var simultaneous=this.simultaneous;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(!simultaneous[otherRecognizer.id]){simultaneous[otherRecognizer.id]=otherRecognizer;otherRecognizer.recognizeWith(this)}return this},dropRecognizeWith:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRecognizeWith\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);delete this.simultaneous[otherRecognizer.id];return this},requireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"requireFailure\",this)){return this}var requireFail=this.requireFail;otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);if(inArray(requireFail,otherRecognizer)===-1){requireFail.push(otherRecognizer);otherRecognizer.requireFailure(this)}return this},dropRequireFailure:function(otherRecognizer){if(invokeArrayArg(otherRecognizer,\"dropRequireFailure\",this)){return this}otherRecognizer=getRecognizerByNameIfManager(otherRecognizer,this);var index=inArray(this.requireFail,otherRecognizer);if(index>-1){this.requireFail.splice(index,1)}return this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(otherRecognizer){return!!this.simultaneous[otherRecognizer.id]},emit:function(input){var self=this;var state=this.state;function emit(event){self.manager.emit(event,input)}if(state<STATE_ENDED){emit(self.options.event+stateStr(state))}emit(self.options.event);if(input.additionalEvent){emit(input.additionalEvent)}if(state>=STATE_ENDED){emit(self.options.event+stateStr(state))}},tryEmit:function(input){if(this.canEmit()){return this.emit(input)}this.state=STATE_FAILED},canEmit:function(){var i=0;while(i<this.requireFail.length){if(!(this.requireFail[i].state&(STATE_FAILED|STATE_POSSIBLE))){return false}i++}return true},recognize:function(inputData){var inputDataClone=assign({},inputData);if(!boolOrFn(this.options.enable,[this,inputDataClone])){this.reset();this.state=STATE_FAILED;return}if(this.state&(STATE_RECOGNIZED|STATE_CANCELLED|STATE_FAILED)){this.state=STATE_POSSIBLE}this.state=this.process(inputDataClone);if(this.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED|STATE_CANCELLED)){this.tryEmit(inputDataClone)}},process:function(inputData){},getTouchAction:function(){},reset:function(){}};function stateStr(state){if(state&STATE_CANCELLED){return\"cancel\"}else if(state&STATE_ENDED){return\"end\"}else if(state&STATE_CHANGED){return\"move\"}else if(state&STATE_BEGAN){return\"start\"}return\"\"}function directionStr(direction){if(direction==DIRECTION_DOWN){return\"down\"}else if(direction==DIRECTION_UP){return\"up\"}else if(direction==DIRECTION_LEFT){return\"left\"}else if(direction==DIRECTION_RIGHT){return\"right\"}return\"\"}function getRecognizerByNameIfManager(otherRecognizer,recognizer){var manager=recognizer.manager;if(manager){return manager.get(otherRecognizer)}return otherRecognizer}function AttrRecognizer(){Recognizer.apply(this,arguments)}inherit(AttrRecognizer,Recognizer,{defaults:{pointers:1},attrTest:function(input){var optionPointers=this.options.pointers;return optionPointers===0||input.pointers.length===optionPointers},process:function(input){var state=this.state;var eventType=input.eventType;var isRecognized=state&(STATE_BEGAN|STATE_CHANGED);var isValid=this.attrTest(input);if(isRecognized&&(eventType&INPUT_CANCEL||!isValid)){return state|STATE_CANCELLED}else if(isRecognized||isValid){if(eventType&INPUT_END){return state|STATE_ENDED}else if(!(state&STATE_BEGAN)){return STATE_BEGAN}return state|STATE_CHANGED}return STATE_FAILED}});function PanRecognizer(){AttrRecognizer.apply(this,arguments);this.pX=null;this.pY=null}inherit(PanRecognizer,AttrRecognizer,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:DIRECTION_ALL},getTouchAction:function(){var direction=this.options.direction;var actions=[];if(direction&DIRECTION_HORIZONTAL){actions.push(TOUCH_ACTION_PAN_Y)}if(direction&DIRECTION_VERTICAL){actions.push(TOUCH_ACTION_PAN_X)}return actions},directionTest:function(input){var options=this.options;var hasMoved=true;var distance=input.distance;var direction=input.direction;var x=input.deltaX;var y=input.deltaY;if(!(direction&options.direction)){if(options.direction&DIRECTION_HORIZONTAL){direction=x===0?DIRECTION_NONE:x<0?DIRECTION_LEFT:DIRECTION_RIGHT;hasMoved=x!=this.pX;distance=Math.abs(input.deltaX)}else{direction=y===0?DIRECTION_NONE:y<0?DIRECTION_UP:DIRECTION_DOWN;hasMoved=y!=this.pY;distance=Math.abs(input.deltaY)}}input.direction=direction;return hasMoved&&distance>options.threshold&&direction&options.direction},attrTest:function(input){return AttrRecognizer.prototype.attrTest.call(this,input)&&(this.state&STATE_BEGAN||!(this.state&STATE_BEGAN)&&this.directionTest(input))},emit:function(input){this.pX=input.deltaX;this.pY=input.deltaY;var direction=directionStr(input.direction);if(direction){input.additionalEvent=this.options.event+direction}this._super.emit.call(this,input)}});function PinchRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(PinchRecognizer,AttrRecognizer,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.scale-1)>this.options.threshold||this.state&STATE_BEGAN)},emit:function(input){if(input.scale!==1){var inOut=input.scale<1?\"in\":\"out\";input.additionalEvent=this.options.event+inOut}this._super.emit.call(this,input)}});function PressRecognizer(){Recognizer.apply(this,arguments);this._timer=null;this._input=null}inherit(PressRecognizer,Recognizer,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[TOUCH_ACTION_AUTO]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTime=input.deltaTime>options.time;this._input=input;if(!validMovement||!validPointers||input.eventType&(INPUT_END|INPUT_CANCEL)&&!validTime){this.reset()}else if(input.eventType&INPUT_START){this.reset();this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.time,this)}else if(input.eventType&INPUT_END){return STATE_RECOGNIZED}return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(input){if(this.state!==STATE_RECOGNIZED){return}if(input&&input.eventType&INPUT_END){this.manager.emit(this.options.event+\"up\",input)}else{this._input.timeStamp=now();this.manager.emit(this.options.event,this._input)}}});function RotateRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(RotateRecognizer,AttrRecognizer,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[TOUCH_ACTION_NONE]},attrTest:function(input){return this._super.attrTest.call(this,input)&&(Math.abs(input.rotation)>this.options.threshold||this.state&STATE_BEGAN)}});function SwipeRecognizer(){AttrRecognizer.apply(this,arguments)}inherit(SwipeRecognizer,AttrRecognizer,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:DIRECTION_HORIZONTAL|DIRECTION_VERTICAL,pointers:1},getTouchAction:function(){return PanRecognizer.prototype.getTouchAction.call(this)},attrTest:function(input){var direction=this.options.direction;var velocity;if(direction&(DIRECTION_HORIZONTAL|DIRECTION_VERTICAL)){velocity=input.overallVelocity}else if(direction&DIRECTION_HORIZONTAL){velocity=input.overallVelocityX}else if(direction&DIRECTION_VERTICAL){velocity=input.overallVelocityY}return this._super.attrTest.call(this,input)&&direction&input.offsetDirection&&input.distance>this.options.threshold&&input.maxPointers==this.options.pointers&&abs(velocity)>this.options.velocity&&input.eventType&INPUT_END},emit:function(input){var direction=directionStr(input.offsetDirection);if(direction){this.manager.emit(this.options.event+direction,input)}this.manager.emit(this.options.event,input)}});function TapRecognizer(){Recognizer.apply(this,arguments);this.pTime=false;this.pCenter=false;this._timer=null;this._input=null;this.count=0}inherit(TapRecognizer,Recognizer,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[TOUCH_ACTION_MANIPULATION]},process:function(input){var options=this.options;var validPointers=input.pointers.length===options.pointers;var validMovement=input.distance<options.threshold;var validTouchTime=input.deltaTime<options.time;this.reset();if(input.eventType&INPUT_START&&this.count===0){return this.failTimeout()}if(validMovement&&validTouchTime&&validPointers){if(input.eventType!=INPUT_END){return this.failTimeout()}var validInterval=this.pTime?input.timeStamp-this.pTime<options.interval:true;var validMultiTap=!this.pCenter||getDistance(this.pCenter,input.center)<options.posThreshold;this.pTime=input.timeStamp;this.pCenter=input.center;if(!validMultiTap||!validInterval){this.count=1}else{this.count+=1}this._input=input;var tapCount=this.count%options.taps;if(tapCount===0){if(!this.hasRequireFailures()){return STATE_RECOGNIZED}else{this._timer=setTimeoutContext(function(){this.state=STATE_RECOGNIZED;this.tryEmit()},options.interval,this);return STATE_BEGAN}}}return STATE_FAILED},failTimeout:function(){this._timer=setTimeoutContext(function(){this.state=STATE_FAILED},this.options.interval,this);return STATE_FAILED},reset:function(){clearTimeout(this._timer)},emit:function(){if(this.state==STATE_RECOGNIZED){this._input.tapCount=this.count;this.manager.emit(this.options.event,this._input)}}});function Hammer(element,options){options=options||{};options.recognizers=ifUndefined(options.recognizers,Hammer.defaults.preset);return new Manager(element,options)}Hammer.VERSION=\"2.0.7\";Hammer.defaults={domEvents:false,touchAction:TOUCH_ACTION_COMPUTE,enable:true,inputTarget:null,inputClass:null,preset:[[RotateRecognizer,{enable:false}],[PinchRecognizer,{enable:false},[\"rotate\"]],[SwipeRecognizer,{direction:DIRECTION_HORIZONTAL}],[PanRecognizer,{direction:DIRECTION_HORIZONTAL},[\"swipe\"]],[TapRecognizer],[TapRecognizer,{event:\"doubletap\",taps:2},[\"tap\"]],[PressRecognizer]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};var STOP=1;var FORCED_STOP=2;function Manager(element,options){this.options=assign({},Hammer.defaults,options||{});this.options.inputTarget=this.options.inputTarget||element;this.handlers={};this.session={};this.recognizers=[];this.oldCssProps={};this.element=element;this.input=createInputInstance(this);this.touchAction=new TouchAction(this,this.options.touchAction);toggleCssProps(this,true);each(this.options.recognizers,function(item){var recognizer=this.add(new item[0](item[1]));item[2]&&recognizer.recognizeWith(item[2]);item[3]&&recognizer.requireFailure(item[3])},this)}Manager.prototype={set:function(options){assign(this.options,options);if(options.touchAction){this.touchAction.update()}if(options.inputTarget){this.input.destroy();this.input.target=options.inputTarget;this.input.init()}return this},stop:function(force){this.session.stopped=force?FORCED_STOP:STOP},recognize:function(inputData){var session=this.session;if(session.stopped){return}this.touchAction.preventDefaults(inputData)\n;var recognizer;var recognizers=this.recognizers;var curRecognizer=session.curRecognizer;if(!curRecognizer||curRecognizer&&curRecognizer.state&STATE_RECOGNIZED){curRecognizer=session.curRecognizer=null}var i=0;while(i<recognizers.length){recognizer=recognizers[i];if(session.stopped!==FORCED_STOP&&(!curRecognizer||recognizer==curRecognizer||recognizer.canRecognizeWith(curRecognizer))){recognizer.recognize(inputData)}else{recognizer.reset()}if(!curRecognizer&&recognizer.state&(STATE_BEGAN|STATE_CHANGED|STATE_ENDED)){curRecognizer=session.curRecognizer=recognizer}i++}},get:function(recognizer){if(recognizer instanceof Recognizer){return recognizer}var recognizers=this.recognizers;for(var i=0;i<recognizers.length;i++){if(recognizers[i].options.event==recognizer){return recognizers[i]}}return null},add:function(recognizer){if(invokeArrayArg(recognizer,\"add\",this)){return this}var existing=this.get(recognizer.options.event);if(existing){this.remove(existing)}this.recognizers.push(recognizer);recognizer.manager=this;this.touchAction.update();return recognizer},remove:function(recognizer){if(invokeArrayArg(recognizer,\"remove\",this)){return this}recognizer=this.get(recognizer);if(recognizer){var recognizers=this.recognizers;var index=inArray(recognizers,recognizer);if(index!==-1){recognizers.splice(index,1);this.touchAction.update()}}return this},on:function(events,handler){if(events===undefined){return}if(handler===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){handlers[event]=handlers[event]||[];handlers[event].push(handler)});return this},off:function(events,handler){if(events===undefined){return}var handlers=this.handlers;each(splitStr(events),function(event){if(!handler){delete handlers[event]}else{handlers[event]&&handlers[event].splice(inArray(handlers[event],handler),1)}});return this},emit:function(event,data){if(this.options.domEvents){triggerDomEvent(event,data)}var handlers=this.handlers[event]&&this.handlers[event].slice();if(!handlers||!handlers.length){return}data.type=event;data.preventDefault=function(){data.srcEvent.preventDefault()};var i=0;while(i<handlers.length){handlers[i](data);i++}},destroy:function(){this.element&&toggleCssProps(this,false);this.handlers={};this.session={};this.input.destroy();this.element=null}};function toggleCssProps(manager,add){var element=manager.element;if(!element.style){return}var prop;each(manager.options.cssProps,function(value,name){prop=prefixed(element.style,name);if(add){manager.oldCssProps[prop]=element.style[prop];element.style[prop]=value}else{element.style[prop]=manager.oldCssProps[prop]||\"\"}});if(!add){manager.oldCssProps={}}}function triggerDomEvent(event,data){var gestureEvent=document.createEvent(\"Event\");gestureEvent.initEvent(event,true,true);gestureEvent.gesture=data;data.target.dispatchEvent(gestureEvent)}assign(Hammer,{INPUT_START:INPUT_START,INPUT_MOVE:INPUT_MOVE,INPUT_END:INPUT_END,INPUT_CANCEL:INPUT_CANCEL,STATE_POSSIBLE:STATE_POSSIBLE,STATE_BEGAN:STATE_BEGAN,STATE_CHANGED:STATE_CHANGED,STATE_ENDED:STATE_ENDED,STATE_RECOGNIZED:STATE_RECOGNIZED,STATE_CANCELLED:STATE_CANCELLED,STATE_FAILED:STATE_FAILED,DIRECTION_NONE:DIRECTION_NONE,DIRECTION_LEFT:DIRECTION_LEFT,DIRECTION_RIGHT:DIRECTION_RIGHT,DIRECTION_UP:DIRECTION_UP,DIRECTION_DOWN:DIRECTION_DOWN,DIRECTION_HORIZONTAL:DIRECTION_HORIZONTAL,DIRECTION_VERTICAL:DIRECTION_VERTICAL,DIRECTION_ALL:DIRECTION_ALL,Manager:Manager,Input:Input,TouchAction:TouchAction,TouchInput:TouchInput,MouseInput:MouseInput,PointerEventInput:PointerEventInput,TouchMouseInput:TouchMouseInput,SingleTouchInput:SingleTouchInput,Recognizer:Recognizer,AttrRecognizer:AttrRecognizer,Tap:TapRecognizer,Pan:PanRecognizer,Swipe:SwipeRecognizer,Pinch:PinchRecognizer,Rotate:RotateRecognizer,Press:PressRecognizer,on:addEventListeners,off:removeEventListeners,each:each,merge:merge,extend:extend,assign:assign,inherit:inherit,bindFn:bindFn,prefixed:prefixed});var freeGlobal=typeof window!==\"undefined\"?window:typeof self!==\"undefined\"?self:{};freeGlobal.Hammer=Hammer;if(true){!(__WEBPACK_AMD_DEFINE_RESULT__=function(){return Hammer}.call(exports,__webpack_require__,exports,module),__WEBPACK_AMD_DEFINE_RESULT__!==undefined&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}else if(typeof module!=\"undefined\"&&module.exports){module.exports=Hammer}else{window[exportName]=Hammer}})(window,document,\"Hammer\")},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Timeline=__webpack_require__(178);exports.Graph2d=__webpack_require__(180);exports.timeline={Core:__webpack_require__(65),DateUtil:__webpack_require__(36),Range:__webpack_require__(64),stack:__webpack_require__(100),TimeStep:__webpack_require__(66),components:{items:{Item:__webpack_require__(38),BackgroundItem:__webpack_require__(103),BoxItem:__webpack_require__(101),PointItem:__webpack_require__(102),RangeItem:__webpack_require__(70)},BackgroundGroup:__webpack_require__(69),Component:__webpack_require__(16),CurrentTime:__webpack_require__(67),CustomTime:__webpack_require__(46),DataAxis:__webpack_require__(107),DataScale:__webpack_require__(108),GraphGroup:__webpack_require__(109),Group:__webpack_require__(68),ItemSet:__webpack_require__(99),Legend:__webpack_require__(112),LineGraph:__webpack_require__(106),TimeAxis:__webpack_require__(45)}};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var ItemSet=__webpack_require__(99);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(105).allOptions;var configureOptions=__webpack_require__(105).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Timeline(container,items,groups,options){if(!(this instanceof Timeline)){throw new SyntaxError(\"Constructor must be called with the new operator\")}if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Timeline option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);if(!options||options&&typeof options.rtl==\"undefined\"){this.dom.root.style.visibility=\"hidden\";var directionFromDom,domNode=this.dom.root;while(!directionFromDom&&domNode){directionFromDom=window.getComputedStyle(domNode,null).direction;domNode=domNode.parentElement}this.options.rtl=directionFromDom&&directionFromDom.toLowerCase()==\"rtl\"}else{this.options.rtl=options.rtl}this.options.rollingMode=options&&options.rollingMode;this.options.onInitialDrawComplete=options&&options.onInitialDrawComplete;this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{getScale:function getScale(){return me.timeAxis.step.scale},getStep:function getStep(){return me.timeAxis.step.step},toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body,this.options);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body,this.options);this.timeAxis2=null;this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body,this.options);this.components.push(this.currentTime);this.itemSet=new ItemSet(this.body,this.options);this.components.push(this.itemSet);this.itemsData=null;this.groupsData=null;this.dom.root.onclick=function(event){me.emit(\"click\",me.getEventProperties(event))};this.dom.root.ondblclick=function(event){me.emit(\"doubleClick\",me.getEventProperties(event))};this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};this.dom.root.onmouseover=function(event){me.emit(\"mouseOver\",me.getEventProperties(event))};if(window.PointerEvent){this.dom.root.onpointerdown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onpointermove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onpointerup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}else{this.dom.root.onmousemove=function(event){me.emit(\"mouseMove\",me.getEventProperties(event))};this.dom.root.onmousedown=function(event){me.emit(\"mouseDown\",me.getEventProperties(event))};this.dom.root.onmouseup=function(event){me.emit(\"mouseUp\",me.getEventProperties(event))}}this.initialFitDone=false;this.on(\"changed\",function(){if(this.itemsData==null||this.options.rollingMode)return;if(!me.initialFitDone){me.initialFitDone=true;if(me.options.start!=undefined||me.options.end!=undefined){if(me.options.start==undefined||me.options.end==undefined){var range=me.getItemRange()}var start=me.options.start!=undefined?me.options.start:range.min;var end=me.options.end!=undefined?me.options.end:range.max;me.setWindow(start,end,{animation:false})}else{me.fit({animation:false})}}if(!me.initialDrawDone&&me.initialRangeChangeDone){me.initialDrawDone=true;me.dom.root.style.visibility=\"visible\";if(me.options.onInitialDrawComplete){setTimeout(function(){return me.options.onInitialDrawComplete()},0)}}});if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Timeline.prototype=new Core;Timeline.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};Timeline.prototype.redraw=function(){this.itemSet&&this.itemSet.markDirty({refreshItems:true});this._redraw()};Timeline.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options);if(\"type\"in options){if(options.type!==this.options.type){this.options.type=options.type;var itemsData=this.itemsData;if(itemsData){var selection=this.getSelection();this.setItems(null);this.setItems(itemsData);this.setSelection(selection)}}}};Timeline.prototype.setItems=function(items){var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.itemSet&&this.itemSet.setItems(newDataSet)};Timeline.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else{var filter=function filter(group){return group.visible!==false};if(groups instanceof DataSet||groups instanceof DataView){newDataSet=new DataView(groups,{filter:filter})}else{newDataSet=new DataSet(groups.filter(filter))}}this.groupsData=newDataSet;this.itemSet.setGroups(newDataSet)};Timeline.prototype.setData=function(data){if(data&&data.groups){this.setGroups(data.groups)}if(data&&data.items){this.setItems(data.items)}};Timeline.prototype.setSelection=function(ids,options){this.itemSet&&this.itemSet.setSelection(ids);if(options&&options.focus){this.focus(ids,options)}};Timeline.prototype.getSelection=function(){return this.itemSet&&this.itemSet.getSelection()||[]};Timeline.prototype.focus=function(id,options){if(!this.itemsData||id==undefined)return;var ids=Array.isArray(id)?id:[id];var itemsData=this.itemsData.getDataSet().get(ids,{type:{start:\"Date\",end:\"Date\"}});var start=null;var end=null;itemsData.forEach(function(itemData){var s=itemData.start.valueOf();var e=\"end\"in itemData?itemData.end.valueOf():itemData.start.valueOf();if(start===null||s<start){start=s}if(end===null||e>end){end=e}});if(start!==null&&end!==null){var me=this;var item=this.itemSet.items[ids[0]];var startPos=this._getScrollTop()*-1;var initialVerticalScroll=null;var verticalAnimationFrame=function verticalAnimationFrame(ease,willDraw,done){var verticalScroll=getItemVerticalScroll(me,item);if(!initialVerticalScroll){initialVerticalScroll=verticalScroll}if(initialVerticalScroll.itemTop==verticalScroll.itemTop&&!initialVerticalScroll.shouldScroll){return}else if(initialVerticalScroll.itemTop!=verticalScroll.itemTop&&verticalScroll.shouldScroll){initialVerticalScroll=verticalScroll;startPos=me._getScrollTop()*-1}var from=startPos;var to=initialVerticalScroll.scrollOffset;var scrollTop=done?to:from+(to-from)*ease;me._setScrollTop(-scrollTop);if(!willDraw){me._redraw()}};var setFinalVerticalPosition=function setFinalVerticalPosition(){var finalVerticalScroll=getItemVerticalScroll(me,item);if(finalVerticalScroll.shouldScroll&&finalVerticalScroll.itemTop!=initialVerticalScroll.itemTop){me._setScrollTop(-finalVerticalScroll.scrollOffset);me._redraw()}};var finalVerticalCallback=function finalVerticalCallback(){setFinalVerticalPosition();setTimeout(setFinalVerticalPosition,100)};var middle=(start+end)/2;var interval=Math.max(this.range.end-this.range.start,(end-start)*1.1);var animation=options&&options.animation!==undefined?options.animation:true;if(!animation){initialVerticalScroll={shouldScroll:false,scrollOffset:-1,itemTop:-1}}this.range.setRange(middle-interval/2,middle+interval/2,{animation:animation},finalVerticalCallback,verticalAnimationFrame)}};Timeline.prototype.fit=function(options,callback){var animation=options&&options.animation!==undefined?options.animation:true;var range;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset.length===1&&dataset.get()[0].end===undefined){range=this.getDataRange();this.moveTo(range.min.valueOf(),{animation:animation},callback)}else{range=this.getItemRange();this.range.setRange(range.min,range.max,{animation:animation},callback)}};function getStart(item){return util.convert(item.data.start,\"Date\").valueOf()}function getEnd(item){var end=item.data.end!=undefined?item.data.end:item.data.start;return util.convert(end,\"Date\").valueOf()}function getItemVerticalScroll(timeline,item){var leftHeight=timeline.props.leftContainer.height;var contentHeight=timeline.props.left.height;var group=item.parent;var offset=group.top;var shouldScroll=true;var orientation=timeline.timeAxis.options.orientation.axis;var itemTop=function itemTop(){if(orientation==\"bottom\"){return group.height-item.top-item.height}else{return item.top}};var currentScrollHeight=timeline._getScrollTop()*-1;var targetOffset=offset+itemTop();var height=item.height;if(targetOffset<currentScrollHeight){if(offset+leftHeight<=offset+itemTop()+height){offset+=itemTop()-timeline.itemSet.options.margin.item.vertical}}else if(targetOffset+height>currentScrollHeight+leftHeight){offset+=itemTop()+height-leftHeight+timeline.itemSet.options.margin.item.vertical}else{shouldScroll=false}offset=Math.min(offset,contentHeight-leftHeight);return{shouldScroll:shouldScroll,scrollOffset:offset,itemTop:targetOffset}}Timeline.prototype.getItemRange=function(){var range=this.getDataRange();var min=range.min!==null?range.min.valueOf():null;var max=range.max!==null?range.max.valueOf():null;var minItem=null;var maxItem=null;if(min!=null&&max!=null){var interval=max-min;if(interval<=0){interval=10}var factor=interval/this.props.center.width;var redrawQueue={};var redrawQueueLength=0;util.forEach(this.itemSet.items,function(item,key){if(item.groupShowing){var returnQueue=true;redrawQueue[key]=item.redraw(returnQueue);redrawQueueLength=redrawQueue[key].length}});var needRedraw=redrawQueueLength>0;if(needRedraw){for(var i=0;i<redrawQueueLength;i++){util.forEach(redrawQueue,function(fns){fns[i]()})}}util.forEach(this.itemSet.items,function(item){var start=getStart(item);var end=getEnd(item);var startSide;var endSide;if(this.options.rtl){startSide=start-(item.getWidthRight()+10)*factor;endSide=end+(item.getWidthLeft()+10)*factor}else{startSide=start-(item.getWidthLeft()+10)*factor;endSide=end+(item.getWidthRight()+10)*factor}if(startSide<min){min=startSide;minItem=item}if(endSide>max){max=endSide;maxItem=item}}.bind(this));if(minItem&&maxItem){var lhs=minItem.getWidthLeft()+10;var rhs=maxItem.getWidthRight()+10;var delta=this.props.center.width-lhs-rhs;if(delta>0){if(this.options.rtl){min=getStart(minItem)-rhs*interval/delta;max=getEnd(maxItem)+lhs*interval/delta}else{min=getStart(minItem)-lhs*interval/delta;max=getEnd(maxItem)+rhs*interval/delta}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getDataRange=function(){var min=null;var max=null;var dataset=this.itemsData&&this.itemsData.getDataSet();if(dataset){dataset.forEach(function(item){var start=util.convert(item.start,\"Date\").valueOf();var end=util.convert(item.end!=undefined?item.end:item.start,\"Date\").valueOf();if(min===null||start<min){min=start}if(max===null||end>max){max=end}})}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Timeline.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x;if(this.options.rtl){x=util.getAbsoluteRight(this.dom.centerContainer)-clientX}else{x=clientX-util.getAbsoluteLeft(this.dom.centerContainer)}var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var item=this.itemSet.itemFromTarget(event);var group=this.itemSet.groupFromTarget(event);var customTime=CustomTime.customTimeFromTarget(event);var snap=this.itemSet.options.snap||null;var scale=this.body.util.getScale();var step=this.body.util.getStep();var time=this._toTime(x);var snappedTime=snap?snap(time,scale,step):time;var element=util.getTarget(event);var what=null;if(item!=null){what=\"item\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.itemSet.dom.labelSet)){what=\"group-label\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}return{event:event,item:item?item.id:null,group:group?group.groupId:null,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,snappedTime:snappedTime}};Timeline.prototype.toggleRollingMode=function(){if(this.range.rolling){this.range.stopRolling()}else{if(this.options.rollingMode==undefined){this.setOptions(this.options)}this.range.startRolling()}};module.exports=Timeline},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var ColorPicker=function(){function ColorPicker(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;(0,_classCallCheck3[\"default\"])(this,ColorPicker);this.pixelRatio=pixelRatio;this.generated=false;this.centerCoordinates={x:289/2,y:289/2};this.r=289*.49;this.color={r:255,g:255,b:255,a:1};this.hueCircle=undefined;this.initialColor={r:255,g:255,b:255,a:1};this.previousColor=undefined;this.applied=false;this.updateCallback=function(){};this.closeCallback=function(){};this._create()}(0,_createClass3[\"default\"])(ColorPicker,[{key:\"insertTo\",value:function insertTo(container){if(this.hammer!==undefined){this.hammer.destroy();this.hammer=undefined}this.container=container;this.container.appendChild(this.frame);this._bindHammer();this._setSize()}},{key:\"setUpdateCallback\",value:function setUpdateCallback(callback){if(typeof callback===\"function\"){this.updateCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker update callback is not a function.\")}}},{key:\"setCloseCallback\",value:function setCloseCallback(callback){if(typeof callback===\"function\"){this.closeCallback=callback}else{throw new Error(\"Function attempted to set as colorPicker closing callback is not a function.\")}}},{key:\"_isColorString\",value:function _isColorString(color){var htmlColors={black:\"#000000\",navy:\"#000080\",darkblue:\"#00008B\",mediumblue:\"#0000CD\",blue:\"#0000FF\",darkgreen:\"#006400\",green:\"#008000\",teal:\"#008080\",darkcyan:\"#008B8B\",deepskyblue:\"#00BFFF\",darkturquoise:\"#00CED1\",mediumspringgreen:\"#00FA9A\",lime:\"#00FF00\",springgreen:\"#00FF7F\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",midnightblue:\"#191970\",dodgerblue:\"#1E90FF\",lightseagreen:\"#20B2AA\",forestgreen:\"#228B22\",seagreen:\"#2E8B57\",darkslategray:\"#2F4F4F\",limegreen:\"#32CD32\",mediumseagreen:\"#3CB371\",turquoise:\"#40E0D0\",royalblue:\"#4169E1\",steelblue:\"#4682B4\",darkslateblue:\"#483D8B\",mediumturquoise:\"#48D1CC\",indigo:\"#4B0082\",darkolivegreen:\"#556B2F\",cadetblue:\"#5F9EA0\",cornflowerblue:\"#6495ED\",mediumaquamarine:\"#66CDAA\",dimgray:\"#696969\",slateblue:\"#6A5ACD\",olivedrab:\"#6B8E23\",slategray:\"#708090\",lightslategray:\"#778899\",mediumslateblue:\"#7B68EE\",lawngreen:\"#7CFC00\",chartreuse:\"#7FFF00\",aquamarine:\"#7FFFD4\",maroon:\"#800000\",purple:\"#800080\",olive:\"#808000\",gray:\"#808080\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",blueviolet:\"#8A2BE2\",darkred:\"#8B0000\",darkmagenta:\"#8B008B\",saddlebrown:\"#8B4513\",darkseagreen:\"#8FBC8F\",lightgreen:\"#90EE90\",mediumpurple:\"#9370D8\",darkviolet:\"#9400D3\",palegreen:\"#98FB98\",darkorchid:\"#9932CC\",yellowgreen:\"#9ACD32\",sienna:\"#A0522D\",brown:\"#A52A2A\",darkgray:\"#A9A9A9\",lightblue:\"#ADD8E6\",greenyellow:\"#ADFF2F\",paleturquoise:\"#AFEEEE\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",firebrick:\"#B22222\",darkgoldenrod:\"#B8860B\",mediumorchid:\"#BA55D3\",rosybrown:\"#BC8F8F\",darkkhaki:\"#BDB76B\",silver:\"#C0C0C0\",mediumvioletred:\"#C71585\",indianred:\"#CD5C5C\",peru:\"#CD853F\",chocolate:\"#D2691E\",tan:\"#D2B48C\",lightgrey:\"#D3D3D3\",palevioletred:\"#D87093\",thistle:\"#D8BFD8\",orchid:\"#DA70D6\",goldenrod:\"#DAA520\",crimson:\"#DC143C\",gainsboro:\"#DCDCDC\",plum:\"#DDA0DD\",burlywood:\"#DEB887\",lightcyan:\"#E0FFFF\",lavender:\"#E6E6FA\",darksalmon:\"#E9967A\",violet:\"#EE82EE\",palegoldenrod:\"#EEE8AA\",lightcoral:\"#F08080\",khaki:\"#F0E68C\",aliceblue:\"#F0F8FF\",honeydew:\"#F0FFF0\",azure:\"#F0FFFF\",sandybrown:\"#F4A460\",wheat:\"#F5DEB3\",beige:\"#F5F5DC\",whitesmoke:\"#F5F5F5\",mintcream:\"#F5FFFA\",ghostwhite:\"#F8F8FF\",salmon:\"#FA8072\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lightgoldenrodyellow:\"#FAFAD2\",oldlace:\"#FDF5E6\",red:\"#FF0000\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",deeppink:\"#FF1493\",orangered:\"#FF4500\",tomato:\"#FF6347\",hotpink:\"#FF69B4\",coral:\"#FF7F50\",darkorange:\"#FF8C00\",lightsalmon:\"#FFA07A\",orange:\"#FFA500\",lightpink:\"#FFB6C1\",pink:\"#FFC0CB\",gold:\"#FFD700\",peachpuff:\"#FFDAB9\",navajowhite:\"#FFDEAD\",moccasin:\"#FFE4B5\",bisque:\"#FFE4C4\",mistyrose:\"#FFE4E1\",blanchedalmond:\"#FFEBCD\",papayawhip:\"#FFEFD5\",lavenderblush:\"#FFF0F5\",seashell:\"#FFF5EE\",cornsilk:\"#FFF8DC\",lemonchiffon:\"#FFFACD\",floralwhite:\"#FFFAF0\",snow:\"#FFFAFA\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",ivory:\"#FFFFF0\",white:\"#FFFFFF\"};if(typeof color===\"string\"){return htmlColors[color]}}},{key:\"setColor\",value:function setColor(color){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(color===\"none\"){return}var rgba=void 0;var htmlColor=this._isColorString(color);if(htmlColor!==undefined){color=htmlColor}if(util.isString(color)===true){if(util.isValidRGB(color)===true){var rgbaArray=color.substr(4).substr(0,color.length-5).split(\",\");rgba={r:rgbaArray[0],g:rgbaArray[1],b:rgbaArray[2],a:1}}else if(util.isValidRGBA(color)===true){var _rgbaArray=color.substr(5).substr(0,color.length-6).split(\",\");rgba={r:_rgbaArray[0],g:_rgbaArray[1],b:_rgbaArray[2],a:_rgbaArray[3]}}else if(util.isValidHex(color)===true){var rgbObj=util.hexToRGB(color);rgba={r:rgbObj.r,g:rgbObj.g,b:rgbObj.b,a:1}}}else{if(color instanceof Object){if(color.r!==undefined&&color.g!==undefined&&color.b!==undefined){var alpha=color.a!==undefined?color.a:\"1.0\";rgba={r:color.r,g:color.g,b:color.b,a:alpha}}}}if(rgba===undefined){throw new Error(\"Unknown color passed to the colorPicker. Supported are strings: rgb, hex, rgba. Object: rgb ({r:r,g:g,b:b,[a:a]}). Supplied: \"+(0,_stringify2[\"default\"])(color))}else{this._setColor(rgba,setInitial)}}},{key:\"show\",value:function show(){if(this.closeCallback!==undefined){this.closeCallback();this.closeCallback=undefined}this.applied=false;this.frame.style.display=\"block\";this._generateHueCircle()}},{key:\"_hide\",value:function _hide(){var _this=this;var storePrevious=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;if(storePrevious===true){this.previousColor=util.extend({},this.color)}if(this.applied===true){this.updateCallback(this.initialColor)}this.frame.style.display=\"none\";setTimeout(function(){if(_this.closeCallback!==undefined){_this.closeCallback();_this.closeCallback=undefined}},0)}},{key:\"_save\",value:function _save(){this.updateCallback(this.color);this.applied=false;this._hide()}},{key:\"_apply\",value:function _apply(){this.applied=true;this.updateCallback(this.color);this._updatePicker(this.color)}},{key:\"_loadLast\",value:function _loadLast(){if(this.previousColor!==undefined){this.setColor(this.previousColor,false)}else{alert(\"There is no last color to load...\")}}},{key:\"_setColor\",value:function _setColor(rgba){var setInitial=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(setInitial===true){this.initialColor=util.extend({},rgba)}this.color=rgba;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var angleConvert=2*Math.PI;var radius=this.r*hsv.s;var x=this.centerCoordinates.x+radius*Math.sin(angleConvert*hsv.h);var y=this.centerCoordinates.y+radius*Math.cos(angleConvert*hsv.h);this.colorPickerSelector.style.left=x-.5*this.colorPickerSelector.clientWidth+\"px\";this.colorPickerSelector.style.top=y-.5*this.colorPickerSelector.clientHeight+\"px\";this._updatePicker(rgba)}},{key:\"_setOpacity\",value:function _setOpacity(value){this.color.a=value/100;this._updatePicker(this.color)}},{key:\"_setBrightness\",value:function _setBrightness(value){var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.v=value/100;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this._updatePicker()}},{key:\"_updatePicker\",value:function _updatePicker(){var rgba=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.color;var hsv=util.RGBToHSV(rgba.r,rgba.g,rgba.b);var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);ctx.putImageData(this.hueCircle,0,0);ctx.fillStyle=\"rgba(0,0,0,\"+(1-hsv.v)+\")\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.fill();this.brightnessRange.value=100*hsv.v;this.opacityRange.value=100*rgba.a;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}},{key:\"_setSize\",value:function _setSize(){this.colorPickerCanvas.style.width=\"100%\";this.colorPickerCanvas.style.height=\"100%\";this.colorPickerCanvas.width=289*this.pixelRatio;this.colorPickerCanvas.height=289*this.pixelRatio}},{key:\"_create\",value:function _create(){this.frame=document.createElement(\"div\");this.frame.className=\"vis-color-picker\";this.colorPickerDiv=document.createElement(\"div\");this.colorPickerSelector=document.createElement(\"div\");this.colorPickerSelector.className=\"vis-selector\";this.colorPickerDiv.appendChild(this.colorPickerSelector);this.colorPickerCanvas=document.createElement(\"canvas\");this.colorPickerDiv.appendChild(this.colorPickerCanvas);if(!this.colorPickerCanvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.colorPickerCanvas.appendChild(noCanvas)}else{var ctx=this.colorPickerCanvas.getContext(\"2d\");this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1);this.colorPickerCanvas.getContext(\"2d\").setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}this.colorPickerDiv.className=\"vis-color\";this.opacityDiv=document.createElement(\"div\");this.opacityDiv.className=\"vis-opacity\";this.brightnessDiv=document.createElement(\"div\");this.brightnessDiv.className=\"vis-brightness\";this.arrowDiv=document.createElement(\"div\");this.arrowDiv.className=\"vis-arrow\";this.opacityRange=document.createElement(\"input\");try{this.opacityRange.type=\"range\";this.opacityRange.min=\"0\";this.opacityRange.max=\"100\"}catch(err){}this.opacityRange.value=\"100\";this.opacityRange.className=\"vis-range\";this.brightnessRange=document.createElement(\"input\");try{this.brightnessRange.type=\"range\";this.brightnessRange.min=\"0\";this.brightnessRange.max=\"100\"}catch(err){}this.brightnessRange.value=\"100\";this.brightnessRange.className=\"vis-range\";this.opacityDiv.appendChild(this.opacityRange);this.brightnessDiv.appendChild(this.brightnessRange);var me=this;this.opacityRange.onchange=function(){me._setOpacity(this.value)};this.opacityRange.oninput=function(){me._setOpacity(this.value)};this.brightnessRange.onchange=function(){me._setBrightness(this.value)};this.brightnessRange.oninput=function(){me._setBrightness(this.value)};this.brightnessLabel=document.createElement(\"div\");this.brightnessLabel.className=\"vis-label vis-brightness\";this.brightnessLabel.innerHTML=\"brightness:\";this.opacityLabel=document.createElement(\"div\");this.opacityLabel.className=\"vis-label vis-opacity\";this.opacityLabel.innerHTML=\"opacity:\";this.newColorDiv=document.createElement(\"div\");this.newColorDiv.className=\"vis-new-color\";this.newColorDiv.innerHTML=\"new\";this.initialColorDiv=document.createElement(\"div\");this.initialColorDiv.className=\"vis-initial-color\";this.initialColorDiv.innerHTML=\"initial\";this.cancelButton=document.createElement(\"div\");this.cancelButton.className=\"vis-button vis-cancel\";this.cancelButton.innerHTML=\"cancel\";this.cancelButton.onclick=this._hide.bind(this,false);this.applyButton=document.createElement(\"div\");this.applyButton.className=\"vis-button vis-apply\";this.applyButton.innerHTML=\"apply\";this.applyButton.onclick=this._apply.bind(this);this.saveButton=document.createElement(\"div\");this.saveButton.className=\"vis-button vis-save\";this.saveButton.innerHTML=\"save\";this.saveButton.onclick=this._save.bind(this);this.loadButton=document.createElement(\"div\");this.loadButton.className=\"vis-button vis-load\";this.loadButton.innerHTML=\"load last\";this.loadButton.onclick=this._loadLast.bind(this)\n;this.frame.appendChild(this.colorPickerDiv);this.frame.appendChild(this.arrowDiv);this.frame.appendChild(this.brightnessLabel);this.frame.appendChild(this.brightnessDiv);this.frame.appendChild(this.opacityLabel);this.frame.appendChild(this.opacityDiv);this.frame.appendChild(this.newColorDiv);this.frame.appendChild(this.initialColorDiv);this.frame.appendChild(this.cancelButton);this.frame.appendChild(this.applyButton);this.frame.appendChild(this.saveButton);this.frame.appendChild(this.loadButton)}},{key:\"_bindHammer\",value:function _bindHammer(){var _this2=this;this.drag={};this.pinch={};this.hammer=new Hammer(this.colorPickerCanvas);this.hammer.get(\"pinch\").set({enable:true});hammerUtil.onTouch(this.hammer,function(event){_this2._moveSelector(event)});this.hammer.on(\"tap\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panstart\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panmove\",function(event){_this2._moveSelector(event)});this.hammer.on(\"panend\",function(event){_this2._moveSelector(event)})}},{key:\"_generateHueCircle\",value:function _generateHueCircle(){if(this.generated===false){var ctx=this.colorPickerCanvas.getContext(\"2d\");if(this.pixelRation===undefined){this.pixelRatio=(window.devicePixelRatio||1)/(ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1)}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0);var w=this.colorPickerCanvas.clientWidth;var h=this.colorPickerCanvas.clientHeight;ctx.clearRect(0,0,w,h);var x=void 0,y=void 0,hue=void 0,sat=void 0;this.centerCoordinates={x:w*.5,y:h*.5};this.r=.49*w;var angleConvert=2*Math.PI/360;var hfac=1/360;var sfac=1/this.r;var rgb=void 0;for(hue=0;hue<360;hue++){for(sat=0;sat<this.r;sat++){x=this.centerCoordinates.x+sat*Math.sin(angleConvert*hue);y=this.centerCoordinates.y+sat*Math.cos(angleConvert*hue);rgb=util.HSVToRGB(hue*hfac,sat*sfac,1);ctx.fillStyle=\"rgb(\"+rgb.r+\",\"+rgb.g+\",\"+rgb.b+\")\";ctx.fillRect(x-.5,y-.5,2,2)}}ctx.strokeStyle=\"rgba(0,0,0,1)\";ctx.circle(this.centerCoordinates.x,this.centerCoordinates.y,this.r);ctx.stroke();this.hueCircle=ctx.getImageData(0,0,w,h)}this.generated=true}},{key:\"_moveSelector\",value:function _moveSelector(event){var rect=this.colorPickerDiv.getBoundingClientRect();var left=event.center.x-rect.left;var top=event.center.y-rect.top;var centerY=.5*this.colorPickerDiv.clientHeight;var centerX=.5*this.colorPickerDiv.clientWidth;var x=left-centerX;var y=top-centerY;var angle=Math.atan2(x,y);var radius=.98*Math.min(Math.sqrt(x*x+y*y),centerX);var newTop=Math.cos(angle)*radius+centerY;var newLeft=Math.sin(angle)*radius+centerX;this.colorPickerSelector.style.top=newTop-.5*this.colorPickerSelector.clientHeight+\"px\";this.colorPickerSelector.style.left=newLeft-.5*this.colorPickerSelector.clientWidth+\"px\";var h=angle/(2*Math.PI);h=h<0?h+1:h;var s=radius/this.r;var hsv=util.RGBToHSV(this.color.r,this.color.g,this.color.b);hsv.h=h;hsv.s=s;var rgba=util.HSVToRGB(hsv.h,hsv.s,hsv.v);rgba[\"a\"]=this.color.a;this.color=rgba;this.initialColorDiv.style.backgroundColor=\"rgba(\"+this.initialColor.r+\",\"+this.initialColor.g+\",\"+this.initialColor.b+\",\"+this.initialColor.a+\")\";this.newColorDiv.style.backgroundColor=\"rgba(\"+this.color.r+\",\"+this.color.g+\",\"+this.color.b+\",\"+this.color.a+\")\"}}]);return ColorPicker}();exports[\"default\"]=ColorPicker},function(module,exports,__webpack_require__){\"use strict\";var moment=__webpack_require__(9);var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Range=__webpack_require__(64);var Core=__webpack_require__(65);var TimeAxis=__webpack_require__(45);var CurrentTime=__webpack_require__(67);var CustomTime=__webpack_require__(46);var LineGraph=__webpack_require__(106);var printStyle=__webpack_require__(15).printStyle;var allOptions=__webpack_require__(113).allOptions;var configureOptions=__webpack_require__(113).configureOptions;var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];function Graph2d(container,items,groups,options){if(!(Array.isArray(groups)||groups instanceof DataSet||groups instanceof DataView)&&groups instanceof Object){var forthArgument=options;options=groups;groups=forthArgument}if(options&&options.throttleRedraw){console.warn('Graph2d option \"throttleRedraw\" is DEPRICATED and no longer supported. It will be removed in the next MAJOR release.')}var me=this;this.defaultOptions={start:null,end:null,autoResize:true,orientation:{axis:\"bottom\",item:\"bottom\"},moment:moment,width:null,height:null,maxHeight:null,minHeight:null};this.options=util.deepExtend({},this.defaultOptions);this._create(container);this.components=[];this.body={dom:this.dom,domProps:this.props,emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this)},hiddenDates:[],util:{toScreen:me._toScreen.bind(me),toGlobalScreen:me._toGlobalScreen.bind(me),toTime:me._toTime.bind(me),toGlobalTime:me._toGlobalTime.bind(me)}};this.range=new Range(this.body);this.components.push(this.range);this.body.range=this.range;this.timeAxis=new TimeAxis(this.body);this.components.push(this.timeAxis);this.currentTime=new CurrentTime(this.body);this.components.push(this.currentTime);this.linegraph=new LineGraph(this.body);this.components.push(this.linegraph);this.itemsData=null;this.groupsData=null;this.on(\"tap\",function(event){me.emit(\"click\",me.getEventProperties(event))});this.on(\"doubletap\",function(event){me.emit(\"doubleClick\",me.getEventProperties(event))});this.dom.root.oncontextmenu=function(event){me.emit(\"contextmenu\",me.getEventProperties(event))};if(options){this.setOptions(options)}if(groups){this.setGroups(groups)}if(items){this.setItems(items)}this._redraw()}Graph2d.prototype=new Core;Graph2d.prototype.setOptions=function(options){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}Core.prototype.setOptions.call(this,options)};Graph2d.prototype.setItems=function(items){var initialLoad=this.itemsData==null;var newDataSet;if(!items){newDataSet=null}else if(items instanceof DataSet||items instanceof DataView){newDataSet=items}else{newDataSet=new DataSet(items,{type:{start:\"Date\",end:\"Date\"}})}this.itemsData=newDataSet;this.linegraph&&this.linegraph.setItems(newDataSet);if(initialLoad){if(this.options.start!=undefined||this.options.end!=undefined){var start=this.options.start!=undefined?this.options.start:null;var end=this.options.end!=undefined?this.options.end:null;this.setWindow(start,end,{animation:false})}else{this.fit({animation:false})}}};Graph2d.prototype.setGroups=function(groups){var newDataSet;if(!groups){newDataSet=null}else if(groups instanceof DataSet||groups instanceof DataView){newDataSet=groups}else{newDataSet=new DataSet(groups)}this.groupsData=newDataSet;this.linegraph.setGroups(newDataSet)};Graph2d.prototype.getLegend=function(groupId,width,height){if(width===undefined){width=15}if(height===undefined){height=15}if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].getLegend(width,height)}else{return\"cannot find group:'\"+groupId+\"'\"}};Graph2d.prototype.isGroupVisible=function(groupId){if(this.linegraph.groups[groupId]!==undefined){return this.linegraph.groups[groupId].visible&&(this.linegraph.options.groups.visibility[groupId]===undefined||this.linegraph.options.groups.visibility[groupId]==true)}else{return false}};Graph2d.prototype.getDataRange=function(){var min=null;var max=null;for(var groupId in this.linegraph.groups){if(this.linegraph.groups.hasOwnProperty(groupId)){if(this.linegraph.groups[groupId].visible==true){for(var i=0;i<this.linegraph.groups[groupId].itemsData.length;i++){var item=this.linegraph.groups[groupId].itemsData[i];var value=util.convert(item.x,\"Date\").valueOf();min=min==null?value:min>value?value:min;max=max==null?value:max<value?value:max}}}}return{min:min!=null?new Date(min):null,max:max!=null?new Date(max):null}};Graph2d.prototype.getEventProperties=function(event){var clientX=event.center?event.center.x:event.clientX;var clientY=event.center?event.center.y:event.clientY;var x=clientX-util.getAbsoluteLeft(this.dom.centerContainer);var y=clientY-util.getAbsoluteTop(this.dom.centerContainer);var time=this._toTime(x);var customTime=CustomTime.customTimeFromTarget(event);var element=util.getTarget(event);var what=null;if(util.hasParent(element,this.timeAxis.dom.foreground)){what=\"axis\"}else if(this.timeAxis2&&util.hasParent(element,this.timeAxis2.dom.foreground)){what=\"axis\"}else if(util.hasParent(element,this.linegraph.yAxisLeft.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.yAxisRight.dom.frame)){what=\"data-axis\"}else if(util.hasParent(element,this.linegraph.legendLeft.dom.frame)){what=\"legend\"}else if(util.hasParent(element,this.linegraph.legendRight.dom.frame)){what=\"legend\"}else if(customTime!=null){what=\"custom-time\"}else if(util.hasParent(element,this.currentTime.bar)){what=\"current-time\"}else if(util.hasParent(element,this.dom.center)){what=\"background\"}var value=[];var yAxisLeft=this.linegraph.yAxisLeft;var yAxisRight=this.linegraph.yAxisRight;if(!yAxisLeft.hidden&&this.itemsData.length>0){value.push(yAxisLeft.screenToValue(y))}if(!yAxisRight.hidden&&this.itemsData.length>0){value.push(yAxisRight.screenToValue(y))}return{event:event,what:what,pageX:event.srcEvent?event.srcEvent.pageX:event.pageX,pageY:event.srcEvent?event.srcEvent.pageY:event.pageY,x:x,y:y,time:time,value:value}};Graph2d.prototype._createConfigurator=function(){return new Configurator(this,this.dom.container,configureOptions)};module.exports=Graph2d},function(module,exports,__webpack_require__){\"use strict\";exports.util=__webpack_require__(2);exports.DOMutil=__webpack_require__(14);exports.DataSet=__webpack_require__(11);exports.DataView=__webpack_require__(12);exports.Queue=__webpack_require__(43);exports.Network=__webpack_require__(182);exports.network={Images:__webpack_require__(116),dotparser:__webpack_require__(114),gephiParser:__webpack_require__(115),allOptions:__webpack_require__(122)};exports.network.convertDot=function(input){return exports.network.dotparser.DOTToGraph(input)};exports.network.convertGephi=function(input,options){return exports.network.gephiParser.parseGephi(input,options)};exports.moment=__webpack_require__(9);exports.Hammer=__webpack_require__(10);exports.keycharm=__webpack_require__(35)},function(module,exports,__webpack_require__){\"use strict\";__webpack_require__(183);var Emitter=__webpack_require__(44);var util=__webpack_require__(2);var dotparser=__webpack_require__(114);var gephiParser=__webpack_require__(115);var Activator=__webpack_require__(97);var locales=__webpack_require__(184);var Images=__webpack_require__(116)[\"default\"];var Groups=__webpack_require__(186)[\"default\"];var NodesHandler=__webpack_require__(187)[\"default\"];var EdgesHandler=__webpack_require__(214)[\"default\"];var PhysicsEngine=__webpack_require__(220)[\"default\"];var ClusterEngine=__webpack_require__(227)[\"default\"];var CanvasRenderer=__webpack_require__(229)[\"default\"];var Canvas=__webpack_require__(230)[\"default\"];var View=__webpack_require__(231)[\"default\"];var InteractionHandler=__webpack_require__(232)[\"default\"];var SelectionHandler=__webpack_require__(234)[\"default\"];var LayoutEngine=__webpack_require__(235)[\"default\"];var ManipulationSystem=__webpack_require__(237)[\"default\"];var Configurator=__webpack_require__(71)[\"default\"];var Validator=__webpack_require__(15)[\"default\"];var _require=__webpack_require__(15),printStyle=_require.printStyle;var _require2=__webpack_require__(122),allOptions=_require2.allOptions,configureOptions=_require2.configureOptions;var KamadaKawai=__webpack_require__(238)[\"default\"];function Network(container,data,options){var _this=this;if(!(this instanceof Network)){throw new SyntaxError(\"Constructor must be called with the new operator\")}this.options={};this.defaultOptions={locale:\"en\",locales:locales,clickToUse:false};util.extend(this.options,this.defaultOptions);this.body={container:container,nodes:{},nodeIndices:[],edges:{},edgeIndices:[],emitter:{on:this.on.bind(this),off:this.off.bind(this),emit:this.emit.bind(this),once:this.once.bind(this)},eventListeners:{onTap:function onTap(){},onTouch:function onTouch(){},onDoubleTap:function onDoubleTap(){},onHold:function onHold(){},onDragStart:function onDragStart(){},onDrag:function onDrag(){},onDragEnd:function onDragEnd(){},onMouseWheel:function onMouseWheel(){},onPinch:function onPinch(){},onMouseMove:function onMouseMove(){},onRelease:function onRelease(){},onContext:function onContext(){}},data:{nodes:null,edges:null},functions:{createNode:function createNode(){},createEdge:function createEdge(){},getPointer:function getPointer(){}},modules:{},view:{scale:1,translation:{x:0,y:0}}};this.bindEventListeners();this.images=new Images(function(){return _this.body.emitter.emit(\"_requestRedraw\")});this.groups=new Groups;this.canvas=new Canvas(this.body);this.selectionHandler=new SelectionHandler(this.body,this.canvas);this.interactionHandler=new InteractionHandler(this.body,this.canvas,this.selectionHandler);this.view=new View(this.body,this.canvas);this.renderer=new CanvasRenderer(this.body,this.canvas);this.physics=new PhysicsEngine(this.body);this.layoutEngine=new LayoutEngine(this.body);this.clustering=new ClusterEngine(this.body);this.manipulation=new ManipulationSystem(this.body,this.canvas,this.selectionHandler);this.nodesHandler=new NodesHandler(this.body,this.images,this.groups,this.layoutEngine);this.edgesHandler=new EdgesHandler(this.body,this.images,this.groups);this.body.modules[\"kamadaKawai\"]=new KamadaKawai(this.body,150,.05);this.body.modules[\"clustering\"]=this.clustering;this.canvas._create();this.setOptions(options);this.setData(data)}Emitter(Network.prototype);Network.prototype.setOptions=function(options){var _this2=this;if(options!==undefined){var errorFound=Validator.validate(options,allOptions);if(errorFound===true){console.log(\"%cErrors have been found in the supplied options object.\",printStyle)}var fields=[\"locale\",\"locales\",\"clickToUse\"];util.selectiveDeepExtend(fields,this.options,options);options=this.layoutEngine.setOptions(options.layout,options);this.canvas.setOptions(options);this.groups.setOptions(options.groups);this.nodesHandler.setOptions(options.nodes);this.edgesHandler.setOptions(options.edges);this.physics.setOptions(options.physics);this.manipulation.setOptions(options.manipulation,options,this.options);this.interactionHandler.setOptions(options.interaction);this.renderer.setOptions(options.interaction);this.selectionHandler.setOptions(options.interaction);if(options.groups!==undefined){this.body.emitter.emit(\"refreshNodes\")}if(\"configure\"in options){if(!this.configurator){this.configurator=new Configurator(this,this.body.container,configureOptions,this.canvas.pixelRatio)}this.configurator.setOptions(options.configure)}if(this.configurator&&this.configurator.options.enabled===true){var networkOptions={nodes:{},edges:{},layout:{},interaction:{},manipulation:{},physics:{},global:{}};util.deepExtend(networkOptions.nodes,this.nodesHandler.options);util.deepExtend(networkOptions.edges,this.edgesHandler.options);util.deepExtend(networkOptions.layout,this.layoutEngine.options);util.deepExtend(networkOptions.interaction,this.selectionHandler.options);util.deepExtend(networkOptions.interaction,this.renderer.options);util.deepExtend(networkOptions.interaction,this.interactionHandler.options);util.deepExtend(networkOptions.manipulation,this.manipulation.options);util.deepExtend(networkOptions.physics,this.physics.options);util.deepExtend(networkOptions.global,this.canvas.options);util.deepExtend(networkOptions.global,this.options);this.configurator.setModuleOptions(networkOptions)}if(options.clickToUse!==undefined){if(options.clickToUse===true){if(this.activator===undefined){this.activator=new Activator(this.canvas.frame);this.activator.on(\"change\",function(){_this2.body.emitter.emit(\"activate\")})}}else{if(this.activator!==undefined){this.activator.destroy();delete this.activator}this.body.emitter.emit(\"activate\")}}else{this.body.emitter.emit(\"activate\")}this.canvas.setSize();this.body.emitter.emit(\"startSimulation\")}};Network.prototype._updateVisibleIndices=function(){var nodes=this.body.nodes;var edges=this.body.edges;this.body.nodeIndices=[];this.body.edgeIndices=[];for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(!this.clustering._isClusteredNode(nodeId)&&nodes[nodeId].options.hidden===false){this.body.nodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){var edge=edges[edgeId];var fromNode=nodes[edge.fromId];var toNode=nodes[edge.toId];var edgeNodesPresent=fromNode!==undefined&&toNode!==undefined;var isVisible=!this.clustering._isClusteredEdge(edgeId)&&edge.options.hidden===false&&edgeNodesPresent&&fromNode.options.hidden===false&&toNode.options.hidden===false;if(isVisible){this.body.edgeIndices.push(edge.id)}}}};Network.prototype.bindEventListeners=function(){var _this3=this;this.body.emitter.on(\"_dataChanged\",function(){_this3.edgesHandler._updateState();_this3.body.emitter.emit(\"_dataUpdated\")});this.body.emitter.on(\"_dataUpdated\",function(){_this3.clustering._updateState();_this3._updateVisibleIndices();_this3._updateValueRange(_this3.body.nodes);_this3._updateValueRange(_this3.body.edges);_this3.body.emitter.emit(\"startSimulation\");_this3.body.emitter.emit(\"_requestRedraw\")})};Network.prototype.setData=function(data){this.body.emitter.emit(\"resetPhysics\");this.body.emitter.emit(\"_resetData\");this.selectionHandler.unselectAll();if(data&&data.dot&&(data.nodes||data.edges)){throw new SyntaxError('Data must contain either parameter \"dot\" or '+' parameter pair \"nodes\" and \"edges\", but not both.')}this.setOptions(data&&data.options);if(data&&data.dot){console.log(\"The dot property has been deprecated. Please use the static convertDot method to convert DOT into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertDot(dotString);\");var dotData=dotparser.DOTToGraph(data.dot);this.setData(dotData);return}else if(data&&data.gephi){console.log(\"The gephi property has been deprecated. Please use the static convertGephi method to convert gephi into vis.network format and use the normal data format with nodes and edges. This converter is used like this: var data = vis.network.convertGephi(gephiJson);\");var gephiData=gephiParser.parseGephi(data.gephi);this.setData(gephiData);return}else{this.nodesHandler.setData(data&&data.nodes,true);this.edgesHandler.setData(data&&data.edges,true)}this.body.emitter.emit(\"_dataChanged\");this.body.emitter.emit(\"_dataLoaded\");this.body.emitter.emit(\"initPhysics\")};Network.prototype.destroy=function(){this.body.emitter.emit(\"destroy\");this.body.emitter.off();this.off();delete this.groups;delete this.canvas;delete this.selectionHandler;delete this.interactionHandler;delete this.view;delete this.renderer;delete this.physics;delete this.layoutEngine;delete this.clustering;delete this.manipulation;delete this.nodesHandler;delete this.edgesHandler;delete this.configurator;delete this.images;for(var nodeId in this.body.nodes){if(!this.body.nodes.hasOwnProperty(nodeId))continue;delete this.body.nodes[nodeId]}for(var edgeId in this.body.edges){if(!this.body.edges.hasOwnProperty(edgeId))continue;delete this.body.edges[edgeId]}util.recursiveDOMDelete(this.body.container)};Network.prototype._updateValueRange=function(obj){var id;var valueMin=undefined;var valueMax=undefined;var valueTotal=0;for(id in obj){if(obj.hasOwnProperty(id)){var value=obj[id].getValue();if(value!==undefined){valueMin=valueMin===undefined?value:Math.min(value,valueMin);valueMax=valueMax===undefined?value:Math.max(value,valueMax);valueTotal+=value}}}if(valueMin!==undefined&&valueMax!==undefined){for(id in obj){if(obj.hasOwnProperty(id)){obj[id].setValueRange(valueMin,valueMax,valueTotal)}}}};Network.prototype.isActive=function(){return!this.activator||this.activator.active};Network.prototype.setSize=function(){return this.canvas.setSize.apply(this.canvas,arguments)};Network.prototype.canvasToDOM=function(){return this.canvas.canvasToDOM.apply(this.canvas,arguments)};Network.prototype.DOMtoCanvas=function(){return this.canvas.DOMtoCanvas.apply(this.canvas,arguments)};Network.prototype.findNode=function(){return this.clustering.findNode.apply(this.clustering,arguments)};Network.prototype.isCluster=function(){return this.clustering.isCluster.apply(this.clustering,arguments)};Network.prototype.openCluster=function(){return this.clustering.openCluster.apply(this.clustering,arguments)};Network.prototype.cluster=function(){return this.clustering.cluster.apply(this.clustering,arguments)};Network.prototype.getNodesInCluster=function(){return this.clustering.getNodesInCluster.apply(this.clustering,arguments)};Network.prototype.clusterByConnection=function(){return this.clustering.clusterByConnection.apply(this.clustering,arguments)};Network.prototype.clusterByHubsize=function(){return this.clustering.clusterByHubsize.apply(this.clustering,arguments)};Network.prototype.clusterOutliers=function(){return this.clustering.clusterOutliers.apply(this.clustering,arguments)};Network.prototype.getSeed=function(){return this.layoutEngine.getSeed.apply(this.layoutEngine,arguments)};Network.prototype.enableEditMode=function(){return this.manipulation.enableEditMode.apply(this.manipulation,arguments)};Network.prototype.disableEditMode=function(){return this.manipulation.disableEditMode.apply(this.manipulation,arguments)};Network.prototype.addNodeMode=function(){return this.manipulation.addNodeMode.apply(this.manipulation,arguments)};Network.prototype.editNode=function(){return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.editNodeMode=function(){console.log(\"Deprecated: Please use editNode instead of editNodeMode.\");return this.manipulation.editNode.apply(this.manipulation,arguments)};Network.prototype.addEdgeMode=function(){return this.manipulation.addEdgeMode.apply(this.manipulation,arguments)};Network.prototype.editEdgeMode=function(){return this.manipulation.editEdgeMode.apply(this.manipulation,arguments)};Network.prototype.deleteSelected=function(){return this.manipulation.deleteSelected.apply(this.manipulation,arguments)};Network.prototype.getPositions=function(){return this.nodesHandler.getPositions.apply(this.nodesHandler,arguments)};Network.prototype.storePositions=function(){return this.nodesHandler.storePositions.apply(this.nodesHandler,arguments)};Network.prototype.moveNode=function(){return this.nodesHandler.moveNode.apply(this.nodesHandler,arguments)};Network.prototype.getBoundingBox=function(){return this.nodesHandler.getBoundingBox.apply(this.nodesHandler,arguments)};Network.prototype.getConnectedNodes=function(objectId){if(this.body.nodes[objectId]!==undefined){return this.nodesHandler.getConnectedNodes.apply(this.nodesHandler,arguments)}else{return this.edgesHandler.getConnectedNodes.apply(this.edgesHandler,arguments)}};Network.prototype.getConnectedEdges=function(){return this.nodesHandler.getConnectedEdges.apply(this.nodesHandler,arguments)};Network.prototype.startSimulation=function(){return this.physics.startSimulation.apply(this.physics,arguments)};Network.prototype.stopSimulation=function(){return this.physics.stopSimulation.apply(this.physics,arguments)};Network.prototype.stabilize=function(){return this.physics.stabilize.apply(this.physics,arguments)};Network.prototype.getSelection=function(){return this.selectionHandler.getSelection.apply(this.selectionHandler,arguments)};Network.prototype.setSelection=function(){return this.selectionHandler.setSelection.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedNodes=function(){return this.selectionHandler.getSelectedNodes.apply(this.selectionHandler,arguments)};Network.prototype.getSelectedEdges=function(){return this.selectionHandler.getSelectedEdges.apply(this.selectionHandler,arguments)};Network.prototype.getNodeAt=function(){var node=this.selectionHandler.getNodeAt.apply(this.selectionHandler,arguments);if(node!==undefined&&node.id!==undefined){return node.id}return node};Network.prototype.getEdgeAt=function(){var edge=this.selectionHandler.getEdgeAt.apply(this.selectionHandler,arguments);if(edge!==undefined&&edge.id!==undefined){return edge.id}return edge};Network.prototype.selectNodes=function(){return this.selectionHandler.selectNodes.apply(this.selectionHandler,arguments)};Network.prototype.selectEdges=function(){return this.selectionHandler.selectEdges.apply(this.selectionHandler,arguments)};Network.prototype.unselectAll=function(){this.selectionHandler.unselectAll.apply(this.selectionHandler,arguments);this.redraw()};Network.prototype.redraw=function(){return this.renderer.redraw.apply(this.renderer,arguments)};Network.prototype.getScale=function(){return this.view.getScale.apply(this.view,arguments)};Network.prototype.getViewPosition=function(){return this.view.getViewPosition.apply(this.view,arguments)};Network.prototype.fit=function(){return this.view.fit.apply(this.view,arguments)};Network.prototype.moveTo=function(){return this.view.moveTo.apply(this.view,arguments)};Network.prototype.focus=function(){return this.view.focus.apply(this.view,arguments)};Network.prototype.releaseNode=function(){return this.view.releaseNode.apply(this.view,arguments)};Network.prototype.getOptionsFromConfigurator=function(){var options={};if(this.configurator){options=this.configurator.getOptions.apply(this.configurator)}return options};module.exports=Network},function(module,exports,__webpack_require__){\"use strict\";if(typeof CanvasRenderingContext2D!==\"undefined\"){CanvasRenderingContext2D.prototype.circle=function(x,y,r){this.beginPath();this.arc(x,y,r,0,2*Math.PI,false);this.closePath()};CanvasRenderingContext2D.prototype.square=function(x,y,r){this.beginPath();this.rect(x-r,y-r,r*2,r*2);this.closePath()};CanvasRenderingContext2D.prototype.triangle=function(x,y,r){this.beginPath();r*=1.15;y+=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y-(h-ir));this.lineTo(x+s2,y+ir);this.lineTo(x-s2,y+ir);this.lineTo(x,y-(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.triangleDown=function(x,y,r){this.beginPath();r*=1.15;y-=.275*r;var s=r*2;var s2=s/2;var ir=Math.sqrt(3)/6*s;var h=Math.sqrt(s*s-s2*s2);this.moveTo(x,y+(h-ir));this.lineTo(x+s2,y-ir);this.lineTo(x-s2,y-ir);this.lineTo(x,y+(h-ir));this.closePath()};CanvasRenderingContext2D.prototype.star=function(x,y,r){this.beginPath();r*=.82;y+=.1*r;for(var n=0;n<10;n++){var radius=n%2===0?r*1.3:r*.5;this.lineTo(x+radius*Math.sin(n*2*Math.PI/10),y-radius*Math.cos(n*2*Math.PI/10))}this.closePath()};CanvasRenderingContext2D.prototype.diamond=function(x,y,r){this.beginPath();this.lineTo(x,y+r);this.lineTo(x+r,y);this.lineTo(x,y-r);this.lineTo(x-r,y);this.closePath()};CanvasRenderingContext2D.prototype.roundRect=function(x,y,w,h,r){var r2d=Math.PI/180;if(w-2*r<0){r=w/2}if(h-2*r<0){r=h/2}this.beginPath();this.moveTo(x+r,y);this.lineTo(x+w-r,y);this.arc(x+w-r,y+r,r,r2d*270,r2d*360,false);this.lineTo(x+w,y+h-r);this.arc(x+w-r,y+h-r,r,0,r2d*90,false);this.lineTo(x+r,y+h);this.arc(x+r,y+h-r,r,r2d*90,r2d*180,false);this.lineTo(x,y+r);this.arc(x+r,y+r,r,r2d*180,r2d*270,false);this.closePath()};CanvasRenderingContext2D.prototype.ellipse_vis=function(x,y,w,h){var kappa=.5522848,ox=w/2*kappa,oy=h/2*kappa,xe=x+w,ye=y+h,xm=x+w/2,ym=y+h/2;this.beginPath();this.moveTo(x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.closePath()};CanvasRenderingContext2D.prototype.database=function(x,y,w,h){var f=1/3;var wEllipse=w;var hEllipse=h*f;var kappa=.5522848,ox=wEllipse/2*kappa,oy=hEllipse/2*kappa,xe=x+wEllipse,ye=y+hEllipse,xm=x+wEllipse/2,ym=y+hEllipse/2,ymb=y+(h-hEllipse/2),yeb=y+h;this.beginPath();this.moveTo(xe,ym);this.bezierCurveTo(xe,ym+oy,xm+ox,ye,xm,ye);this.bezierCurveTo(xm-ox,ye,x,ym+oy,x,ym);this.bezierCurveTo(x,ym-oy,xm-ox,y,xm,y);this.bezierCurveTo(xm+ox,y,xe,ym-oy,xe,ym);this.lineTo(xe,ymb);this.bezierCurveTo(xe,ymb+oy,xm+ox,yeb,xm,yeb);this.bezierCurveTo(xm-ox,yeb,x,ymb+oy,x,ymb);this.lineTo(x,ym)};CanvasRenderingContext2D.prototype.dashedLine=function(x,y,x2,y2,pattern){this.beginPath();this.moveTo(x,y);var patternLength=pattern.length;var dx=x2-x;var dy=y2-y;var slope=dy/dx;var distRemaining=Math.sqrt(dx*dx+dy*dy);var patternIndex=0;var draw=true;var xStep=0;var dashLength=pattern[0];while(distRemaining>=.1){dashLength=pattern[patternIndex++%patternLength];if(dashLength>distRemaining){dashLength=distRemaining}xStep=Math.sqrt(dashLength*dashLength/(1+slope*slope));xStep=dx<0?-xStep:xStep;x+=xStep;y+=slope*xStep;if(draw===true){this.lineTo(x,y)}else{this.moveTo(x,y)}distRemaining-=dashLength;draw=!draw}};CanvasRenderingContext2D.prototype.hexagon=function(x,y,r){this.beginPath();var sides=6;var a=Math.PI*2/sides;this.moveTo(x+r,y);for(var i=1;i<sides;i++){this.lineTo(x+r*Math.cos(a*i),y+r*Math.sin(a*i))}this.closePath()}}},function(module,exports,__webpack_require__){\"use strict\";exports[\"en\"]={edit:\"Edit\",del:\"Delete selected\",back:\"Back\",addNode:\"Add Node\",addEdge:\"Add Edge\",editNode:\"Edit Node\",editEdge:\"Edit Edge\",addDescription:\"Click in an empty space to place a new node.\",edgeDescription:\"Click on a node and drag the edge to another node to connect them.\",editEdgeDescription:\"Click on the control points and drag them to a node to connect to it.\",createEdgeError:\"Cannot link edges to a cluster.\",deleteClusterError:\"Clusters cannot be deleted.\",editClusterError:\"Clusters cannot be edited.\"};exports[\"en_EN\"]=exports[\"en\"];exports[\"en_US\"]=exports[\"en\"];exports[\"de\"]={edit:\"Editieren\",del:\"Lösche Auswahl\",back:\"Zurück\",addNode:\"Knoten hinzufügen\",addEdge:\"Kante hinzufügen\",editNode:\"Knoten editieren\",editEdge:\"Kante editieren\",addDescription:\"Klicke auf eine freie Stelle, um einen neuen Knoten zu plazieren.\",edgeDescription:\"Klicke auf einen Knoten und ziehe die Kante zu einem anderen Knoten, um diese zu verbinden.\",editEdgeDescription:\"Klicke auf die Verbindungspunkte und ziehe diese auf einen Knoten, um sie zu verbinden.\",createEdgeError:\"Es ist nicht möglich, Kanten mit Clustern zu verbinden.\",deleteClusterError:\"Cluster können nicht gelöscht werden.\",editClusterError:\"Cluster können nicht editiert werden.\"};exports[\"de_DE\"]=exports[\"de\"];exports[\"es\"]={edit:\"Editar\",del:\"Eliminar selección\",back:\"Átras\",addNode:\"Añadir nodo\",addEdge:\"Añadir arista\",editNode:\"Editar nodo\",editEdge:\"Editar arista\",addDescription:\"Haga clic en un lugar vacío para colocar un nuevo nodo.\",edgeDescription:\"Haga clic en un nodo y arrastre la arista hacia otro nodo para conectarlos.\",editEdgeDescription:\"Haga clic en un punto de control y arrastrelo a un nodo para conectarlo.\",createEdgeError:\"No se puede conectar una arista a un grupo.\",deleteClusterError:\"No es posible eliminar grupos.\",editClusterError:\"No es posible editar grupos.\"};exports[\"es_ES\"]=exports[\"es\"];exports[\"it\"]={edit:\"Modifica\",del:\"Cancella la selezione\",back:\"Indietro\",addNode:\"Aggiungi un nodo\",addEdge:\"Aggiungi un vertice\",editNode:\"Modifica il nodo\",editEdge:\"Modifica il vertice\",addDescription:\"Clicca per aggiungere un nuovo nodo\",edgeDescription:\"Clicca su un nodo e trascinalo ad un altro nodo per connetterli.\",editEdgeDescription:\"Clicca sui Punti di controllo e trascinali ad un nodo per connetterli.\",createEdgeError:\"Non si possono collegare vertici ad un cluster\",deleteClusterError:\"I cluster non possono essere cancellati\",editClusterError:\"I clusters non possono essere modificati.\"};exports[\"it_IT\"]=exports[\"it\"];exports[\"nl\"]={edit:\"Wijzigen\",del:\"Selectie verwijderen\",\nback:\"Terug\",addNode:\"Node toevoegen\",addEdge:\"Link toevoegen\",editNode:\"Node wijzigen\",editEdge:\"Link wijzigen\",addDescription:\"Klik op een leeg gebied om een nieuwe node te maken.\",edgeDescription:\"Klik op een node en sleep de link naar een andere node om ze te verbinden.\",editEdgeDescription:\"Klik op de verbindingspunten en sleep ze naar een node om daarmee te verbinden.\",createEdgeError:\"Kan geen link maken naar een cluster.\",deleteClusterError:\"Clusters kunnen niet worden verwijderd.\",editClusterError:\"Clusters kunnen niet worden aangepast.\"};exports[\"nl_NL\"]=exports[\"nl\"];exports[\"nl_BE\"]=exports[\"nl\"];exports[\"pt-br\"]={edit:\"Editar\",del:\"Remover selecionado\",back:\"Voltar\",addNode:\"Adicionar nó\",addEdge:\"Adicionar aresta\",editNode:\"Editar nó\",editEdge:\"Editar aresta\",addDescription:\"Clique em um espaço em branco para adicionar um novo nó\",edgeDescription:\"Clique em um nó e arraste a aresta até outro nó para conectá-los\",editEdgeDescription:\"Clique nos pontos de controle e os arraste para um nó para conectá-los\",createEdgeError:\"Não foi possível linkar arestas a um cluster.\",deleteClusterError:\"Clusters não puderam ser removidos.\",editClusterError:\"Clusters não puderam ser editados.\"};exports[\"pt-BR\"]=exports[\"pt-br\"];exports[\"pt_BR\"]=exports[\"pt-br\"];exports[\"pt_br\"]=exports[\"pt-br\"];exports[\"ru\"]={edit:\"Редактировать\",del:\"Удалить выбранное\",back:\"Назад\",addNode:\"Добавить узел\",addEdge:\"Добавить ребро\",editNode:\"Редактировать узел\",editEdge:\"Редактировать ребро\",addDescription:\"Кликните в свободное место, чтобы добавить новый узел.\",edgeDescription:\"Кликните на узел и протяните ребро к другому узлу, чтобы соединить их.\",editEdgeDescription:\"Кликните на контрольные точки и перетащите их в узел, чтобы подключиться к нему.\",createEdgeError:\"Невозможно соединить ребра в кластер.\",deleteClusterError:\"Кластеры не могут быть удалены\",editClusterError:\"Кластеры недоступны для редактирования.\"};exports[\"ru_RU\"]=exports[\"ru\"];exports[\"cn\"]={edit:\"编辑\",del:\"删除选定\",back:\"返回\",addNode:\"添加节点\",addEdge:\"添加连接线\",editNode:\"编辑节点\",editEdge:\"编辑连接线\",addDescription:\"单击空白处放置新节点。\",edgeDescription:\"单击某个节点并将该连接线拖动到另一个节点以连接它们。\",editEdgeDescription:\"单击控制节点并将它们拖到节点上连接。\",createEdgeError:\"无法将连接线连接到群集。\",deleteClusterError:\"无法删除群集。\",editClusterError:\"无法编辑群集。\"};exports[\"zh_CN\"]=exports[\"cn\"]},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CachedImage=function(){function CachedImage(){(0,_classCallCheck3[\"default\"])(this,CachedImage);this.NUM_ITERATIONS=4;this.image=new Image;this.canvas=document.createElement(\"canvas\")}(0,_createClass3[\"default\"])(CachedImage,[{key:\"init\",value:function init(){if(this.initialized())return;this.src=this.image.src;var w=this.image.width;var h=this.image.height;this.width=w;this.height=h;var h2=Math.floor(h/2);var h4=Math.floor(h/4);var h8=Math.floor(h/8);var h16=Math.floor(h/16);var w2=Math.floor(w/2);var w4=Math.floor(w/4);var w8=Math.floor(w/8);var w16=Math.floor(w/16);this.canvas.width=3*w4;this.canvas.height=h2;this.coordinates=[[0,0,w2,h2],[w2,0,w4,h4],[w2,h4,w8,h8],[5*w8,h4,w16,h16]];this._fillMipMap()}},{key:\"initialized\",value:function initialized(){return this.coordinates!==undefined}},{key:\"_fillMipMap\",value:function _fillMipMap(){var ctx=this.canvas.getContext(\"2d\");var to=this.coordinates[0];ctx.drawImage(this.image,to[0],to[1],to[2],to[3]);for(var iterations=1;iterations<this.NUM_ITERATIONS;iterations++){var from=this.coordinates[iterations-1];var _to=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],_to[0],_to[1],_to[2],_to[3])}}},{key:\"drawImageAtPosition\",value:function drawImageAtPosition(ctx,factor,left,top,width,height){if(!this.initialized())return;if(factor>2){factor*=.5;var iterations=0;while(factor>2&&iterations<this.NUM_ITERATIONS){factor*=.5;iterations+=1}if(iterations>=this.NUM_ITERATIONS){iterations=this.NUM_ITERATIONS-1}var from=this.coordinates[iterations];ctx.drawImage(this.canvas,from[0],from[1],from[2],from[3],left,top,width,height)}else{ctx.drawImage(this.image,left,top,width,height)}}}]);return CachedImage}();exports[\"default\"]=CachedImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Groups=function(){function Groups(){(0,_classCallCheck3[\"default\"])(this,Groups);this.clear();this.defaultIndex=0;this.groupsArray=[];this.groupIndex=0;this.defaultGroups=[{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},{border:\"#FFA500\",background:\"#FFFF00\",highlight:{border:\"#FFA500\",background:\"#FFFFA3\"},hover:{border:\"#FFA500\",background:\"#FFFFA3\"}},{border:\"#FA0A10\",background:\"#FB7E81\",highlight:{border:\"#FA0A10\",background:\"#FFAFB1\"},hover:{border:\"#FA0A10\",background:\"#FFAFB1\"}},{border:\"#41A906\",background:\"#7BE141\",highlight:{border:\"#41A906\",background:\"#A1EC76\"},hover:{border:\"#41A906\",background:\"#A1EC76\"}},{border:\"#E129F0\",background:\"#EB7DF4\",highlight:{border:\"#E129F0\",background:\"#F0B3F5\"},hover:{border:\"#E129F0\",background:\"#F0B3F5\"}},{border:\"#7C29F0\",background:\"#AD85E4\",highlight:{border:\"#7C29F0\",background:\"#D3BDF0\"},hover:{border:\"#7C29F0\",background:\"#D3BDF0\"}},{border:\"#C37F00\",background:\"#FFA807\",highlight:{border:\"#C37F00\",background:\"#FFCA66\"},hover:{border:\"#C37F00\",background:\"#FFCA66\"}},{border:\"#4220FB\",background:\"#6E6EFD\",highlight:{border:\"#4220FB\",background:\"#9B9BFD\"},hover:{border:\"#4220FB\",background:\"#9B9BFD\"}},{border:\"#FD5A77\",background:\"#FFC0CB\",highlight:{border:\"#FD5A77\",background:\"#FFD1D9\"},hover:{border:\"#FD5A77\",background:\"#FFD1D9\"}},{border:\"#4AD63A\",background:\"#C2FABC\",highlight:{border:\"#4AD63A\",background:\"#E6FFE3\"},hover:{border:\"#4AD63A\",background:\"#E6FFE3\"}},{border:\"#990000\",background:\"#EE0000\",highlight:{border:\"#BB0000\",background:\"#FF3333\"},hover:{border:\"#BB0000\",background:\"#FF3333\"}},{border:\"#FF6000\",background:\"#FF6000\",highlight:{border:\"#FF6000\",background:\"#FF6000\"},hover:{border:\"#FF6000\",background:\"#FF6000\"}},{border:\"#97C2FC\",background:\"#2B7CE9\",highlight:{border:\"#D2E5FF\",background:\"#2B7CE9\"},hover:{border:\"#D2E5FF\",background:\"#2B7CE9\"}},{border:\"#399605\",background:\"#255C03\",highlight:{border:\"#399605\",background:\"#255C03\"},hover:{border:\"#399605\",background:\"#255C03\"}},{border:\"#B70054\",background:\"#FF007E\",highlight:{border:\"#B70054\",background:\"#FF007E\"},hover:{border:\"#B70054\",background:\"#FF007E\"}},{border:\"#AD85E4\",background:\"#7C29F0\",highlight:{border:\"#D3BDF0\",background:\"#7C29F0\"},hover:{border:\"#D3BDF0\",background:\"#7C29F0\"}},{border:\"#4557FA\",background:\"#000EA1\",highlight:{border:\"#6E6EFD\",background:\"#000EA1\"},hover:{border:\"#6E6EFD\",background:\"#000EA1\"}},{border:\"#FFC0CB\",background:\"#FD5A77\",highlight:{border:\"#FFD1D9\",background:\"#FD5A77\"},hover:{border:\"#FFD1D9\",background:\"#FD5A77\"}},{border:\"#C2FABC\",background:\"#74D66A\",highlight:{border:\"#E6FFE3\",background:\"#74D66A\"},hover:{border:\"#E6FFE3\",background:\"#74D66A\"}},{border:\"#EE0000\",background:\"#990000\",highlight:{border:\"#FF3333\",background:\"#BB0000\"},hover:{border:\"#FF3333\",background:\"#BB0000\"}}];this.options={};this.defaultOptions={useDefaultGroups:true};util.extend(this.options,this.defaultOptions)}(0,_createClass3[\"default\"])(Groups,[{key:\"setOptions\",value:function setOptions(options){var optionFields=[\"useDefaultGroups\"];if(options!==undefined){for(var groupName in options){if(options.hasOwnProperty(groupName)){if(optionFields.indexOf(groupName)===-1){var group=options[groupName];this.add(groupName,group)}}}}}},{key:\"clear\",value:function clear(){this.groups={};this.groupsArray=[]}},{key:\"get\",value:function get(groupname){var shouldCreate=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var group=this.groups[groupname];if(group===undefined&&shouldCreate){if(this.options.useDefaultGroups===false&&this.groupsArray.length>0){var index=this.groupIndex%this.groupsArray.length;this.groupIndex++;group={};group.color=this.groups[this.groupsArray[index]];this.groups[groupname]=group}else{var _index=this.defaultIndex%this.defaultGroups.length;this.defaultIndex++;group={};group.color=this.defaultGroups[_index];this.groups[groupname]=group}}return group}},{key:\"add\",value:function add(groupName,style){this.groups[groupName]=style;this.groupsArray.push(groupName);return style}}]);return Groups}();exports[\"default\"]=Groups},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Node=__webpack_require__(47)[\"default\"];var NodesHandler=function(){function NodesHandler(body,images,groups,layoutEngine){var _this=this;(0,_classCallCheck3[\"default\"])(this,NodesHandler);this.body=body;this.images=images;this.groups=groups;this.layoutEngine=layoutEngine;this.body.functions.createNode=this.create.bind(this);this.nodesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items,params.data,params.oldData)},remove:function remove(event,params){_this.remove(params.items)}};this.defaultOptions={borderWidth:1,borderWidthSelected:2,brokenImage:undefined,color:{border:\"#2B7CE9\",background:\"#97C2FC\",highlight:{border:\"#2B7CE9\",background:\"#D2E5FF\"},hover:{border:\"#2B7CE9\",background:\"#D2E5FF\"}},fixed:{x:false,y:false},font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:0,strokeColor:\"#ffffff\",align:\"center\",vadjust:0,multi:false,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"monospace\",vadjust:2}},group:undefined,hidden:false,icon:{face:\"FontAwesome\",code:undefined,size:50,color:\"#2B7CE9\"},image:undefined,label:undefined,labelHighlightBold:true,level:undefined,margin:{top:5,right:5,bottom:5,left:5},mass:1,physics:true,scaling:{min:10,max:30,label:{enabled:false,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},shape:\"ellipse\",shapeProperties:{borderDashes:false,borderRadius:6,interpolation:true,useImageSize:false,useBorderWithImage:false},size:25,title:undefined,value:undefined,x:undefined,y:undefined};if(this.defaultOptions.mass<=0){throw\"Internal error: mass in defaultOptions of NodesHandler may not be zero or negative\"}this.options=util.bridgeObject(this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(NodesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"refreshNodes\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.nodesListeners,function(callback,event){if(_this2.body.data.nodes)_this2.body.data.nodes.off(event,callback)});delete _this2.body.functions.createNode;delete _this2.nodesListeners.add;delete _this2.nodesListeners.update;delete _this2.nodesListeners.remove;delete _this2.nodesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Node.parseOptions(this.options,options);if(options.shape!==undefined){for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){this.body.nodes[nodeId].updateShape()}}}if(options.font!==undefined){for(var _nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId)){this.body.nodes[_nodeId].updateLabelModule();this.body.nodes[_nodeId].needsRefresh()}}}if(options.size!==undefined){for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.body.nodes[_nodeId2].needsRefresh()}}}if(options.hidden!==undefined||options.physics!==undefined){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(nodes){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldNodesData=this.body.data.nodes;if(nodes instanceof DataSet||nodes instanceof DataView){this.body.data.nodes=nodes}else if(Array.isArray(nodes)){this.body.data.nodes=new DataSet;this.body.data.nodes.add(nodes)}else if(!nodes){this.body.data.nodes=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldNodesData){util.forEach(this.nodesListeners,function(callback,event){oldNodesData.off(event,callback)})}this.body.nodes={};if(this.body.data.nodes){var me=this;util.forEach(this.nodesListeners,function(callback,event){me.body.data.nodes.on(event,callback)});var ids=this.body.data.nodes.getIds();this.add(ids,true)}if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var id=void 0;var newNodes=[];for(var i=0;i<ids.length;i++){id=ids[i];var properties=this.body.data.nodes.get(id);var node=this.create(properties);newNodes.push(node);this.body.nodes[id]=node}this.layoutEngine.positionInitially(newNodes);if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids,changedData,oldData){var nodes=this.body.nodes;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var node=nodes[id];var data=changedData[i];if(node!==undefined){if(node.setOptions(data)){dataChanged=true}}else{dataChanged=true;node=this.create(data);nodes[id]=node}}if(!dataChanged&&oldData!==undefined){dataChanged=changedData.some(function(newValue,index){var oldValue=oldData[index];return oldValue&&oldValue.level!==newValue.level})}if(dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var nodes=this.body.nodes;for(var i=0;i<ids.length;i++){var id=ids[i];delete nodes[id]}this.body.emitter.emit(\"_dataChanged\")}},{key:\"create\",value:function create(properties){var constructorClass=arguments.length>1&&arguments[1]!==undefined?arguments[1]:Node;return new constructorClass(properties,this.body,this.images,this.groups,this.options,this.defaultOptions)}},{key:\"refresh\",value:function refresh(){var _this3=this;var clearPositions=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;util.forEach(this.body.nodes,function(node,nodeId){var data=_this3.body.data.nodes.get(nodeId);if(data!==undefined){if(clearPositions===true){node.setOptions({x:null,y:null})}node.setOptions({fixed:false});node.setOptions(data)}})}},{key:\"getPositions\",value:function getPositions(ids){var dataArray={};if(ids!==undefined){if(Array.isArray(ids)===true){for(var i=0;i<ids.length;i++){if(this.body.nodes[ids[i]]!==undefined){var node=this.body.nodes[ids[i]];dataArray[ids[i]]={x:Math.round(node.x),y:Math.round(node.y)}}}}else{if(this.body.nodes[ids]!==undefined){var _node=this.body.nodes[ids];dataArray[ids]={x:Math.round(_node.x),y:Math.round(_node.y)}}}}else{for(var _i=0;_i<this.body.nodeIndices.length;_i++){var _node2=this.body.nodes[this.body.nodeIndices[_i]];dataArray[this.body.nodeIndices[_i]]={x:Math.round(_node2.x),y:Math.round(_node2.y)}}}return dataArray}},{key:\"storePositions\",value:function storePositions(){var dataArray=[];var dataset=this.body.data.nodes.getDataSet();for(var nodeId in dataset._data){if(dataset._data.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(dataset._data[nodeId].x!=Math.round(node.x)||dataset._data[nodeId].y!=Math.round(node.y)){dataArray.push({id:node.id,x:Math.round(node.x),y:Math.round(node.y)})}}}dataset.update(dataArray)}},{key:\"getBoundingBox\",value:function getBoundingBox(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].shape.boundingBox}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(nodeId,direction){var nodeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];var nodeObj={};for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(direction!==\"to\"&&edge.toId==node.id){if(nodeObj[edge.fromId]===undefined){nodeList.push(edge.fromId);nodeObj[edge.fromId]=true}}else if(direction!==\"from\"&&edge.fromId==node.id){if(nodeObj[edge.toId]===undefined){nodeList.push(edge.toId);nodeObj[edge.toId]=true}}}}return nodeList}},{key:\"getConnectedEdges\",value:function getConnectedEdges(nodeId){var edgeList=[];if(this.body.nodes[nodeId]!==undefined){var node=this.body.nodes[nodeId];for(var i=0;i<node.edges.length;i++){edgeList.push(node.edges[i].id)}}else{console.log(\"NodeId provided for getConnectedEdges does not exist. Provided: \",nodeId)}return edgeList}},{key:\"moveNode\",value:function moveNode(nodeId,x,y){var _this4=this;if(this.body.nodes[nodeId]!==undefined){this.body.nodes[nodeId].x=Number(x);this.body.nodes[nodeId].y=Number(y);setTimeout(function(){_this4.body.emitter.emit(\"startSimulation\")},0)}else{console.log(\"Node id supplied to moveNode does not exist. Provided: \",nodeId)}}}]);return NodesHandler}();exports[\"default\"]=NodesHandler},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(189),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(49);__webpack_require__(60);module.exports=__webpack_require__(190)},function(module,exports,__webpack_require__){var classof=__webpack_require__(86);var ITERATOR=__webpack_require__(13)(\"iterator\");var Iterators=__webpack_require__(31);module.exports=__webpack_require__(7).isIterable=function(it){var O=Object(it);return O[ITERATOR]!==undefined||\"@@iterator\"in O||Iterators.hasOwnProperty(classof(O))}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=__webpack_require__(192)[\"default\"];var ComponentUtil=__webpack_require__(48)[\"default\"];var LabelSplitter=function(){function LabelSplitter(ctx,parent,selected,hover){var _this=this;(0,_classCallCheck3[\"default\"])(this,LabelSplitter);this.ctx=ctx;this.parent=parent;var textWidth=function textWidth(text,mod){if(text===undefined)return 0;var values=_this.parent.getFormattingValues(ctx,selected,hover,mod);var width=0;if(text!==\"\"){var measure=_this.ctx.measureText(text);width=measure.width}return{width:width,values:values}};this.lines=new LabelAccumulator(textWidth)}(0,_createClass3[\"default\"])(LabelSplitter,[{key:\"process\",value:function process(text){if(!ComponentUtil.isValidLabel(text)){return this.lines.finalize()}var font=this.parent.fontOptions;text=text.replace(/\\r\\n/g,\"\\n\");text=text.replace(/\\r/g,\"\\n\");var nlLines=String(text).split(\"\\n\");var lineCount=nlLines.length;if(font.multi){for(var i=0;i<lineCount;i++){var blocks=this.splitBlocks(nlLines[i],font.multi);if(blocks===undefined)continue;if(blocks.length===0){this.lines.newLine(\"\");continue}if(font.maxWdt>0){for(var j=0;j<blocks.length;j++){var mod=blocks[j].mod;var _text=blocks[j].text;this.splitStringIntoLines(_text,mod,true)}}else{for(var _j=0;_j<blocks.length;_j++){var _mod=blocks[_j].mod;var _text2=blocks[_j].text;this.lines.append(_text2,_mod)}}this.lines.newLine()}}else{if(font.maxWdt>0){for(var _i=0;_i<lineCount;_i++){this.splitStringIntoLines(nlLines[_i])}}else{for(var _i2=0;_i2<lineCount;_i2++){this.lines.newLine(nlLines[_i2])}}}return this.lines.finalize()}},{key:\"decodeMarkupSystem\",value:function decodeMarkupSystem(markupSystem){var system=\"none\";if(markupSystem===\"markdown\"||markupSystem===\"md\"){system=\"markdown\"}else if(markupSystem===true||markupSystem===\"html\"){system=\"html\"}return system}},{key:\"splitHtmlBlocks\",value:function splitHtmlBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}}else if(/</.test(ch)){if(!s.mono&&!s.bold&&/<b>/.test(text.substr(s.position,3))){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\");s.position+=2}else if(!s.mono&&!s.ital&&/<i>/.test(text.substr(s.position,3))){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\");s.position+=2}else if(!s.mono&&/<code>/.test(text.substr(s.position,6))){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\");s.position+=5}else if(!s.mono&&s.mod()===\"bold\"&&/<\\/b>/.test(text.substr(s.position,4))){s.emitBlock();s.bold=false;s.modStack.shift();s.position+=3}else if(!s.mono&&s.mod()===\"ital\"&&/<\\/i>/.test(text.substr(s.position,4))){s.emitBlock();s.ital=false;s.modStack.shift();s.position+=3}else if(s.mod()===\"mono\"&&/<\\/code>/.test(text.substr(s.position,7))){s.emitBlock();s.mono=false;s.modStack.shift();s.position+=6}else{s.add(ch)}}else if(/&/.test(ch)){if(/&lt;/.test(text.substr(s.position,4))){s.add(\"<\");s.position+=3}else if(/&amp;/.test(text.substr(s.position,5))){s.add(\"&\");s.position+=4}else{s.add(\"&\")}}else{s.add(ch)}s.position++}s.emitBlock();return blocks}},{key:\"splitMarkdownBlocks\",value:function splitMarkdownBlocks(text){var blocks=[];var s={bold:false,ital:false,mono:false,beginable:true,spacing:false,position:0,buffer:\"\",modStack:[]};s.mod=function(){return this.modStack.length===0?\"normal\":this.modStack[0]};s.modName=function(){if(this.modStack.length===0)return\"normal\";else if(this.modStack[0]===\"mono\")return\"mono\";else{if(s.bold&&s.ital){return\"boldital\"}else if(s.bold){return\"bold\"}else if(s.ital){return\"ital\"}}};s.emitBlock=function(){var override=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.spacing){this.add(\" \");this.spacing=false}if(this.buffer.length>0){blocks.push({text:this.buffer,mod:this.modName()});this.buffer=\"\"}};s.add=function(text){if(text===\" \"){s.spacing=true}if(s.spacing){this.buffer+=\" \";this.spacing=false}if(text!=\" \"){this.buffer+=text}};while(s.position<text.length){var ch=text.charAt(s.position);if(/[ \\t]/.test(ch)){if(!s.mono){s.spacing=true}else{s.add(ch)}s.beginable=true}else if(/\\\\/.test(ch)){if(s.position<text.length+1){s.position++;ch=text.charAt(s.position);if(/ \\t/.test(ch)){s.spacing=true}else{s.add(ch);s.beginable=false}}}else if(!s.mono&&!s.bold&&(s.beginable||s.spacing)&&/\\*/.test(ch)){s.emitBlock();s.bold=true;s.modStack.unshift(\"bold\")}else if(!s.mono&&!s.ital&&(s.beginable||s.spacing)&&/\\_/.test(ch)){s.emitBlock();s.ital=true;s.modStack.unshift(\"ital\")}else if(!s.mono&&(s.beginable||s.spacing)&&/`/.test(ch)){s.emitBlock();s.mono=true;s.modStack.unshift(\"mono\")}else if(!s.mono&&s.mod()===\"bold\"&&/\\*/.test(ch)){if(s.position===text.length-1||/[.,_` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.bold=false;s.modStack.shift()}else{s.add(ch)}}else if(!s.mono&&s.mod()===\"ital\"&&/\\_/.test(ch)){if(s.position===text.length-1||/[.,*` \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.ital=false;s.modStack.shift()}else{s.add(ch)}}else if(s.mono&&s.mod()===\"mono\"&&/`/.test(ch)){if(s.position===text.length-1||/[.,*_ \\t\\n]/.test(text.charAt(s.position+1))){s.emitBlock();s.mono=false;s.modStack.shift()}else{s.add(ch)}}else{s.add(ch);s.beginable=false}s.position++}s.emitBlock();return blocks}},{key:\"splitBlocks\",value:function splitBlocks(text,markupSystem){var system=this.decodeMarkupSystem(markupSystem);if(system===\"none\"){return[{text:text,mod:\"normal\"}]}else if(system===\"markdown\"){return this.splitMarkdownBlocks(text)}else if(system===\"html\"){return this.splitHtmlBlocks(text)}}},{key:\"overMaxWidth\",value:function overMaxWidth(text){var width=this.ctx.measureText(text).width;return this.lines.curWidth()+width>this.parent.fontOptions.maxWdt}},{key:\"getLongestFit\",value:function getLongestFit(words){var text=\"\";var w=0;while(w<words.length){var pre=text===\"\"?\"\":\" \";var newText=text+pre+words[w];if(this.overMaxWidth(newText))break;text=newText;w++}return w}},{key:\"getLongestFitWord\",value:function getLongestFitWord(words){var w=0;while(w<words.length){if(this.overMaxWidth(words.slice(0,w)))break;w++}return w}},{key:\"splitStringIntoLines\",value:function splitStringIntoLines(str){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";var appendLast=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;str=str.replace(/^( +)/g,\"$1\\r\");str=str.replace(/([^\\r][^ ]*)( +)/g,\"$1\\r$2\\r\");var words=str.split(\"\\r\");while(words.length>0){var w=this.getLongestFit(words);if(w===0){var word=words[0];var x=this.getLongestFitWord(word);this.lines.newLine(word.slice(0,x),mod);words[0]=word.slice(x)}else{var newW=w;if(words[w-1]===\" \"){w--}else if(words[newW]===\" \"){newW++}var text=words.slice(0,w).join(\"\");if(w==words.length&&appendLast){this.lines.append(text,mod)}else{this.lines.newLine(text,mod)}words=words.slice(newW)}}}}]);return LabelSplitter}();exports[\"default\"]=LabelSplitter},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _assign=__webpack_require__(90);var _assign2=_interopRequireDefault(_assign);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var LabelAccumulator=function(){function LabelAccumulator(measureText){(0,_classCallCheck3[\"default\"])(this,LabelAccumulator);this.measureText=measureText;this.current=0;this.width=0;this.height=0;this.lines=[]}(0,_createClass3[\"default\"])(LabelAccumulator,[{key:\"_add\",value:function _add(l,text){var mod=arguments.length>2&&arguments[2]!==undefined?arguments[2]:\"normal\";if(this.lines[l]===undefined){this.lines[l]={width:0,height:0,blocks:[]}}var tmpText=text;if(text===undefined||text===\"\")tmpText=\" \";var result=this.measureText(tmpText,mod);var block=(0,_assign2[\"default\"])({},result.values);block.text=text;block.width=result.width;block.mod=mod;if(text===undefined||text===\"\"){block.width=0}this.lines[l].blocks.push(block);this.lines[l].width+=block.width}},{key:\"curWidth\",value:function curWidth(){var line=this.lines[this.current];if(line===undefined)return 0;return line.width}},{key:\"append\",value:function append(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod)}},{key:\"newLine\",value:function newLine(text){var mod=arguments.length>1&&arguments[1]!==undefined?arguments[1]:\"normal\";this._add(this.current,text,mod);this.current++}},{key:\"determineLineHeights\",value:function determineLineHeights(){for(var k=0;k<this.lines.length;k++){var line=this.lines[k];var height=0;if(line.blocks!==undefined){for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(height<block.height){height=block.height}}}line.height=height}}},{key:\"determineLabelSize\",value:function determineLabelSize(){var width=0;var height=0;for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.width>width){width=line.width}height+=line.height}this.width=width;this.height=height}},{key:\"removeEmptyBlocks\",value:function removeEmptyBlocks(){var tmpLines=[];for(var k=0;k<this.lines.length;k++){var line=this.lines[k];if(line.blocks.length===0)continue;if(k===this.lines.length-1){if(line.width===0)continue}var tmpLine={};(0,_assign2[\"default\"])(tmpLine,line);tmpLine.blocks=[];var firstEmptyBlock=void 0;var tmpBlocks=[];for(var l=0;l<line.blocks.length;l++){var block=line.blocks[l];if(block.width!==0){tmpBlocks.push(block)}else{if(firstEmptyBlock===undefined){firstEmptyBlock=block}}}if(tmpBlocks.length===0&&firstEmptyBlock!==undefined){tmpBlocks.push(firstEmptyBlock)}tmpLine.blocks=tmpBlocks;tmpLines.push(tmpLine)}return tmpLines}},{key:\"finalize\",value:function finalize(){this.determineLineHeights();this.determineLabelSize();var tmpLines=this.removeEmptyBlocks();return{width:this.width,height:this.height,lines:tmpLines}}}]);return LabelAccumulator}();exports[\"default\"]=LabelAccumulator},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Box=function(_NodeBase){(0,_inherits3[\"default\"])(Box,_NodeBase);function Box(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Box);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Box.__proto__||(0,_getPrototypeOf2[\"default\"])(Box)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Box,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.width=dimensions.width+this.margin.right+this.margin.left;this.height=dimensions.height+this.margin.top+this.margin.bottom;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.roundRect(this.left,this.top,this.width,this.height,values.borderRadius);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y,ctx,selected,hover){this._updateBoundingBox(x,y,ctx,selected,hover)\n;var borderRadius=this.options.shapeProperties.borderRadius;this._addBoundingBoxMargin(borderRadius)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var borderWidth=this.options.borderWidth;return Math.min(Math.abs(this.width/2/Math.cos(angle)),Math.abs(this.height/2/Math.sin(angle)))+borderWidth}}]);return Box}(_NodeBase3[\"default\"]);exports[\"default\"]=Box},function(module,exports,__webpack_require__){__webpack_require__(195);module.exports=__webpack_require__(7).Object.getPrototypeOf},function(module,exports,__webpack_require__){var toObject=__webpack_require__(41);var $getPrototypeOf=__webpack_require__(85);__webpack_require__(87)(\"getPrototypeOf\",function(){return function getPrototypeOf(it){return $getPrototypeOf(toObject(it))}})},function(module,exports,__webpack_require__){module.exports={default:__webpack_require__(197),__esModule:true}},function(module,exports,__webpack_require__){__webpack_require__(198);module.exports=__webpack_require__(7).Object.setPrototypeOf},function(module,exports,__webpack_require__){var $export=__webpack_require__(17);$export($export.S,\"Object\",{setPrototypeOf:__webpack_require__(199).set})},function(module,exports,__webpack_require__){var isObject=__webpack_require__(32);var anObject=__webpack_require__(27);var check=function(O,proto){anObject(O);if(!isObject(proto)&&proto!==null)throw TypeError(proto+\": can't set as prototype!\")};module.exports={set:Object.setPrototypeOf||(\"__proto__\"in{}?function(test,buggy,set){try{set=__webpack_require__(80)(Function.call,__webpack_require__(89).f(Object.prototype,\"__proto__\").set,2);set(test,[]);buggy=!(test instanceof Array)}catch(e){buggy=true}return function setPrototypeOf(O,proto){check(O,proto);if(buggy)O.__proto__=proto;else set(O,proto);return O}}({},false):undefined),check:check}},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Circle=function(_CircleImageBase){(0,_inherits3[\"default\"])(Circle,_CircleImageBase);function Circle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Circle);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Circle.__proto__||(0,_getPrototypeOf2[\"default\"])(Circle)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Circle,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var diameter=Math.max(dimensions.width+this.margin.right+this.margin.left,dimensions.height+this.margin.top+this.margin.bottom);this.options.size=diameter/2;this.width=diameter;this.height=diameter;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);this.updateBoundingBox(x,y);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,y,selected,hover)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return Circle}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Circle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CircularImage=function(_CircleImageBase){(0,_inherits3[\"default\"])(CircularImage,_CircleImageBase);function CircularImage(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,CircularImage);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(CircularImage.__proto__||(0,_getPrototypeOf2[\"default\"])(CircularImage)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(CircularImage,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var diameter=this.options.size*2;this.width=diameter;this.height=diameter;this.radius=.5*this.width;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;this._drawRawCircle(ctx,x,y,values);ctx.save();ctx.clip();this._drawImageAtPosition(ctx,values);ctx.restore();this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.size;this.boundingBox.left=x-this.options.size;this.boundingBox.right=x+this.options.size;this.boundingBox.bottom=y+this.options.size;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.width*.5}}]);return CircularImage}(_CircleImageBase3[\"default\"]);exports[\"default\"]=CircularImage},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Database=function(_NodeBase){(0,_inherits3[\"default\"])(Database,_NodeBase);function Database(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Database);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Database.__proto__||(0,_getPrototypeOf2[\"default\"])(Database)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Database,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);var size=dimensions.width+this.margin.right+this.margin.left;this.width=size;this.height=size;this.radius=this.width/2}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.initContextForDraw(ctx,values);ctx.database(x-this.width/2,y-this.height/2,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Database}(_NodeBase3[\"default\"]);exports[\"default\"]=Database},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Diamond=function(_ShapeBase){(0,_inherits3[\"default\"])(Diamond,_ShapeBase);function Diamond(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Diamond);return(0,_possibleConstructorReturn3[\"default\"])(this,(Diamond.__proto__||(0,_getPrototypeOf2[\"default\"])(Diamond)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Diamond,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"diamond\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Diamond}(_ShapeBase3[\"default\"]);exports[\"default\"]=Diamond},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Dot=function(_ShapeBase){(0,_inherits3[\"default\"])(Dot,_ShapeBase);function Dot(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Dot);return(0,_possibleConstructorReturn3[\"default\"])(this,(Dot.__proto__||(0,_getPrototypeOf2[\"default\"])(Dot)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Dot,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"circle\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);return this.options.size}}]);return Dot}(_ShapeBase3[\"default\"]);exports[\"default\"]=Dot},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Ellipse=function(_NodeBase){(0,_inherits3[\"default\"])(Ellipse,_NodeBase);function Ellipse(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Ellipse);return(0,_possibleConstructorReturn3[\"default\"])(this,(Ellipse.__proto__||(0,_getPrototypeOf2[\"default\"])(Ellipse)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Ellipse,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;if(this.needsRefresh(selected,hover)){var dimensions=this.getDimensionsFromLabel(ctx,selected,hover);this.height=dimensions.height*2;this.width=dimensions.width+dimensions.height;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width*.5;this.top=y-this.height*.5;this.initContextForDraw(ctx,values);ctx.ellipse_vis(this.left,this.top,this.width,this.height);this.performFill(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover);this.labelModule.draw(ctx,x,y,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){this.resize(ctx);var a=this.width*.5;var b=this.height*.5;var w=Math.sin(angle)*a;var h=Math.cos(angle)*b;return a*b/Math.sqrt(w*w+h*h)}}]);return Ellipse}(_NodeBase3[\"default\"]);exports[\"default\"]=Ellipse},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Icon=function(_NodeBase){(0,_inherits3[\"default\"])(Icon,_NodeBase);function Icon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Icon);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Icon.__proto__||(0,_getPrototypeOf2[\"default\"])(Icon)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Icon,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.iconSize={width:Number(this.options.icon.size),height:Number(this.options.icon.size)};this.width=this.iconSize.width+this.margin.right+this.margin.left;this.height=this.iconSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.options.icon.size=this.options.icon.size||50;this.left=x-this.width/2;this.top=y-this.height/2;this._icon(ctx,x,y,selected,hover,values);if(this.options.label!==undefined){var iconTextSpacing=5;this.labelModule.draw(ctx,this.left+this.iconSize.width/2+this.margin.left,y+this.height/2+iconTextSpacing,selected)}this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.boundingBox.top=y-this.options.icon.size*.5;this.boundingBox.left=x-this.options.icon.size*.5;this.boundingBox.right=x+this.options.icon.size*.5;this.boundingBox.bottom=y+this.options.icon.size*.5;if(this.options.label!==undefined&&this.labelModule.size.width>0){var iconTextSpacing=5;this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelModule.size.height+iconTextSpacing)}}},{key:\"_icon\",value:function _icon(ctx,x,y,selected,hover,values){var iconSize=Number(this.options.icon.size);if(this.options.icon.code!==undefined){ctx.font=(selected?\"bold \":\"\")+iconSize+\"px \"+this.options.icon.face;ctx.fillStyle=this.options.icon.color||\"black\";ctx.textAlign=\"center\";ctx.textBaseline=\"middle\";this.enableShadow(ctx,values);ctx.fillText(this.options.icon.code,x,y);this.disableShadow(ctx,values)}else{console.error(\"When using the icon shape, you need to define the code in the icon options object. This can be done per node or globally.\")}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Icon}(_NodeBase3[\"default\"]);exports[\"default\"]=Icon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CircleImageBase2=__webpack_require__(73);var _CircleImageBase3=_interopRequireDefault(_CircleImageBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Image=function(_CircleImageBase){(0,_inherits3[\"default\"])(Image,_CircleImageBase);function Image(options,body,labelModule,imageObj,imageObjAlt){(0,_classCallCheck3[\"default\"])(this,Image);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Image.__proto__||(0,_getPrototypeOf2[\"default\"])(Image)).call(this,options,body,labelModule));_this.setImages(imageObj,imageObjAlt);return _this}(0,_createClass3[\"default\"])(Image,[{key:\"resize\",value:function resize(ctx){var selected=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.selected;var hover=arguments.length>2&&arguments[2]!==undefined?arguments[2]:this.hover;var imageAbsent=this.imageObj.src===undefined||this.imageObj.width===undefined||this.imageObj.height===undefined;if(imageAbsent){var side=this.options.size*2;this.width=side;this.height=side;return}if(this.needsRefresh(selected,hover)){this._resizeImage()}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.switchImages(selected);this.resize();this.left=x-this.width/2;this.top=y-this.height/2;if(this.options.shapeProperties.useBorderWithImage===true){var neutralborderWidth=this.options.borderWidth;var selectionLineWidth=this.options.borderWidthSelected||2*this.options.borderWidth;var borderWidth=(selected?selectionLineWidth:neutralborderWidth)/this.body.view.scale;ctx.lineWidth=Math.min(this.width,borderWidth);ctx.beginPath();ctx.strokeStyle=selected?this.options.color.highlight.border:hover?this.options.color.hover.border:this.options.color.border;ctx.fillStyle=selected?this.options.color.highlight.background:hover?this.options.color.hover.background:this.options.color.background;ctx.rect(this.left-.5*ctx.lineWidth,this.top-.5*ctx.lineWidth,this.width+ctx.lineWidth,this.height+ctx.lineWidth);ctx.fill();this.performStroke(ctx,values);ctx.closePath()}this._drawImageAtPosition(ctx,values);this._drawImageLabel(ctx,x,y,selected,hover);this.updateBoundingBox(x,y)}},{key:\"updateBoundingBox\",value:function updateBoundingBox(x,y){this.resize();this._updateBoundingBox(x,y);if(this.options.label!==undefined&&this.labelModule.size.width>0){this.boundingBox.left=Math.min(this.boundingBox.left,this.labelModule.size.left);this.boundingBox.right=Math.max(this.boundingBox.right,this.labelModule.size.left+this.labelModule.size.width);this.boundingBox.bottom=Math.max(this.boundingBox.bottom,this.boundingBox.bottom+this.labelOffset)}}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Image}(_CircleImageBase3[\"default\"]);exports[\"default\"]=Image},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Square=function(_ShapeBase){(0,_inherits3[\"default\"])(Square,_ShapeBase);function Square(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Square);return(0,_possibleConstructorReturn3[\"default\"])(this,(Square.__proto__||(0,_getPrototypeOf2[\"default\"])(Square)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Square,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"square\",2,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Square}(_ShapeBase3[\"default\"]);exports[\"default\"]=Square},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hexagon=function(_ShapeBase){(0,_inherits3[\"default\"])(Hexagon,_ShapeBase);function Hexagon(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Hexagon);return(0,_possibleConstructorReturn3[\"default\"])(this,(Hexagon.__proto__||(0,_getPrototypeOf2[\"default\"])(Hexagon)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Hexagon,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"hexagon\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Hexagon}(_ShapeBase3[\"default\"]);exports[\"default\"]=Hexagon},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Star=function(_ShapeBase){(0,_inherits3[\"default\"])(Star,_ShapeBase);function Star(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Star);return(0,_possibleConstructorReturn3[\"default\"])(this,(Star.__proto__||(0,_getPrototypeOf2[\"default\"])(Star)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Star,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"star\",4,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Star}(_ShapeBase3[\"default\"]);exports[\"default\"]=Star},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _NodeBase2=__webpack_require__(23);var _NodeBase3=_interopRequireDefault(_NodeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Text=function(_NodeBase){(0,_inherits3[\"default\"])(Text,_NodeBase);function Text(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Text);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Text.__proto__||(0,_getPrototypeOf2[\"default\"])(Text)).call(this,options,body,labelModule));_this._setMargins(labelModule);return _this}(0,_createClass3[\"default\"])(Text,[{key:\"resize\",value:function resize(ctx,selected,hover){if(this.needsRefresh(selected,hover)){this.textSize=this.labelModule.getTextSize(ctx,selected,hover);this.width=this.textSize.width+this.margin.right+this.margin.left;this.height=this.textSize.height+this.margin.top+this.margin.bottom;this.radius=.5*this.width}}},{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this.resize(ctx,selected,hover);this.left=x-this.width/2;this.top=y-this.height/2;this.enableShadow(ctx,values);this.labelModule.draw(ctx,this.left+this.textSize.width/2+this.margin.left,this.top+this.textSize.height/2+this.margin.top,selected,hover);this.disableShadow(ctx,values);this.updateBoundingBox(x,y,ctx,selected,hover)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Text}(_NodeBase3[\"default\"]);exports[\"default\"]=Text},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Triangle=function(_ShapeBase){(0,_inherits3[\"default\"])(Triangle,_ShapeBase);function Triangle(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,Triangle);return(0,_possibleConstructorReturn3[\"default\"])(this,(Triangle.__proto__||(0,_getPrototypeOf2[\"default\"])(Triangle)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(Triangle,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangle\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return Triangle}(_ShapeBase3[\"default\"]);exports[\"default\"]=Triangle},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _ShapeBase2=__webpack_require__(24);var _ShapeBase3=_interopRequireDefault(_ShapeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var TriangleDown=function(_ShapeBase){(0,_inherits3[\"default\"])(TriangleDown,_ShapeBase);function TriangleDown(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,TriangleDown);return(0,_possibleConstructorReturn3[\"default\"])(this,(TriangleDown.__proto__||(0,_getPrototypeOf2[\"default\"])(TriangleDown)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(TriangleDown,[{key:\"draw\",value:function draw(ctx,x,y,selected,hover,values){this._drawShape(ctx,\"triangleDown\",3,x,y,selected,hover,values)}},{key:\"distanceToBorder\",value:function distanceToBorder(ctx,angle){return this._distanceToBorder(ctx,angle)}}]);return TriangleDown}(_ShapeBase3[\"default\"]);exports[\"default\"]=TriangleDown},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var DataSet=__webpack_require__(11);var DataView=__webpack_require__(12);var Edge=__webpack_require__(74)[\"default\"];var EdgesHandler=function(){function EdgesHandler(body,images,groups){var _this=this;(0,_classCallCheck3[\"default\"])(this,EdgesHandler);this.body=body;this.images=images;this.groups=groups;this.body.functions.createEdge=this.create.bind(this);this.edgesListeners={add:function add(event,params){_this.add(params.items)},update:function update(event,params){_this.update(params.items)},remove:function remove(event,params){_this.remove(params.items)}};this.options={};this.defaultOptions={arrows:{to:{enabled:false,\nscaleFactor:1,type:\"arrow\"},middle:{enabled:false,scaleFactor:1,type:\"arrow\"},from:{enabled:false,scaleFactor:1,type:\"arrow\"}},arrowStrikethrough:true,color:{color:\"#848484\",highlight:\"#848484\",hover:\"#848484\",inherit:\"from\",opacity:1},dashes:false,font:{color:\"#343434\",size:14,face:\"arial\",background:\"none\",strokeWidth:2,strokeColor:\"#ffffff\",align:\"horizontal\",multi:false,vadjust:0,bold:{mod:\"bold\"},boldital:{mod:\"bold italic\"},ital:{mod:\"italic\"},mono:{mod:\"\",size:15,face:\"courier new\",vadjust:2}},hidden:false,hoverWidth:1.5,label:undefined,labelHighlightBold:true,length:undefined,physics:true,scaling:{min:1,max:15,label:{enabled:true,min:14,max:30,maxVisible:30,drawThreshold:5},customScalingFunction:function customScalingFunction(min,max,total,value){if(max===min){return.5}else{var scale=1/(max-min);return Math.max(0,(value-min)*scale)}}},selectionWidth:1.5,selfReferenceSize:20,shadow:{enabled:false,color:\"rgba(0,0,0,0.5)\",size:10,x:5,y:5},smooth:{enabled:true,type:\"dynamic\",forceDirection:\"none\",roundness:.5},title:undefined,width:1,value:undefined};util.deepExtend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(EdgesHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_forceDisableDynamicCurves\",function(type){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(type===\"dynamic\"){type=\"continuous\"}var dataChanged=false;for(var edgeId in _this2.body.edges){if(_this2.body.edges.hasOwnProperty(edgeId)){var edge=_this2.body.edges[edgeId];var edgeData=_this2.body.data.edges._data[edgeId];if(edgeData!==undefined){var smoothOptions=edgeData.smooth;if(smoothOptions!==undefined){if(smoothOptions.enabled===true&&smoothOptions.type===\"dynamic\"){if(type===undefined){edge.setOptions({smooth:false})}else{edge.setOptions({smooth:{type:type}})}dataChanged=true}}}}}if(emit===true&&dataChanged===true){_this2.body.emitter.emit(\"_dataChanged\")}});this.body.emitter.on(\"_dataUpdated\",function(){_this2.reconnectEdges()});this.body.emitter.on(\"refreshEdges\",this.refresh.bind(this));this.body.emitter.on(\"refresh\",this.refresh.bind(this));this.body.emitter.on(\"destroy\",function(){util.forEach(_this2.edgesListeners,function(callback,event){if(_this2.body.data.edges)_this2.body.data.edges.off(event,callback)});delete _this2.body.functions.createEdge;delete _this2.edgesListeners.add;delete _this2.edgesListeners.update;delete _this2.edgesListeners.remove;delete _this2.edgesListeners})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){Edge.parseOptions(this.options,options,true,this.defaultOptions,true);var dataChanged=false;if(options.smooth!==undefined){for(var edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(edgeId)){dataChanged=this.body.edges[edgeId].updateEdgeType()||dataChanged}}}if(options.font!==undefined){for(var _edgeId in this.body.edges){if(this.body.edges.hasOwnProperty(_edgeId)){this.body.edges[_edgeId].updateLabelModule()}}}if(options.hidden!==undefined||options.physics!==undefined||dataChanged===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"setData\",value:function setData(edges){var _this3=this;var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var oldEdgesData=this.body.data.edges;if(edges instanceof DataSet||edges instanceof DataView){this.body.data.edges=edges}else if(Array.isArray(edges)){this.body.data.edges=new DataSet;this.body.data.edges.add(edges)}else if(!edges){this.body.data.edges=new DataSet}else{throw new TypeError(\"Array or DataSet expected\")}if(oldEdgesData){util.forEach(this.edgesListeners,function(callback,event){oldEdgesData.off(event,callback)})}this.body.edges={};if(this.body.data.edges){util.forEach(this.edgesListeners,function(callback,event){_this3.body.data.edges.on(event,callback)});var ids=this.body.data.edges.getIds();this.add(ids,true)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"add\",value:function add(ids){var doNotEmit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var edges=this.body.edges;var edgesData=this.body.data.edges;for(var i=0;i<ids.length;i++){var id=ids[i];var oldEdge=edges[id];if(oldEdge){oldEdge.disconnect()}var data=edgesData.get(id,{showInternalIds:true});edges[id]=this.create(data)}this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");if(doNotEmit===false){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"update\",value:function update(ids){var edges=this.body.edges;var edgesData=this.body.data.edges;var dataChanged=false;for(var i=0;i<ids.length;i++){var id=ids[i];var data=edgesData.get(id);var edge=edges[id];if(edge!==undefined){edge.disconnect();dataChanged=edge.setOptions(data)||dataChanged;edge.connect()}else{this.body.edges[id]=this.create(data);dataChanged=true}}if(dataChanged===true){this.body.emitter.emit(\"_adjustEdgesForHierarchicalLayout\");this.body.emitter.emit(\"_dataChanged\")}else{this.body.emitter.emit(\"_dataUpdated\")}}},{key:\"remove\",value:function remove(ids){var emit=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(ids.length===0)return;var edges=this.body.edges;util.forEach(ids,function(id){var edge=edges[id];if(edge!==undefined){edge.remove()}});if(emit){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"refresh\",value:function refresh(){var _this4=this;util.forEach(this.body.edges,function(edge,edgeId){var data=_this4.body.data.edges._data[edgeId];if(data!==undefined){edge.setOptions(data)}})}},{key:\"create\",value:function create(properties){return new Edge(properties,this.body,this.options,this.defaultOptions)}},{key:\"reconnectEdges\",value:function reconnectEdges(){var id;var nodes=this.body.nodes;var edges=this.body.edges;for(id in nodes){if(nodes.hasOwnProperty(id)){nodes[id].edges=[]}}for(id in edges){if(edges.hasOwnProperty(id)){var edge=edges[id];edge.from=null;edge.to=null;edge.connect()}}}},{key:\"getConnectedNodes\",value:function getConnectedNodes(edgeId){var nodeList=[];if(this.body.edges[edgeId]!==undefined){var edge=this.body.edges[edgeId];if(edge.fromId!==undefined){nodeList.push(edge.fromId)}if(edge.toId!==undefined){nodeList.push(edge.toId)}}return nodeList}},{key:\"_updateState\",value:function _updateState(){this._addMissingEdges();this._removeInvalidEdges()}},{key:\"_removeInvalidEdges\",value:function _removeInvalidEdges(){var _this5=this;var edgesToDelete=[];util.forEach(this.body.edges,function(edge,id){var toNode=_this5.body.nodes[edge.toId];var fromNode=_this5.body.nodes[edge.fromId];if(toNode!==undefined&&toNode.isCluster===true||fromNode!==undefined&&fromNode.isCluster===true){return}if(toNode===undefined||fromNode===undefined){edgesToDelete.push(id)}});this.remove(edgesToDelete,false)}},{key:\"_addMissingEdges\",value:function _addMissingEdges(){var edges=this.body.edges;var edgesData=this.body.data.edges;var addIds=[];edgesData.forEach(function(edgeData,edgeId){var edge=edges[edgeId];if(edge===undefined){addIds.push(edgeId)}});this.add(addIds,true)}}]);return EdgesHandler}();exports[\"default\"]=EdgesHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CubicBezierEdgeBase2=__webpack_require__(216);var _CubicBezierEdgeBase3=_interopRequireDefault(_CubicBezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdge=function(_CubicBezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdge,_CubicBezierEdgeBase);function CubicBezierEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdge,[{key:\"_line\",value:function _line(ctx,values,viaNodes){var via1=viaNodes[0];var via2=viaNodes[1];this._bezierCurve(ctx,values,via1,via2)}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var dx=this.from.x-this.to.x;var dy=this.from.y-this.to.y;var x1=void 0,y1=void 0,x2=void 0,y2=void 0;var roundness=this.options.smooth.roundness;if((Math.abs(dx)>Math.abs(dy)||this.options.smooth.forceDirection===true||this.options.smooth.forceDirection===\"horizontal\")&&this.options.smooth.forceDirection!==\"vertical\"){y1=this.from.y;y2=this.to.y;x1=this.from.x-roundness*dx;x2=this.to.x+roundness*dx}else{y1=this.from.y-roundness*dy;y2=this.to.y+roundness*dy;x1=this.from.x;x2=this.to.x}return[{x:x1,y:y1},{x:x2,y:y2}]}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var _ref=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates(),_ref2=(0,_slicedToArray3[\"default\"])(_ref,2),via1=_ref2[0],via2=_ref2[1];return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2)}},{key:\"getPoint\",value:function getPoint(percentage){var _ref3=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates(),_ref4=(0,_slicedToArray3[\"default\"])(_ref3,2),via1=_ref4[0],via2=_ref4[1];var t=percentage;var vec=[];vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);var x=vec[0]*this.fromPoint.x+vec[1]*via1.x+vec[2]*via2.x+vec[3]*this.toPoint.x;var y=vec[0]*this.fromPoint.y+vec[1]*via1.y+vec[2]*via2.y+vec[3]*this.toPoint.y;return{x:x,y:y}}}]);return CubicBezierEdge}(_CubicBezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var CubicBezierEdgeBase=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(CubicBezierEdgeBase,_BezierEdgeBase);function CubicBezierEdgeBase(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,CubicBezierEdgeBase);return(0,_possibleConstructorReturn3[\"default\"])(this,(CubicBezierEdgeBase.__proto__||(0,_getPrototypeOf2[\"default\"])(CubicBezierEdgeBase)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(CubicBezierEdgeBase,[{key:\"_getDistanceToBezierEdge\",value:function _getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,via1,via2){var minDistance=1e9;var distance=void 0;var i=void 0,t=void 0,x=void 0,y=void 0;var lastX=x1;var lastY=y1;var vec=[0,0,0,0];for(i=1;i<10;i++){t=.1*i;vec[0]=Math.pow(1-t,3);vec[1]=3*t*Math.pow(1-t,2);vec[2]=3*Math.pow(t,2)*(1-t);vec[3]=Math.pow(t,3);x=vec[0]*x1+vec[1]*via1.x+vec[2]*via2.x+vec[3]*x2;y=vec[0]*y1+vec[1]*via1.y+vec[2]*via2.y+vec[3]*y2;if(i>0){distance=this._getDistanceToLine(lastX,lastY,x,y,x3,y3);minDistance=distance<minDistance?distance:minDistance}lastX=x;lastY=y}return minDistance}}]);return CubicBezierEdgeBase}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=CubicBezierEdgeBase},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeDynamic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeDynamic,_BezierEdgeBase);function BezierEdgeDynamic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeDynamic);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeDynamic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeDynamic)).call(this,options,body,labelModule));_this._boundFunction=function(){_this.positionBezierNode()};_this.body.emitter.on(\"_repositionBezierNodes\",_this._boundFunction);return _this}(0,_createClass3[\"default\"])(BezierEdgeDynamic,[{key:\"setOptions\",value:function setOptions(options){var physicsChange=false;if(this.options.physics!==options.physics){physicsChange=true}this.options=options;this.id=this.options.id;this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];this.setupSupportNode();this.connect();if(physicsChange===true){this.via.setOptions({physics:this.options.physics});this.positionBezierNode()}}},{key:\"connect\",value:function connect(){this.from=this.body.nodes[this.options.from];this.to=this.body.nodes[this.options.to];if(this.from===undefined||this.to===undefined||this.options.physics===false){this.via.setOptions({physics:false})}else{if(this.from.id===this.to.id){this.via.setOptions({physics:false})}else{this.via.setOptions({physics:true})}}}},{key:\"cleanup\",value:function cleanup(){this.body.emitter.off(\"_repositionBezierNodes\",this._boundFunction);if(this.via!==undefined){delete this.body.nodes[this.via.id];this.via=undefined;return true}return false}},{key:\"setupSupportNode\",value:function setupSupportNode(){if(this.via===undefined){var nodeId=\"edgeId:\"+this.id;var node=this.body.functions.createNode({id:nodeId,shape:\"circle\",physics:true,hidden:true});this.body.nodes[nodeId]=node;this.via=node;this.via.parentEdgeId=this.id;this.positionBezierNode()}}},{key:\"positionBezierNode\",value:function positionBezierNode(){if(this.via!==undefined&&this.from!==undefined&&this.to!==undefined){this.via.x=.5*(this.from.x+this.to.x);this.via.y=.5*(this.from.y+this.to.y)}else if(this.via!==undefined){this.via.x=0;this.via.y=0}}},{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this.via}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.via;var t=percentage;var x=void 0,y=void 0;if(this.from===this.to){var _getCircleData=this._getCircleData(this.from),_getCircleData2=(0,_slicedToArray3[\"default\"])(_getCircleData,3),cx=_getCircleData2[0],cy=_getCircleData2[1],cr=_getCircleData2[2];var a=2*Math.PI*(1-t);x=cx+cr*Math.sin(a);y=cy+cr-cr*(1-Math.cos(a))}else{x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y}return{x:x,y:y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){return this._findBorderPositionBezier(nearNode,ctx,this.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,this.via)}}]);return BezierEdgeDynamic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeDynamic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BezierEdgeBase2=__webpack_require__(75);var _BezierEdgeBase3=_interopRequireDefault(_BezierEdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BezierEdgeStatic=function(_BezierEdgeBase){(0,_inherits3[\"default\"])(BezierEdgeStatic,_BezierEdgeBase);function BezierEdgeStatic(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,BezierEdgeStatic);return(0,_possibleConstructorReturn3[\"default\"])(this,(BezierEdgeStatic.__proto__||(0,_getPrototypeOf2[\"default\"])(BezierEdgeStatic)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(BezierEdgeStatic,[{key:\"_line\",value:function _line(ctx,values,viaNode){this._bezierCurve(ctx,values,viaNode)}},{key:\"getViaNode\",value:function getViaNode(){return this._getViaCoordinates()}},{key:\"_getViaCoordinates\",value:function _getViaCoordinates(){var xVia=undefined;var yVia=undefined;var factor=this.options.smooth.roundness;var type=this.options.smooth.type;var dx=Math.abs(this.from.x-this.to.x);var dy=Math.abs(this.from.y-this.to.y);if(type===\"discrete\"||type===\"diagonalCross\"){var stepX=void 0;var stepY=void 0;if(dx<=dy){stepX=stepY=factor*dy}else{stepX=stepY=factor*dx}if(this.from.x>this.to.x)stepX=-stepX;if(this.from.y>=this.to.y)stepY=-stepY;xVia=this.from.x+stepX;yVia=this.from.y+stepY;if(type===\"discrete\"){if(dx<=dy){xVia=dx<factor*dy?this.from.x:xVia}else{yVia=dy<factor*dx?this.from.y:yVia}}}else if(type===\"straightCross\"){var _stepX=(1-factor)*dx;var _stepY=(1-factor)*dy;if(dx<=dy){_stepX=0;if(this.from.y<this.to.y)_stepY=-_stepY}else{if(this.from.x<this.to.x)_stepX=-_stepX;_stepY=0}xVia=this.to.x+_stepX;yVia=this.to.y+_stepY}else if(type===\"horizontal\"){var _stepX2=(1-factor)*dx;if(this.from.x<this.to.x)_stepX2=-_stepX2;xVia=this.to.x+_stepX2;yVia=this.from.y}else if(type===\"vertical\"){var _stepY2=(1-factor)*dy;if(this.from.y<this.to.y)_stepY2=-_stepY2;xVia=this.from.x;yVia=this.to.y+_stepY2}else if(type===\"curvedCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var radius=Math.sqrt(dx*dx+dy*dy);var pi=Math.PI;var originalAngle=Math.atan2(dy,dx);var myAngle=(originalAngle+(factor*.5+.5)*pi)%(2*pi);xVia=this.from.x+(factor*.5+.5)*radius*Math.sin(myAngle);yVia=this.from.y+(factor*.5+.5)*radius*Math.cos(myAngle)}else if(type===\"curvedCCW\"){dx=this.to.x-this.from.x;dy=this.from.y-this.to.y;var _radius=Math.sqrt(dx*dx+dy*dy);var _pi=Math.PI;var _originalAngle=Math.atan2(dy,dx);var _myAngle=(_originalAngle+(-factor*.5+.5)*_pi)%(2*_pi);xVia=this.from.x+(factor*.5+.5)*_radius*Math.sin(_myAngle);yVia=this.from.y+(factor*.5+.5)*_radius*Math.cos(_myAngle)}else{var _stepX3=void 0;var _stepY3=void 0;if(dx<=dy){_stepX3=_stepY3=factor*dy}else{_stepX3=_stepY3=factor*dx}if(this.from.x>this.to.x)_stepX3=-_stepX3;if(this.from.y>=this.to.y)_stepY3=-_stepY3;xVia=this.from.x+_stepX3;yVia=this.from.y+_stepY3;if(dx<=dy){if(this.from.x<=this.to.x){xVia=this.to.x<xVia?this.to.x:xVia}else{xVia=this.to.x>xVia?this.to.x:xVia}}else{if(this.from.y>=this.to.y){yVia=this.to.y>yVia?this.to.y:yVia}else{yVia=this.to.y<yVia?this.to.y:yVia}}}return{x:xVia,y:yVia}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var options=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};return this._findBorderPositionBezier(nearNode,ctx,options.via)}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){var viaNode=arguments.length>6&&arguments[6]!==undefined?arguments[6]:this._getViaCoordinates();return this._getDistanceToBezierEdge(x1,y1,x2,y2,x3,y3,viaNode)}},{key:\"getPoint\",value:function getPoint(percentage){var viaNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this._getViaCoordinates();var t=percentage;var x=Math.pow(1-t,2)*this.fromPoint.x+2*t*(1-t)*viaNode.x+Math.pow(t,2)*this.toPoint.x;var y=Math.pow(1-t,2)*this.fromPoint.y+2*t*(1-t)*viaNode.y+Math.pow(t,2)*this.toPoint.y;return{x:x,y:y}}}]);return BezierEdgeStatic}(_BezierEdgeBase3[\"default\"]);exports[\"default\"]=BezierEdgeStatic},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _EdgeBase2=__webpack_require__(118);var _EdgeBase3=_interopRequireDefault(_EdgeBase2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var StraightEdge=function(_EdgeBase){(0,_inherits3[\"default\"])(StraightEdge,_EdgeBase);function StraightEdge(options,body,labelModule){(0,_classCallCheck3[\"default\"])(this,StraightEdge);return(0,_possibleConstructorReturn3[\"default\"])(this,(StraightEdge.__proto__||(0,_getPrototypeOf2[\"default\"])(StraightEdge)).call(this,options,body,labelModule))}(0,_createClass3[\"default\"])(StraightEdge,[{key:\"_line\",value:function _line(ctx,values){ctx.beginPath();ctx.moveTo(this.fromPoint.x,this.fromPoint.y);ctx.lineTo(this.toPoint.x,this.toPoint.y);this.enableShadow(ctx,values);ctx.stroke();this.disableShadow(ctx,values)}},{key:\"getViaNode\",value:function getViaNode(){return undefined}},{key:\"getPoint\",value:function getPoint(percentage){return{x:(1-percentage)*this.fromPoint.x+percentage*this.toPoint.x,y:(1-percentage)*this.fromPoint.y+percentage*this.toPoint.y}}},{key:\"_findBorderPosition\",value:function _findBorderPosition(nearNode,ctx){var node1=this.to;var node2=this.from;if(nearNode.id===this.from.id){node1=this.from;node2=this.to}var angle=Math.atan2(node1.y-node2.y,node1.x-node2.x);var dx=node1.x-node2.x;var dy=node1.y-node2.y;var edgeSegmentLength=Math.sqrt(dx*dx+dy*dy);var toBorderDist=nearNode.distanceToBorder(ctx,angle);var toBorderPoint=(edgeSegmentLength-toBorderDist)/edgeSegmentLength;var borderPos={};borderPos.x=(1-toBorderPoint)*node2.x+toBorderPoint*node1.x;borderPos.y=(1-toBorderPoint)*node2.y+toBorderPoint*node1.y;return borderPos}},{key:\"_getDistanceToEdge\",value:function _getDistanceToEdge(x1,y1,x2,y2,x3,y3){return this._getDistanceToLine(x1,y1,x2,y2,x3,y3)}}]);return StraightEdge}(_EdgeBase3[\"default\"]);exports[\"default\"]=StraightEdge},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var BarnesHutSolver=__webpack_require__(120)[\"default\"];var Repulsion=__webpack_require__(221)[\"default\"];var HierarchicalRepulsion=__webpack_require__(222)[\"default\"];var SpringSolver=__webpack_require__(223)[\"default\"];var HierarchicalSpringSolver=__webpack_require__(224)[\"default\"];var CentralGravitySolver=__webpack_require__(121)[\"default\"];var ForceAtlas2BasedRepulsionSolver=__webpack_require__(225)[\"default\"];var ForceAtlas2BasedCentralGravitySolver=__webpack_require__(226)[\"default\"];var util=__webpack_require__(2);var EndPoints=__webpack_require__(119)[\"default\"];var PhysicsEngine=function(){function PhysicsEngine(body){(0,_classCallCheck3[\"default\"])(this,PhysicsEngine);this.body=body;this.physicsBody={physicsNodeIndices:[],physicsEdgeIndices:[],forces:{},velocities:{}};this.physicsEnabled=true;this.simulationInterval=1e3/60;this.requiresTimeout=true;this.previousStates={};this.referenceState={};this.freezeCache={};this.renderTimer=undefined;this.adaptiveTimestep=false;this.adaptiveTimestepEnabled=false;this.adaptiveCounter=0;this.adaptiveInterval=3;this.stabilized=false;this.startedStabilization=false;this.stabilizationIterations=0;this.ready=false;this.options={};this.defaultOptions={enabled:true,barnesHut:{theta:.5,gravitationalConstant:-2e3,centralGravity:.3,springLength:95,springConstant:.04,damping:.09,avoidOverlap:0},forceAtlas2Based:{theta:.5,gravitationalConstant:-50,centralGravity:.01,springConstant:.08,springLength:100,damping:.4,avoidOverlap:0},repulsion:{centralGravity:.2,springLength:200,springConstant:.05,nodeDistance:100,damping:.09,avoidOverlap:0},hierarchicalRepulsion:{centralGravity:0,springLength:100,springConstant:.01,nodeDistance:120,damping:.09},maxVelocity:50,minVelocity:.75,solver:\"barnesHut\",stabilization:{enabled:true,iterations:1e3,updateInterval:50,onlyDynamicEdges:false,fit:true},timestep:.5,adaptiveTimestep:true};util.extend(this.options,this.defaultOptions);this.timestep=.5;this.layoutFailed=false;this.bindEventListeners()}(0,_createClass3[\"default\"])(PhysicsEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"initPhysics\",function(){_this.initPhysics()});this.body.emitter.on(\"_layoutFailed\",function(){_this.layoutFailed=true});this.body.emitter.on(\"resetPhysics\",function(){_this.stopSimulation();_this.ready=false});this.body.emitter.on(\"disablePhysics\",function(){_this.physicsEnabled=false;_this.stopSimulation()});this.body.emitter.on(\"restorePhysics\",function(){_this.setOptions(_this.options);if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"startSimulation\",function(){if(_this.ready===true){_this.startSimulation()}});this.body.emitter.on(\"stopSimulation\",function(){_this.stopSimulation()});this.body.emitter.on(\"destroy\",function(){_this.stopSimulation(false);_this.body.emitter.off()});this.body.emitter.on(\"_dataChanged\",function(){_this.updatePhysicsData()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){if(options===false){this.options.enabled=false;this.physicsEnabled=false;this.stopSimulation()}else if(options===true){this.options.enabled=true;this.physicsEnabled=true;this.startSimulation()}else{this.physicsEnabled=true;util.selectiveNotDeepExtend([\"stabilization\"],this.options,options);util.mergeOptions(this.options,options,\"stabilization\");if(options.enabled===undefined){this.options.enabled=true}if(this.options.enabled===false){this.physicsEnabled=false;this.stopSimulation()}this.timestep=this.options.timestep}}this.init()}},{key:\"init\",value:function init(){var options;if(this.options.solver===\"forceAtlas2Based\"){options=this.options.forceAtlas2Based;this.nodesSolver=new ForceAtlas2BasedRepulsionSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new ForceAtlas2BasedCentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"repulsion\"){options=this.options.repulsion;this.nodesSolver=new Repulsion(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else if(this.options.solver===\"hierarchicalRepulsion\"){options=this.options.hierarchicalRepulsion;this.nodesSolver=new HierarchicalRepulsion(this.body,this.physicsBody,options);this.edgesSolver=new HierarchicalSpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}else{options=this.options.barnesHut;this.nodesSolver=new BarnesHutSolver(this.body,this.physicsBody,options);this.edgesSolver=new SpringSolver(this.body,this.physicsBody,options);this.gravitySolver=new CentralGravitySolver(this.body,this.physicsBody,options)}this.modelOptions=options}},{key:\"initPhysics\",value:function initPhysics(){if(this.physicsEnabled===true&&this.options.enabled===true){if(this.options.stabilization.enabled===true){this.stabilize()}else{this.stabilized=false;this.ready=true;this.body.emitter.emit(\"fit\",{},this.layoutFailed);this.startSimulation()}}else{this.ready=true;this.body.emitter.emit(\"fit\")}}},{key:\"startSimulation\",value:function startSimulation(){if(this.physicsEnabled===true&&this.options.enabled===true){this.stabilized=false;this.adaptiveTimestep=false;this.body.emitter.emit(\"_resizeNodes\");if(this.viewFunction===undefined){this.viewFunction=this.simulationStep.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}else{this.body.emitter.emit(\"_redraw\")}}},{key:\"stopSimulation\",value:function stopSimulation(){var emit=arguments.length>0&&arguments[0]!==undefined?arguments[0]:true;this.stabilized=true;if(emit===true){this._emitStabilized()}if(this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.viewFunction=undefined;if(emit===true){this.body.emitter.emit(\"_stopRendering\")}}}},{key:\"simulationStep\",value:function simulationStep(){var startTime=Date.now();this.physicsTick();var physicsTime=Date.now()-startTime;if((physicsTime<.4*this.simulationInterval||this.runDoubleSpeed===true)&&this.stabilized===false){this.physicsTick();this.runDoubleSpeed=true}if(this.stabilized===true){this.stopSimulation()}}},{key:\"_emitStabilized\",value:function _emitStabilized(){var _this2=this;var amountOfIterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.stabilizationIterations;if(this.stabilizationIterations>1||this.startedStabilization===true){setTimeout(function(){_this2.body.emitter.emit(\"stabilized\",{iterations:amountOfIterations});_this2.startedStabilization=false;_this2.stabilizationIterations=0},0)}}},{key:\"physicsStep\",value:function physicsStep(){this.gravitySolver.solve();this.nodesSolver.solve();this.edgesSolver.solve();this.moveNodes()}},{key:\"adjustTimeStep\",value:function adjustTimeStep(){var factor=1.2;if(this._evaluateStepQuality()===true){this.timestep=factor*this.timestep}else{if(this.timestep/factor<this.options.timestep){this.timestep=this.options.timestep}else{this.adaptiveCounter=-1;this.timestep=Math.max(this.options.timestep,this.timestep/factor)}}}},{key:\"physicsTick\",value:function physicsTick(){this._startStabilizing();if(this.stabilized===true)return;if(this.adaptiveTimestep===true&&this.adaptiveTimestepEnabled===true){var doAdaptive=this.adaptiveCounter%this.adaptiveInterval===0;if(doAdaptive){this.timestep=2*this.timestep;this.physicsStep();this.revert();this.timestep=.5*this.timestep;this.physicsStep();this.physicsStep();this.adjustTimeStep()}else{this.physicsStep()}this.adaptiveCounter+=1}else{this.timestep=this.options.timestep;this.physicsStep()}\nif(this.stabilized===true)this.revert();this.stabilizationIterations++}},{key:\"updatePhysicsData\",value:function updatePhysicsData(){this.physicsBody.forces={};this.physicsBody.physicsNodeIndices=[];this.physicsBody.physicsEdgeIndices=[];var nodes=this.body.nodes;var edges=this.body.edges;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(nodes[nodeId].options.physics===true){this.physicsBody.physicsNodeIndices.push(nodes[nodeId].id)}}}for(var edgeId in edges){if(edges.hasOwnProperty(edgeId)){if(edges[edgeId].options.physics===true){this.physicsBody.physicsEdgeIndices.push(edges[edgeId].id)}}}for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var _nodeId=this.physicsBody.physicsNodeIndices[i];this.physicsBody.forces[_nodeId]={x:0,y:0};if(this.physicsBody.velocities[_nodeId]===undefined){this.physicsBody.velocities[_nodeId]={x:0,y:0}}}for(var _nodeId2 in this.physicsBody.velocities){if(nodes[_nodeId2]===undefined){delete this.physicsBody.velocities[_nodeId2]}}}},{key:\"revert\",value:function revert(){var nodeIds=(0,_keys2[\"default\"])(this.previousStates);var nodes=this.body.nodes;var velocities=this.physicsBody.velocities;this.referenceState={};for(var i=0;i<nodeIds.length;i++){var nodeId=nodeIds[i];if(nodes[nodeId]!==undefined){if(nodes[nodeId].options.physics===true){this.referenceState[nodeId]={positions:{x:nodes[nodeId].x,y:nodes[nodeId].y}};velocities[nodeId].x=this.previousStates[nodeId].vx;velocities[nodeId].y=this.previousStates[nodeId].vy;nodes[nodeId].x=this.previousStates[nodeId].x;nodes[nodeId].y=this.previousStates[nodeId].y}}else{delete this.previousStates[nodeId]}}}},{key:\"_evaluateStepQuality\",value:function _evaluateStepQuality(){var dx=void 0,dy=void 0,dpos=void 0;var nodes=this.body.nodes;var reference=this.referenceState;var posThreshold=.3;for(var nodeId in this.referenceState){if(this.referenceState.hasOwnProperty(nodeId)&&nodes[nodeId]!==undefined){dx=nodes[nodeId].x-reference[nodeId].positions.x;dy=nodes[nodeId].y-reference[nodeId].positions.y;dpos=Math.sqrt(Math.pow(dx,2)+Math.pow(dy,2));if(dpos>posThreshold){return false}}}return true}},{key:\"moveNodes\",value:function moveNodes(){var nodeIndices=this.physicsBody.physicsNodeIndices;var maxNodeVelocity=0;var averageNodeVelocity=0;var velocityAdaptiveThreshold=5;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];var nodeVelocity=this._performStep(nodeId);maxNodeVelocity=Math.max(maxNodeVelocity,nodeVelocity);averageNodeVelocity+=nodeVelocity}this.adaptiveTimestepEnabled=averageNodeVelocity/nodeIndices.length<velocityAdaptiveThreshold;this.stabilized=maxNodeVelocity<this.options.minVelocity}},{key:\"calculateComponentVelocity\",value:function calculateComponentVelocity(v,f,m){var df=this.modelOptions.damping*v;var a=(f-df)/m;v+=a*this.timestep;var maxV=this.options.maxVelocity||1e9;if(Math.abs(v)>maxV){v=v>0?maxV:-maxV}return v}},{key:\"_performStep\",value:function _performStep(nodeId){var node=this.body.nodes[nodeId];var force=this.physicsBody.forces[nodeId];var velocity=this.physicsBody.velocities[nodeId];this.previousStates[nodeId]={x:node.x,y:node.y,vx:velocity.x,vy:velocity.y};if(node.options.fixed.x===false){velocity.x=this.calculateComponentVelocity(velocity.x,force.x,node.options.mass);node.x+=velocity.x*this.timestep}else{force.x=0;velocity.x=0}if(node.options.fixed.y===false){velocity.y=this.calculateComponentVelocity(velocity.y,force.y,node.options.mass);node.y+=velocity.y*this.timestep}else{force.y=0;velocity.y=0}var totalVelocity=Math.sqrt(Math.pow(velocity.x,2)+Math.pow(velocity.y,2));return totalVelocity}},{key:\"_freezeNodes\",value:function _freezeNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(nodes[id].x&&nodes[id].y){var fixed=nodes[id].options.fixed;this.freezeCache[id]={x:fixed.x,y:fixed.y};fixed.x=true;fixed.y=true}}}}},{key:\"_restoreFrozenNodes\",value:function _restoreFrozenNodes(){var nodes=this.body.nodes;for(var id in nodes){if(nodes.hasOwnProperty(id)){if(this.freezeCache[id]!==undefined){nodes[id].options.fixed.x=this.freezeCache[id].x;nodes[id].options.fixed.y=this.freezeCache[id].y}}}this.freezeCache={}}},{key:\"stabilize\",value:function stabilize(){var _this3=this;var iterations=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.stabilization.iterations;if(typeof iterations!==\"number\"){iterations=this.options.stabilization.iterations;console.log(\"The stabilize method needs a numeric amount of iterations. Switching to default: \",iterations)}if(this.physicsBody.physicsNodeIndices.length===0){this.ready=true;return}this.adaptiveTimestep=true&&this.options.adaptiveTimestep;this.body.emitter.emit(\"_resizeNodes\");this.stopSimulation();this.stabilized=false;this.body.emitter.emit(\"_blockRedraw\");this.targetIterations=iterations;if(this.options.stabilization.onlyDynamicEdges===true){this._freezeNodes()}this.stabilizationIterations=0;setTimeout(function(){return _this3._stabilizationBatch()},0)}},{key:\"_startStabilizing\",value:function _startStabilizing(){if(this.startedStabilization===true)return false;this.body.emitter.emit(\"startStabilizing\");this.startedStabilization=true;return true}},{key:\"_stabilizationBatch\",value:function _stabilizationBatch(){var _this4=this;var running=function running(){return _this4.stabilized===false&&_this4.stabilizationIterations<_this4.targetIterations};var sendProgress=function sendProgress(){_this4.body.emitter.emit(\"stabilizationProgress\",{iterations:_this4.stabilizationIterations,total:_this4.targetIterations})};if(this._startStabilizing()){sendProgress()}var count=0;while(running()&&count<this.options.stabilization.updateInterval){this.physicsTick();count++}sendProgress();if(running()){setTimeout(this._stabilizationBatch.bind(this),0)}else{this._finalizeStabilization()}}},{key:\"_finalizeStabilization\",value:function _finalizeStabilization(){this.body.emitter.emit(\"_allowRedraw\");if(this.options.stabilization.fit===true){this.body.emitter.emit(\"fit\")}if(this.options.stabilization.onlyDynamicEdges===true){this._restoreFrozenNodes()}this.body.emitter.emit(\"stabilizationIterationsDone\");this.body.emitter.emit(\"_requestRedraw\");if(this.stabilized===true){this._emitStabilized()}else{this.startSimulation()}this.ready=true}},{key:\"_drawForces\",value:function _drawForces(ctx){for(var i=0;i<this.physicsBody.physicsNodeIndices.length;i++){var index=this.physicsBody.physicsNodeIndices[i];var node=this.body.nodes[index];var force=this.physicsBody.forces[index];var factor=20;var colorFactor=.03;var forceSize=Math.sqrt(Math.pow(force.x,2)+Math.pow(force.x,2));var size=Math.min(Math.max(5,forceSize),15);var arrowSize=3*size;var color=util.HSVToHex((180-Math.min(1,Math.max(0,colorFactor*forceSize))*180)/360,1,1);var point={x:node.x+factor*force.x,y:node.y+factor*force.y};ctx.lineWidth=size;ctx.strokeStyle=color;ctx.beginPath();ctx.moveTo(node.x,node.y);ctx.lineTo(point.x,point.y);ctx.stroke();var angle=Math.atan2(force.y,force.x);ctx.fillStyle=color;EndPoints.draw(ctx,{type:\"arrow\",point:point,angle:angle,length:arrowSize});ctx.fill()}}}]);return PhysicsEngine}();exports[\"default\"]=PhysicsEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var RepulsionSolver=function(){function RepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,RepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(RepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;var a=-2/3/nodeDistance;var b=4/3;for(var i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(var j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);if(distance===0){distance=.1*Math.random();dx=distance}if(distance<2*nodeDistance){if(distance<.5*nodeDistance){repulsingForce=1}else{repulsingForce=a*distance+b}repulsingForce=repulsingForce/distance;fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return RepulsionSolver}();exports[\"default\"]=RepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalRepulsionSolver=function(){function HierarchicalRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalRepulsionSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalRepulsionSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var dx,dy,distance,fx,fy,repulsingForce,node1,node2,i,j;var nodes=this.body.nodes;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;var nodeDistance=this.options.nodeDistance;for(i=0;i<nodeIndices.length-1;i++){node1=nodes[nodeIndices[i]];for(j=i+1;j<nodeIndices.length;j++){node2=nodes[nodeIndices[j]];if(node1.level===node2.level){dx=node2.x-node1.x;dy=node2.y-node1.y;distance=Math.sqrt(dx*dx+dy*dy);var steepness=.05;if(distance<nodeDistance){repulsingForce=-Math.pow(steepness*distance,2)+Math.pow(steepness*nodeDistance,2)}else{repulsingForce=0}if(distance===0){distance=.01}else{repulsingForce=repulsingForce/distance}fx=dx*repulsingForce;fy=dy*repulsingForce;forces[node1.id].x-=fx;forces[node1.id].y-=fy;forces[node2.id].x+=fx;forces[node2.id].y+=fy}}}}}]);return HierarchicalRepulsionSolver}();exports[\"default\"]=HierarchicalRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var SpringSolver=function(){function SpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,SpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(SpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength=void 0,edge=void 0;var edgeIndices=this.physicsBody.physicsEdgeIndices;var edges=this.body.edges;var node1=void 0,node2=void 0,node3=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true&&edge.toId!==edge.fromId){if(this.body.nodes[edge.toId]!==undefined&&this.body.nodes[edge.fromId]!==undefined){if(edge.edgeType.via!==undefined){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;node1=edge.to;node2=edge.edgeType.via;node3=edge.from;this._calculateSpringForce(node1,node2,.5*edgeLength);this._calculateSpringForce(node2,node3,.5*edgeLength)}else{edgeLength=edge.options.length===undefined?this.options.springLength*1.5:edge.options.length;this._calculateSpringForce(edge.from,edge.to,edgeLength)}}}}}},{key:\"_calculateSpringForce\",value:function _calculateSpringForce(node1,node2,edgeLength){var dx=node1.x-node2.x;var dy=node1.y-node2.y;var distance=Math.max(Math.sqrt(dx*dx+dy*dy),.01);var springForce=this.options.springConstant*(edgeLength-distance)/distance;var fx=dx*springForce;var fy=dy*springForce;if(this.physicsBody.forces[node1.id]!==undefined){this.physicsBody.forces[node1.id].x+=fx;this.physicsBody.forces[node1.id].y+=fy}if(this.physicsBody.forces[node2.id]!==undefined){this.physicsBody.forces[node2.id].x-=fx;this.physicsBody.forces[node2.id].y-=fy}}}]);return SpringSolver}();exports[\"default\"]=SpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var HierarchicalSpringSolver=function(){function HierarchicalSpringSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,HierarchicalSpringSolver);this.body=body;this.physicsBody=physicsBody;this.setOptions(options)}(0,_createClass3[\"default\"])(HierarchicalSpringSolver,[{key:\"setOptions\",value:function setOptions(options){this.options=options}},{key:\"solve\",value:function solve(){var edgeLength,edge;var dx,dy,fx,fy,springForce,distance;var edges=this.body.edges;var factor=.5;var edgeIndices=this.physicsBody.physicsEdgeIndices;var nodeIndices=this.physicsBody.physicsNodeIndices;var forces=this.physicsBody.forces;for(var i=0;i<nodeIndices.length;i++){var nodeId=nodeIndices[i];forces[nodeId].springFx=0;forces[nodeId].springFy=0}for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.connected===true){edgeLength=edge.options.length===undefined?this.options.springLength:edge.options.length;dx=edge.from.x-edge.to.x;dy=edge.from.y-edge.to.y;distance=Math.sqrt(dx*dx+dy*dy);distance=distance===0?.01:distance;springForce=this.options.springConstant*(edgeLength-distance)/distance;fx=dx*springForce;fy=dy*springForce;if(edge.to.level!=edge.from.level){if(forces[edge.toId]!==undefined){forces[edge.toId].springFx-=fx;forces[edge.toId].springFy-=fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].springFx+=fx;forces[edge.fromId].springFy+=fy}}else{if(forces[edge.toId]!==undefined){forces[edge.toId].x-=factor*fx;forces[edge.toId].y-=factor*fy}if(forces[edge.fromId]!==undefined){forces[edge.fromId].x+=factor*fx;forces[edge.fromId].y+=factor*fy}}}}springForce=1;var springFx,springFy;for(var _i2=0;_i2<nodeIndices.length;_i2++){var _nodeId=nodeIndices[_i2];springFx=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFx));springFy=Math.min(springForce,Math.max(-springForce,forces[_nodeId].springFy));forces[_nodeId].x+=springFx;forces[_nodeId].y+=springFy}var totalFx=0;var totalFy=0;for(var _i3=0;_i3<nodeIndices.length;_i3++){var _nodeId2=nodeIndices[_i3];totalFx+=forces[_nodeId2].x;totalFy+=forces[_nodeId2].y}var correctionFx=totalFx/nodeIndices.length;var correctionFy=totalFy/nodeIndices.length;for(var _i4=0;_i4<nodeIndices.length;_i4++){var _nodeId3=nodeIndices[_i4];forces[_nodeId3].x-=correctionFx;forces[_nodeId3].y-=correctionFy}}}]);return HierarchicalSpringSolver}();exports[\"default\"]=HierarchicalSpringSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _BarnesHutSolver2=__webpack_require__(120);var _BarnesHutSolver3=_interopRequireDefault(_BarnesHutSolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedRepulsionSolver=function(_BarnesHutSolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedRepulsionSolver,_BarnesHutSolver);function ForceAtlas2BasedRepulsionSolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedRepulsionSolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedRepulsionSolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedRepulsionSolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedRepulsionSolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,node,parentBranch){if(distance===0){distance=.1*Math.random();dx=distance}if(this.overlapAvoidanceFactor<1&&node.shape.radius){distance=Math.max(.1+this.overlapAvoidanceFactor*node.shape.radius,distance-node.shape.radius)}var degree=node.edges.length+1;var gravityForce=this.options.gravitationalConstant*parentBranch.mass*node.options.mass*degree/Math.pow(distance,2);var fx=dx*gravityForce;var fy=dy*gravityForce;this.physicsBody.forces[node.id].x+=fx;this.physicsBody.forces[node.id].y+=fy}}]);return ForceAtlas2BasedRepulsionSolver}(_BarnesHutSolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedRepulsionSolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _CentralGravitySolver2=__webpack_require__(121);var _CentralGravitySolver3=_interopRequireDefault(_CentralGravitySolver2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var ForceAtlas2BasedCentralGravitySolver=function(_CentralGravitySolver){(0,_inherits3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,_CentralGravitySolver);function ForceAtlas2BasedCentralGravitySolver(body,physicsBody,options){(0,_classCallCheck3[\"default\"])(this,ForceAtlas2BasedCentralGravitySolver);return(0,_possibleConstructorReturn3[\"default\"])(this,(ForceAtlas2BasedCentralGravitySolver.__proto__||(0,_getPrototypeOf2[\"default\"])(ForceAtlas2BasedCentralGravitySolver)).call(this,body,physicsBody,options))}(0,_createClass3[\"default\"])(ForceAtlas2BasedCentralGravitySolver,[{key:\"_calculateForces\",value:function _calculateForces(distance,dx,dy,forces,node){if(distance>0){var degree=node.edges.length+1;var gravityForce=this.options.centralGravity*degree*node.options.mass;forces[node.id].x=dx*gravityForce;forces[node.id].y=dy*gravityForce}}}]);return ForceAtlas2BasedCentralGravitySolver}(_CentralGravitySolver3[\"default\"]);exports[\"default\"]=ForceAtlas2BasedCentralGravitySolver},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var Cluster=__webpack_require__(228)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var Node=__webpack_require__(47)[\"default\"];var ClusterEngine=function(){function ClusterEngine(body){var _this=this;(0,_classCallCheck3[\"default\"])(this,ClusterEngine);this.body=body;this.clusteredNodes={};this.clusteredEdges={};this.options={};this.defaultOptions={};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_resetData\",function(){_this.clusteredNodes={};_this.clusteredEdges={}})}(0,_createClass3[\"default\"])(ClusterEngine,[{key:\"clusterByHubsize\",value:function clusterByHubsize(hubsize,options){if(hubsize===undefined){hubsize=this._getHubSize()}else if((typeof hubsize===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(hubsize))===\"object\"){options=this._checkOptions(hubsize);hubsize=this._getHubSize()}var nodesToCluster=[];for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];if(node.edges.length>=hubsize){nodesToCluster.push(node.id)}}for(var _i=0;_i<nodesToCluster.length;_i++){this.clusterByConnection(nodesToCluster[_i],options,true)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"cluster\",value:function cluster(){var _this2=this;var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(options.joinCondition===undefined){throw new Error(\"Cannot call clusterByNodeData without a joinCondition function in the options.\")}options=this._checkOptions(options);var childNodesObj={};var childEdgesObj={};util.forEach(this.body.nodes,function(node,nodeId){var clonedOptions=NetworkUtil.cloneOptions(node);if(options.joinCondition(clonedOptions)===true){childNodesObj[nodeId]=node;util.forEach(node.edges,function(edge){if(_this2.clusteredEdges[edge.id]===undefined){childEdgesObj[edge.id]=edge}})}});this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"clusterByEdgeCount\",value:function clusterByEdgeCount(edgeCount,options){var _this3=this;var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;options=this._checkOptions(options);var clusters=[];var usedNodes={};var edge=void 0,edges=void 0,relevantEdgeCount=void 0;var _loop=function _loop(i){var childNodesObj={};var childEdgesObj={};var nodeId=_this3.body.nodeIndices[i];var node=_this3.body.nodes[nodeId];if(usedNodes[nodeId]===undefined){relevantEdgeCount=0;edges=[];for(var j=0;j<node.edges.length;j++){edge=node.edges[j];if(_this3.clusteredEdges[edge.id]===undefined){if(edge.toId!==edge.fromId){relevantEdgeCount++}edges.push(edge)}}if(relevantEdgeCount===edgeCount){checkJoinCondition=function checkJoinCondition(node){if(options.joinCondition===undefined||options.joinCondition===null){return true}var clonedOptions=NetworkUtil.cloneOptions(node);return options.joinCondition(clonedOptions)};var gatheringSuccessful=true;for(var _j=0;_j<edges.length;_j++){edge=edges[_j];var childNodeId=_this3._getConnectedId(edge,nodeId);if(checkJoinCondition(node)){childEdgesObj[edge.id]=edge;childNodesObj[nodeId]=node;childNodesObj[childNodeId]=_this3.body.nodes[childNodeId];usedNodes[nodeId]=true}else{gatheringSuccessful=false;break}}if((0,_keys2[\"default\"])(childNodesObj).length>0&&(0,_keys2[\"default\"])(childEdgesObj).length>0&&gatheringSuccessful===true){findClusterData=function findClusterData(){for(var n=0;n<clusters.length;++n){for(var m in childNodesObj){if(clusters[n].nodes[m]!==undefined){return clusters[n]}}}return undefined};foundCluster=findClusterData();if(foundCluster!==undefined){for(var m in childNodesObj){if(foundCluster.nodes[m]===undefined){foundCluster.nodes[m]=childNodesObj[m]}}for(var _m in childEdgesObj){if(foundCluster.edges[_m]===undefined){foundCluster.edges[_m]=childEdgesObj[_m]}}}else{clusters.push({nodes:childNodesObj,edges:childEdgesObj})}}}}};for(var i=0;i<this.body.nodeIndices.length;i++){var checkJoinCondition;var findClusterData;var foundCluster;_loop(i)}for(var i=0;i<clusters.length;i++){this._cluster(clusters[i].nodes,clusters[i].edges,options,false)}if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"clusterOutliers\",value:function clusterOutliers(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(1,options,refreshData)}},{key:\"clusterBridges\",value:function clusterBridges(options){var refreshData=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;this.clusterByEdgeCount(2,options,refreshData)}},{key:\"clusterByConnection\",value:function clusterByConnection(nodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(nodeId===undefined){throw new Error(\"No nodeId supplied to clusterByConnection!\")}if(this.body.nodes[nodeId]===undefined){throw new Error(\"The nodeId given to clusterByConnection does not exist!\")}var node=this.body.nodes[nodeId];options=this._checkOptions(options,node);if(options.clusterNodeProperties.x===undefined){options.clusterNodeProperties.x=node.x}if(options.clusterNodeProperties.y===undefined){options.clusterNodeProperties.y=node.y}if(options.clusterNodeProperties.fixed===undefined){options.clusterNodeProperties.fixed={};options.clusterNodeProperties.fixed.x=node.options.fixed.x;options.clusterNodeProperties.fixed.y=node.options.fixed.y}var childNodesObj={};var childEdgesObj={};var parentNodeId=node.id;var parentClonedOptions=NetworkUtil.cloneOptions(node);childNodesObj[parentNodeId]=node;for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];if(this.clusteredEdges[edge.id]===undefined){var childNodeId=this._getConnectedId(edge,parentNodeId);if(this.clusteredNodes[childNodeId]===undefined){if(childNodeId!==parentNodeId){if(options.joinCondition===undefined){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}else{var childClonedOptions=NetworkUtil.cloneOptions(this.body.nodes[childNodeId]);if(options.joinCondition(parentClonedOptions,childClonedOptions)===true){childEdgesObj[edge.id]=edge;childNodesObj[childNodeId]=this.body.nodes[childNodeId]}}}else{childEdgesObj[edge.id]=edge}}}}var childNodeIDs=(0,_keys2[\"default\"])(childNodesObj).map(function(childNode){return childNodesObj[childNode].id});for(childNode in childNodesObj){if(!childNodesObj.hasOwnProperty(childNode))continue;var childNode=childNodesObj[childNode];for(var y=0;y<childNode.edges.length;y++){var childEdge=childNode.edges[y];if(childNodeIDs.indexOf(this._getConnectedId(childEdge,childNode.id))>-1){childEdgesObj[childEdge.id]=childEdge}}}this._cluster(childNodesObj,childEdgesObj,options,refreshData)}},{key:\"_createClusterEdges\",value:function _createClusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,clusterEdgeProperties){var edge=void 0,childNodeId=void 0,childNode=void 0,toId=void 0,fromId=void 0,otherNodeId=void 0;var childKeys=(0,_keys2[\"default\"])(childNodesObj);var createEdges=[];for(var i=0;i<childKeys.length;i++){childNodeId=childKeys[i];childNode=childNodesObj[childNodeId];for(var j=0;j<childNode.edges.length;j++){edge=childNode.edges[j];if(this.clusteredEdges[edge.id]===undefined){if(edge.toId==edge.fromId){childEdgesObj[edge.id]=edge}else{if(edge.toId==childNodeId){toId=clusterNodeProperties.id;fromId=edge.fromId;otherNodeId=fromId}else{toId=edge.toId;fromId=clusterNodeProperties.id;otherNodeId=toId}}if(childNodesObj[otherNodeId]===undefined){createEdges.push({edge:edge,fromId:fromId,toId:toId})}}}}var newEdges=[];var getNewEdge=function getNewEdge(createdEdge){for(var _j2=0;_j2<newEdges.length;_j2++){var newEdge=newEdges[_j2];var matchToDirection=createdEdge.fromId===newEdge.fromId&&createdEdge.toId===newEdge.toId;var matchFromDirection=createdEdge.fromId===newEdge.toId&&createdEdge.toId===newEdge.fromId;if(matchToDirection||matchFromDirection){return newEdge}}return null};for(var _j3=0;_j3<createEdges.length;_j3++){var createdEdge=createEdges[_j3];var _edge=createdEdge.edge;var newEdge=getNewEdge(createdEdge);if(newEdge===null){newEdge=this._createClusteredEdge(createdEdge.fromId,createdEdge.toId,_edge,clusterEdgeProperties);newEdges.push(newEdge)}else{newEdge.clusteringEdgeReplacingIds.push(_edge.id)}this.body.edges[_edge.id].edgeReplacedById=newEdge.id;this._backupEdgeOptions(_edge);_edge.setOptions({physics:false})}}},{key:\"_checkOptions\",value:function _checkOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};if(options.clusterEdgeProperties===undefined){options.clusterEdgeProperties={}}if(options.clusterNodeProperties===undefined){options.clusterNodeProperties={}}return options}},{key:\"_cluster\",value:function _cluster(childNodesObj,childEdgesObj,options){var refreshData=arguments.length>3&&arguments[3]!==undefined?arguments[3]:true;var tmpNodesToRemove=[];for(var _nodeId in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId)){if(this.clusteredNodes[_nodeId]!==undefined){tmpNodesToRemove.push(_nodeId)}}}for(var n=0;n<tmpNodesToRemove.length;++n){delete childNodesObj[tmpNodesToRemove[n]]}if((0,_keys2[\"default\"])(childNodesObj).length==0){return}if((0,_keys2[\"default\"])(childNodesObj).length==1&&options.clusterNodeProperties.allowSingleNodeCluster!=true){return}var clusterNodeProperties=util.deepExtend({},options.clusterNodeProperties);if(options.processProperties!==undefined){var childNodesOptions=[];for(var _nodeId2 in childNodesObj){if(childNodesObj.hasOwnProperty(_nodeId2)){var clonedOptions=NetworkUtil.cloneOptions(childNodesObj[_nodeId2]);childNodesOptions.push(clonedOptions)}}var childEdgesOptions=[];for(var edgeId in childEdgesObj){if(childEdgesObj.hasOwnProperty(edgeId)){if(edgeId.substr(0,12)!==\"clusterEdge:\"){var _clonedOptions=NetworkUtil.cloneOptions(childEdgesObj[edgeId],\"edge\");childEdgesOptions.push(_clonedOptions)}}}clusterNodeProperties=options.processProperties(clusterNodeProperties,childNodesOptions,childEdgesOptions);if(!clusterNodeProperties){throw new Error(\"The processProperties function does not return properties!\")}}if(clusterNodeProperties.id===undefined){clusterNodeProperties.id=\"cluster:\"+util.randomUUID()}var clusterId=clusterNodeProperties.id;if(clusterNodeProperties.label===undefined){clusterNodeProperties.label=\"cluster\"}var pos=undefined;if(clusterNodeProperties.x===undefined){pos=this._getClusterPosition(childNodesObj);clusterNodeProperties.x=pos.x}if(clusterNodeProperties.y===undefined){if(pos===undefined){pos=this._getClusterPosition(childNodesObj)}clusterNodeProperties.y=pos.y}clusterNodeProperties.id=clusterId;var clusterNode=this.body.functions.createNode(clusterNodeProperties,Cluster);clusterNode.containedNodes=childNodesObj;clusterNode.containedEdges=childEdgesObj;clusterNode.clusterEdgeProperties=options.clusterEdgeProperties;this.body.nodes[clusterNodeProperties.id]=clusterNode;this._clusterEdges(childNodesObj,childEdgesObj,clusterNodeProperties,options.clusterEdgeProperties);clusterNodeProperties.id=undefined;if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"_backupEdgeOptions\",value:function _backupEdgeOptions(edge){if(this.clusteredEdges[edge.id]===undefined){this.clusteredEdges[edge.id]={physics:edge.options.physics}}}},{key:\"_restoreEdge\",value:function _restoreEdge(edge){var originalOptions=this.clusteredEdges[edge.id];if(originalOptions!==undefined){edge.setOptions({physics:originalOptions.physics});delete this.clusteredEdges[edge.id]}}},{key:\"isCluster\",value:function isCluster(nodeId){if(this.body.nodes[nodeId]!==undefined){return this.body.nodes[nodeId].isCluster===true}else{console.log(\"Node does not exist.\");return false}}},{key:\"_getClusterPosition\",value:function _getClusterPosition(childNodesObj){var childKeys=(0,_keys2[\"default\"])(childNodesObj);var minX=childNodesObj[childKeys[0]].x;var maxX=childNodesObj[childKeys[0]].x;var minY=childNodesObj[childKeys[0]].y;var maxY=childNodesObj[childKeys[0]].y;var node=void 0;for(var i=1;i<childKeys.length;i++){node=childNodesObj[childKeys[i]];minX=node.x<minX?node.x:minX;maxX=node.x>maxX?node.x:maxX\n;minY=node.y<minY?node.y:minY;maxY=node.y>maxY?node.y:maxY}return{x:.5*(minX+maxX),y:.5*(minY+maxY)}}},{key:\"openCluster\",value:function openCluster(clusterNodeId,options){var refreshData=arguments.length>2&&arguments[2]!==undefined?arguments[2]:true;if(clusterNodeId===undefined){throw new Error(\"No clusterNodeId supplied to openCluster.\")}var clusterNode=this.body.nodes[clusterNodeId];if(clusterNode===undefined){throw new Error(\"The clusterNodeId supplied to openCluster does not exist.\")}if(clusterNode.isCluster!==true||clusterNode.containedNodes===undefined||clusterNode.containedEdges===undefined){throw new Error(\"The node:\"+clusterNodeId+\" is not a valid cluster.\")}var stack=this.findNode(clusterNodeId);var parentIndex=stack.indexOf(clusterNodeId)-1;if(parentIndex>=0){var parentClusterNodeId=stack[parentIndex];var parentClusterNode=this.body.nodes[parentClusterNodeId];parentClusterNode._openChildCluster(clusterNodeId);delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}return}var containedNodes=clusterNode.containedNodes;var containedEdges=clusterNode.containedEdges;if(options!==undefined&&options.releaseFunction!==undefined&&typeof options.releaseFunction===\"function\"){var positions={};var clusterPosition={x:clusterNode.x,y:clusterNode.y};for(var _nodeId3 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId3)){var containedNode=this.body.nodes[_nodeId3];positions[_nodeId3]={x:containedNode.x,y:containedNode.y}}}var newPositions=options.releaseFunction(clusterPosition,positions);for(var _nodeId4 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId4)){var _containedNode=this.body.nodes[_nodeId4];if(newPositions[_nodeId4]!==undefined){_containedNode.x=newPositions[_nodeId4].x===undefined?clusterNode.x:newPositions[_nodeId4].x;_containedNode.y=newPositions[_nodeId4].y===undefined?clusterNode.y:newPositions[_nodeId4].y}}}}else{util.forEach(containedNodes,function(containedNode){if(containedNode.options.fixed.x===false){containedNode.x=clusterNode.x}if(containedNode.options.fixed.y===false){containedNode.y=clusterNode.y}})}for(var _nodeId5 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId5)){var _containedNode2=this.body.nodes[_nodeId5];_containedNode2.vx=clusterNode.vx;_containedNode2.vy=clusterNode.vy;_containedNode2.setOptions({physics:true});delete this.clusteredNodes[_nodeId5]}}var edgesToBeDeleted=[];for(var i=0;i<clusterNode.edges.length;i++){edgesToBeDeleted.push(clusterNode.edges[i])}for(var _i2=0;_i2<edgesToBeDeleted.length;_i2++){var edge=edgesToBeDeleted[_i2];var otherNodeId=this._getConnectedId(edge,clusterNodeId);var otherNode=this.clusteredNodes[otherNodeId];for(var j=0;j<edge.clusteringEdgeReplacingIds.length;j++){var transferId=edge.clusteringEdgeReplacingIds[j];var transferEdge=this.body.edges[transferId];if(transferEdge===undefined)continue;if(otherNode!==undefined){var otherCluster=this.body.nodes[otherNode.clusterId];otherCluster.containedEdges[transferEdge.id]=transferEdge;delete containedEdges[transferEdge.id];var fromId=transferEdge.fromId;var toId=transferEdge.toId;if(transferEdge.toId==otherNodeId){toId=otherNode.clusterId}else{fromId=otherNode.clusterId}this._createClusteredEdge(fromId,toId,transferEdge,otherCluster.clusterEdgeProperties,{hidden:false,physics:true})}else{this._restoreEdge(transferEdge)}}edge.remove()}for(var edgeId in containedEdges){if(containedEdges.hasOwnProperty(edgeId)){this._restoreEdge(containedEdges[edgeId])}}delete this.body.nodes[clusterNodeId];if(refreshData===true){this.body.emitter.emit(\"_dataChanged\")}}},{key:\"getNodesInCluster\",value:function getNodesInCluster(clusterId){var nodesArray=[];if(this.isCluster(clusterId)===true){var containedNodes=this.body.nodes[clusterId].containedNodes;for(var _nodeId6 in containedNodes){if(containedNodes.hasOwnProperty(_nodeId6)){nodesArray.push(this.body.nodes[_nodeId6].id)}}}return nodesArray}},{key:\"findNode\",value:function findNode(nodeId){var stack=[];var max=100;var counter=0;var node=void 0;while(this.clusteredNodes[nodeId]!==undefined&&counter<max){node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);nodeId=this.clusteredNodes[nodeId].clusterId;counter++}node=this.body.nodes[nodeId];if(node===undefined)return[];stack.push(node.id);stack.reverse();return stack}},{key:\"updateClusteredNode\",value:function updateClusteredNode(clusteredNodeId,newOptions){if(clusteredNodeId===undefined){throw new Error(\"No clusteredNodeId supplied to updateClusteredNode.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateClusteredNode.\")}if(this.body.nodes[clusteredNodeId]===undefined){throw new Error(\"The clusteredNodeId supplied to updateClusteredNode does not exist.\")}this.body.nodes[clusteredNodeId].setOptions(newOptions);this.body.emitter.emit(\"_dataChanged\")}},{key:\"updateEdge\",value:function updateEdge(startEdgeId,newOptions){if(startEdgeId===undefined){throw new Error(\"No startEdgeId supplied to updateEdge.\")}if(newOptions===undefined){throw new Error(\"No newOptions supplied to updateEdge.\")}if(this.body.edges[startEdgeId]===undefined){throw new Error(\"The startEdgeId supplied to updateEdge does not exist.\")}var allEdgeIds=this.getClusteredEdges(startEdgeId);for(var i=0;i<allEdgeIds.length;i++){var edge=this.body.edges[allEdgeIds[i]];edge.setOptions(newOptions)}this.body.emitter.emit(\"_dataChanged\")}},{key:\"getClusteredEdges\",value:function getClusteredEdges(edgeId){var stack=[];var max=100;var counter=0;while(edgeId!==undefined&&this.body.edges[edgeId]!==undefined&&counter<max){stack.push(this.body.edges[edgeId].id);edgeId=this.body.edges[edgeId].edgeReplacedById;counter++}stack.reverse();return stack}},{key:\"getBaseEdge\",value:function getBaseEdge(clusteredEdgeId){return this.getBaseEdges(clusteredEdgeId)[0]}},{key:\"getBaseEdges\",value:function getBaseEdges(clusteredEdgeId){var IdsToHandle=[clusteredEdgeId];var doneIds=[];var foundIds=[];var max=100;var counter=0;while(IdsToHandle.length>0&&counter<max){var nextId=IdsToHandle.pop();if(nextId===undefined)continue;var nextEdge=this.body.edges[nextId];if(nextEdge===undefined)continue;counter++;var replacingIds=nextEdge.clusteringEdgeReplacingIds;if(replacingIds===undefined){foundIds.push(nextId)}else{for(var i=0;i<replacingIds.length;++i){var replacingId=replacingIds[i];if(IdsToHandle.indexOf(replacingIds)!==-1||doneIds.indexOf(replacingIds)!==-1){continue}IdsToHandle.push(replacingId)}}doneIds.push(nextId)}return foundIds}},{key:\"_getConnectedId\",value:function _getConnectedId(edge,nodeId){if(edge.toId!=nodeId){return edge.toId}else if(edge.fromId!=nodeId){return edge.fromId}else{return edge.fromId}}},{key:\"_getHubSize\",value:function _getHubSize(){var average=0;var averageSquared=0;var hubCounter=0;var largestHub=0;for(var i=0;i<this.body.nodeIndices.length;i++){var _node=this.body.nodes[this.body.nodeIndices[i]];if(_node.edges.length>largestHub){largestHub=_node.edges.length}average+=_node.edges.length;averageSquared+=Math.pow(_node.edges.length,2);hubCounter+=1}average=average/hubCounter;averageSquared=averageSquared/hubCounter;var variance=averageSquared-Math.pow(average,2);var standardDeviation=Math.sqrt(variance);var hubThreshold=Math.floor(average+2*standardDeviation);if(hubThreshold>largestHub){hubThreshold=largestHub}return hubThreshold}},{key:\"_createClusteredEdge\",value:function _createClusteredEdge(fromId,toId,baseEdge,clusterEdgeProperties,extraOptions){var clonedOptions=NetworkUtil.cloneOptions(baseEdge,\"edge\");util.deepExtend(clonedOptions,clusterEdgeProperties);clonedOptions.from=fromId;clonedOptions.to=toId;clonedOptions.id=\"clusterEdge:\"+util.randomUUID();if(extraOptions!==undefined){util.deepExtend(clonedOptions,extraOptions)}var newEdge=this.body.functions.createEdge(clonedOptions);newEdge.clusteringEdgeReplacingIds=[baseEdge.id];newEdge.connect();this.body.edges[newEdge.id]=newEdge;return newEdge}},{key:\"_clusterEdges\",value:function _clusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties){if(childEdges instanceof Edge){var edge=childEdges;var obj={};obj[edge.id]=edge;childEdges=obj}if(childNodes instanceof Node){var _node2=childNodes;var _obj={};_obj[_node2.id]=_node2;childNodes=_obj}if(clusterNode===undefined||clusterNode===null){throw new Error(\"_clusterEdges: parameter clusterNode required\")}if(clusterEdgeProperties===undefined){clusterEdgeProperties=clusterNode.clusterEdgeProperties}this._createClusterEdges(childNodes,childEdges,clusterNode,clusterEdgeProperties);for(var edgeId in childEdges){if(childEdges.hasOwnProperty(edgeId)){if(this.body.edges[edgeId]!==undefined){var _edge2=this.body.edges[edgeId];this._backupEdgeOptions(_edge2);_edge2.setOptions({physics:false})}}}for(var _nodeId7 in childNodes){if(childNodes.hasOwnProperty(_nodeId7)){this.clusteredNodes[_nodeId7]={clusterId:clusterNode.id,node:this.body.nodes[_nodeId7]};this.body.nodes[_nodeId7].setOptions({physics:false})}}}},{key:\"_getClusterNodeForNode\",value:function _getClusterNodeForNode(nodeId){if(nodeId===undefined)return undefined;var clusteredNode=this.clusteredNodes[nodeId];if(clusteredNode===undefined)return undefined;var clusterId=clusteredNode.clusterId;if(clusterId===undefined)return undefined;return this.body.nodes[clusterId]}},{key:\"_filter\",value:function _filter(arr,callback){var ret=[];util.forEach(arr,function(item){if(callback(item)){ret.push(item)}});return ret}},{key:\"_updateState\",value:function _updateState(){var _this4=this;var nodeId=void 0;var deletedNodeIds=[];var deletedEdgeIds=[];var eachClusterNode=function eachClusterNode(callback){util.forEach(_this4.body.nodes,function(node){if(node.isCluster===true){callback(node)}})};for(nodeId in this.clusteredNodes){if(!this.clusteredNodes.hasOwnProperty(nodeId))continue;var _node3=this.body.nodes[nodeId];if(_node3===undefined){deletedNodeIds.push(nodeId)}}eachClusterNode(function(clusterNode){for(var n=0;n<deletedNodeIds.length;n++){delete clusterNode.containedNodes[deletedNodeIds[n]]}});for(var n=0;n<deletedNodeIds.length;n++){delete this.clusteredNodes[deletedNodeIds[n]]}util.forEach(this.clusteredEdges,function(edgeId){var edge=_this4.body.edges[edgeId];if(edge===undefined||!edge.endPointsValid()){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(clusterNode.containedEdges,function(edge,edgeId){if(!edge.endPointsValid()&&deletedEdgeIds.indexOf(edgeId)===-1){deletedEdgeIds.push(edgeId)}})});util.forEach(this.body.edges,function(edge,edgeId){var isValid=true;var replacedIds=edge.clusteringEdgeReplacingIds;if(replacedIds!==undefined){var numValid=0;util.forEach(replacedIds,function(containedEdgeId){var containedEdge=_this4.body.edges[containedEdgeId];if(containedEdge!==undefined&&containedEdge.endPointsValid()){numValid+=1}});isValid=numValid>0}if(!edge.endPointsValid()||!isValid){deletedEdgeIds.push(edgeId)}});eachClusterNode(function(clusterNode){util.forEach(deletedEdgeIds,function(deletedEdgeId){delete clusterNode.containedEdges[deletedEdgeId];util.forEach(clusterNode.edges,function(edge,m){if(edge.id===deletedEdgeId){clusterNode.edges[m]=null;return}edge.clusteringEdgeReplacingIds=_this4._filter(edge.clusteringEdgeReplacingIds,function(id){return deletedEdgeIds.indexOf(id)===-1})});clusterNode.edges=_this4._filter(clusterNode.edges,function(item){return item!==null})})});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.clusteredEdges[edgeId]});util.forEach(deletedEdgeIds,function(edgeId){delete _this4.body.edges[edgeId]});var ids=(0,_keys2[\"default\"])(this.body.edges);util.forEach(ids,function(edgeId){var edge=_this4.body.edges[edgeId];var shouldBeClustered=_this4._isClusteredNode(edge.fromId)||_this4._isClusteredNode(edge.toId);if(shouldBeClustered===_this4._isClusteredEdge(edge.id)){return}if(shouldBeClustered){var clusterFrom=_this4._getClusterNodeForNode(edge.fromId);if(clusterFrom!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.fromId],edge,clusterFrom)}var clusterTo=_this4._getClusterNodeForNode(edge.toId);if(clusterTo!==undefined){_this4._clusterEdges(_this4.body.nodes[edge.toId],edge,clusterTo)}}else{throw new Error(\"remove edge from clustering not implemented!\")}});var changed=false;var continueLoop=true;var _loop2=function _loop2(){var clustersToOpen=[];eachClusterNode(function(clusterNode){var numNodes=(0,_keys2[\"default\"])(clusterNode.containedNodes).length;var allowSingle=clusterNode.options.allowSingleNodeCluster===true;if(allowSingle&&numNodes<1||!allowSingle&&numNodes<2){clustersToOpen.push(clusterNode.id)}});for(var _n=0;_n<clustersToOpen.length;++_n){_this4.openCluster(clustersToOpen[_n],{},false)}continueLoop=clustersToOpen.length>0;changed=changed||continueLoop};while(continueLoop){_loop2()}if(changed){this._updateState()}}},{key:\"_isClusteredNode\",value:function _isClusteredNode(nodeId){return this.clusteredNodes[nodeId]!==undefined}},{key:\"_isClusteredEdge\",value:function _isClusteredEdge(edgeId){return this.clusteredEdges[edgeId]!==undefined}}]);return ClusterEngine}();exports[\"default\"]=ClusterEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Node=__webpack_require__(47)[\"default\"];var Cluster=function(_Node){(0,_inherits3[\"default\"])(Cluster,_Node);function Cluster(options,body,imagelist,grouplist,globalOptions,defaultOptions){(0,_classCallCheck3[\"default\"])(this,Cluster);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(Cluster.__proto__||(0,_getPrototypeOf2[\"default\"])(Cluster)).call(this,options,body,imagelist,grouplist,globalOptions,defaultOptions));_this.isCluster=true;_this.containedNodes={};_this.containedEdges={};return _this}(0,_createClass3[\"default\"])(Cluster,[{key:\"_openChildCluster\",value:function _openChildCluster(childClusterId){var _this2=this;var childCluster=this.body.nodes[childClusterId];if(this.containedNodes[childClusterId]===undefined){throw new Error(\"node with id: \"+childClusterId+\" not in current cluster\")}if(!childCluster.isCluster){throw new Error(\"node with id: \"+childClusterId+\" is not a cluster\")}delete this.containedNodes[childClusterId];util.forEach(childCluster.edges,function(edge){delete _this2.containedEdges[edge.id]});util.forEach(childCluster.containedNodes,function(node,nodeId){_this2.containedNodes[nodeId]=node});childCluster.containedNodes={};util.forEach(childCluster.containedEdges,function(edge,edgeId){_this2.containedEdges[edgeId]=edge});childCluster.containedEdges={};util.forEach(childCluster.edges,function(clusterEdge){util.forEach(_this2.edges,function(parentClusterEdge){var index=parentClusterEdge.clusteringEdgeReplacingIds.indexOf(clusterEdge.id);if(index===-1)return;util.forEach(clusterEdge.clusteringEdgeReplacingIds,function(srcId){parentClusterEdge.clusteringEdgeReplacingIds.push(srcId);_this2.body.edges[srcId].edgeReplacedById=parentClusterEdge.id});parentClusterEdge.clusteringEdgeReplacingIds.splice(index,1)})});childCluster.edges=[]}}]);return Cluster}(Node);exports[\"default\"]=Cluster},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}function _initRequestAnimationFrame(){var func;if(window!==undefined){func=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame}if(func===undefined){window.requestAnimationFrame=function(callback){callback()}}else{window.requestAnimationFrame=func}}var util=__webpack_require__(2);var CanvasRenderer=function(){function CanvasRenderer(body,canvas){(0,_classCallCheck3[\"default\"])(this,CanvasRenderer);_initRequestAnimationFrame();this.body=body;this.canvas=canvas;this.redrawRequested=false;this.renderTimer=undefined;this.requiresTimeout=true;this.renderingActive=false;this.renderRequests=0;this.allowRedraw=true;this.dragging=false;this.options={};this.defaultOptions={hideEdgesOnDrag:false,hideNodesOnDrag:false};util.extend(this.options,this.defaultOptions);this._determineBrowserMethod();this.bindEventListeners()}(0,_createClass3[\"default\"])(CanvasRenderer,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"dragStart\",function(){_this.dragging=true});this.body.emitter.on(\"dragEnd\",function(){_this.dragging=false});this.body.emitter.on(\"_resizeNodes\",function(){_this._resizeNodes()});this.body.emitter.on(\"_redraw\",function(){if(_this.renderingActive===false){_this._redraw()}});this.body.emitter.on(\"_blockRedraw\",function(){_this.allowRedraw=false});this.body.emitter.on(\"_allowRedraw\",function(){_this.allowRedraw=true;_this.redrawRequested=false});this.body.emitter.on(\"_requestRedraw\",this._requestRedraw.bind(this));this.body.emitter.on(\"_startRendering\",function(){_this.renderRequests+=1;_this.renderingActive=true;_this._startRendering()});this.body.emitter.on(\"_stopRendering\",function(){_this.renderRequests-=1;_this.renderingActive=_this.renderRequests>0;_this.renderTimer=undefined});this.body.emitter.on(\"destroy\",function(){_this.renderRequests=0;_this.allowRedraw=false;_this.renderingActive=false;if(_this.requiresTimeout===true){clearTimeout(_this.renderTimer)}else{window.cancelAnimationFrame(_this.renderTimer)}_this.body.emitter.off()})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"_requestNextFrame\",value:function _requestNextFrame(callback,delay){if(typeof window===\"undefined\")return;var timer=void 0;var myWindow=window;if(this.requiresTimeout===true){timer=myWindow.setTimeout(callback,delay)}else{if(myWindow.requestAnimationFrame){timer=myWindow.requestAnimationFrame(callback)}}return timer}},{key:\"_startRendering\",value:function _startRendering(){if(this.renderingActive===true){if(this.renderTimer===undefined){this.renderTimer=this._requestNextFrame(this._renderStep.bind(this),this.simulationInterval)}}}},{key:\"_renderStep\",value:function _renderStep(){if(this.renderingActive===true){this.renderTimer=undefined;if(this.requiresTimeout===true){this._startRendering()}this._redraw();if(this.requiresTimeout===false){this._startRendering()}}}},{key:\"redraw\",value:function redraw(){this.body.emitter.emit(\"setSize\");this._redraw()}},{key:\"_requestRedraw\",value:function _requestRedraw(){var _this2=this;if(this.redrawRequested!==true&&this.renderingActive===false&&this.allowRedraw===true){this.redrawRequested=true;this._requestNextFrame(function(){_this2._redraw(false)},0)}}},{key:\"_redraw\",value:function _redraw(){var hidden=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;if(this.allowRedraw===true){this.body.emitter.emit(\"initRedraw\");this.redrawRequested=false;if(this.canvas.frame.canvas.width===0||this.canvas.frame.canvas.height===0){this.canvas.setSize()}this.canvas.setTransform();var ctx=this.canvas.getContext();var w=this.canvas.frame.canvas.clientWidth;var h=this.canvas.frame.canvas.clientHeight;ctx.clearRect(0,0,w,h);if(this.canvas.frame.clientWidth===0){return}ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);ctx.beginPath();this.body.emitter.emit(\"beforeDrawing\",ctx);ctx.closePath();if(hidden===false){if(this.dragging===false||this.dragging===true&&this.options.hideEdgesOnDrag===false){this._drawEdges(ctx)}}if(this.dragging===false||this.dragging===true&&this.options.hideNodesOnDrag===false){this._drawNodes(ctx,hidden)}ctx.beginPath();this.body.emitter.emit(\"afterDrawing\",ctx);ctx.closePath();ctx.restore();if(hidden===true){ctx.clearRect(0,0,w,h)}}}},{key:\"_resizeNodes\",value:function _resizeNodes(){this.canvas.setTransform();var ctx=this.canvas.getContext();ctx.save();ctx.translate(this.body.view.translation.x,this.body.view.translation.y);ctx.scale(this.body.view.scale,this.body.view.scale);var nodes=this.body.nodes;var node=void 0;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){node=nodes[nodeId];node.resize(ctx);node.updateBoundingBox(ctx,node.selected)}}ctx.restore()}},{key:\"_drawNodes\",value:function _drawNodes(ctx){var alwaysShow=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var nodes=this.body.nodes;var nodeIndices=this.body.nodeIndices;var node=void 0;var selected=[];var margin=20;var topLeft=this.canvas.DOMtoCanvas({x:-margin,y:-margin});var bottomRight=this.canvas.DOMtoCanvas({x:this.canvas.frame.canvas.clientWidth+margin,y:this.canvas.frame.canvas.clientHeight+margin});var viewableArea={top:topLeft.y,left:topLeft.x,bottom:bottomRight.y,right:bottomRight.x};for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isSelected()){selected.push(nodeIndices[i])}else{if(alwaysShow===true){node.draw(ctx)}else if(node.isBoundingBoxOverlappingWith(viewableArea)===true){node.draw(ctx)}else{node.updateBoundingBox(ctx,node.selected)}}}for(var _i=0;_i<selected.length;_i++){node=nodes[selected[_i]];node.draw(ctx)}}},{key:\"_drawEdges\",value:function _drawEdges(ctx){var edges=this.body.edges;var edgeIndices=this.body.edgeIndices;var edge=void 0;for(var i=0;i<edgeIndices.length;i++){edge=edges[edgeIndices[i]];if(edge.connected===true){edge.draw(ctx)}}}},{key:\"_determineBrowserMethod\",value:function _determineBrowserMethod(){if(typeof window!==\"undefined\"){var browserType=navigator.userAgent.toLowerCase();this.requiresTimeout=false;if(browserType.indexOf(\"msie 9.0\")!=-1){this.requiresTimeout=true}else if(browserType.indexOf(\"safari\")!=-1){if(browserType.indexOf(\"chrome\")<=-1){this.requiresTimeout=true}}}else{this.requiresTimeout=true}}}]);return CanvasRenderer}();exports[\"default\"]=CanvasRenderer},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var util=__webpack_require__(2);var Canvas=function(){function Canvas(body){(0,_classCallCheck3[\"default\"])(this,Canvas);this.body=body;this.pixelRatio=1;this.resizeTimer=undefined;this.resizeFunction=this._onResize.bind(this);this.cameraState={};this.initialized=false;this.canvasViewCenter={};this.options={};this.defaultOptions={autoResize:true,height:\"100%\",width:\"100%\"};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(Canvas,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.once(\"resize\",function(obj){if(obj.width!==0){_this.body.view.translation.x=obj.width*.5}if(obj.height!==0){_this.body.view.translation.y=obj.height*.5}});this.body.emitter.on(\"setSize\",this.setSize.bind(this));this.body.emitter.on(\"destroy\",function(){_this.hammerFrame.destroy();_this.hammer.destroy();_this._cleanUp()})}},{key:\"setOptions\",value:function setOptions(options){var _this2=this;if(options!==undefined){var fields=[\"width\",\"height\",\"autoResize\"];util.selectiveDeepExtend(fields,this.options,options)}if(this.options.autoResize===true){this._cleanUp();this.resizeTimer=setInterval(function(){var changed=_this2.setSize();if(changed===true){_this2.body.emitter.emit(\"_requestRedraw\")}},1e3);this.resizeFunction=this._onResize.bind(this);util.addEventListener(window,\"resize\",this.resizeFunction)}}},{key:\"_cleanUp\",value:function _cleanUp(){if(this.resizeTimer!==undefined){clearInterval(this.resizeTimer)}util.removeEventListener(window,\"resize\",this.resizeFunction);this.resizeFunction=undefined}},{key:\"_onResize\",value:function _onResize(){this.setSize();this.body.emitter.emit(\"_redraw\")}},{key:\"_getCameraState\",value:function _getCameraState(){var pixelRatio=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.pixelRatio;if(this.initialized===true){this.cameraState.previousWidth=this.frame.canvas.width/pixelRatio;this.cameraState.previousHeight=this.frame.canvas.height/pixelRatio;this.cameraState.scale=this.body.view.scale;this.cameraState.position=this.DOMtoCanvas({x:.5*this.frame.canvas.width/pixelRatio,y:.5*this.frame.canvas.height/pixelRatio})}}},{key:\"_setCameraState\",value:function _setCameraState(){if(this.cameraState.scale!==undefined&&this.frame.canvas.clientWidth!==0&&this.frame.canvas.clientHeight!==0&&this.pixelRatio!==0&&this.cameraState.previousWidth>0){var widthRatio=this.frame.canvas.width/this.pixelRatio/this.cameraState.previousWidth;var heightRatio=this.frame.canvas.height/this.pixelRatio/this.cameraState.previousHeight;var newScale=this.cameraState.scale;if(widthRatio!=1&&heightRatio!=1){newScale=this.cameraState.scale*.5*(widthRatio+heightRatio)}else if(widthRatio!=1){newScale=this.cameraState.scale*widthRatio}else if(heightRatio!=1){newScale=this.cameraState.scale*heightRatio}this.body.view.scale=newScale;var currentViewCenter=this.DOMtoCanvas({x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight});var distanceFromCenter={x:currentViewCenter.x-this.cameraState.position.x,y:currentViewCenter.y-this.cameraState.position.y};this.body.view.translation.x+=distanceFromCenter.x*this.body.view.scale;this.body.view.translation.y+=distanceFromCenter.y*this.body.view.scale}}},{key:\"_prepareValue\",value:function _prepareValue(value){if(typeof value===\"number\"){return value+\"px\"}else if(typeof value===\"string\"){if(value.indexOf(\"%\")!==-1||value.indexOf(\"px\")!==-1){return value}else if(value.indexOf(\"%\")===-1){return value+\"px\"}}throw new Error(\"Could not use the value supplied for width or height:\"+value)}},{key:\"_create\",value:function _create(){while(this.body.container.hasChildNodes()){this.body.container.removeChild(this.body.container.firstChild)}this.frame=document.createElement(\"div\");this.frame.className=\"vis-network\";this.frame.style.position=\"relative\";this.frame.style.overflow=\"hidden\";this.frame.tabIndex=900;this.frame.canvas=document.createElement(\"canvas\");this.frame.canvas.style.position=\"relative\";this.frame.appendChild(this.frame.canvas);if(!this.frame.canvas.getContext){var noCanvas=document.createElement(\"DIV\");noCanvas.style.color=\"red\";noCanvas.style.fontWeight=\"bold\";noCanvas.style.padding=\"10px\";noCanvas.innerHTML=\"Error: your browser does not support HTML canvas\";this.frame.canvas.appendChild(noCanvas)}else{this._setPixelRatio();this.setTransform()}this.body.container.appendChild(this.frame);this.body.view.scale=1;this.body.view.translation={x:.5*this.frame.canvas.clientWidth,y:.5*this.frame.canvas.clientHeight};this._bindHammer()}},{key:\"_bindHammer\",value:function _bindHammer(){var _this3=this;if(this.hammer!==undefined){this.hammer.destroy()}this.drag={};this.pinch={};this.hammer=new Hammer(this.frame.canvas);this.hammer.get(\"pinch\").set({enable:true});this.hammer.get(\"pan\").set({threshold:5,direction:Hammer.DIRECTION_ALL});hammerUtil.onTouch(this.hammer,function(event){_this3.body.eventListeners.onTouch(event)});this.hammer.on(\"tap\",function(event){_this3.body.eventListeners.onTap(event)});this.hammer.on(\"doubletap\",function(event){_this3.body.eventListeners.onDoubleTap(event)});this.hammer.on(\"press\",function(event){_this3.body.eventListeners.onHold(event)});this.hammer.on(\"panstart\",function(event){_this3.body.eventListeners.onDragStart(event)});this.hammer.on(\"panmove\",function(event){_this3.body.eventListeners.onDrag(event)});this.hammer.on(\"panend\",function(event){_this3.body.eventListeners.onDragEnd(event)});this.hammer.on(\"pinch\",function(event){_this3.body.eventListeners.onPinch(event)});this.frame.canvas.addEventListener(\"mousewheel\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"DOMMouseScroll\",function(event){_this3.body.eventListeners.onMouseWheel(event)});this.frame.canvas.addEventListener(\"mousemove\",function(event){_this3.body.eventListeners.onMouseMove(event)});this.frame.canvas.addEventListener(\"contextmenu\",function(event){_this3.body.eventListeners.onContext(event)});this.hammerFrame=new Hammer(this.frame);hammerUtil.onRelease(this.hammerFrame,function(event){_this3.body.eventListeners.onRelease(event)})}},{key:\"setSize\",value:function setSize(){var width=arguments.length>0&&arguments[0]!==undefined?arguments[0]:this.options.width;var height=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.height;width=this._prepareValue(width);height=this._prepareValue(height);var emitEvent=false;var oldWidth=this.frame.canvas.width;var oldHeight=this.frame.canvas.height;var previousRatio=this.pixelRatio;this._setPixelRatio();if(width!=this.options.width||height!=this.options.height||this.frame.style.width!=width||this.frame.style.height!=height){this._getCameraState(previousRatio);this.frame.style.width=width;this.frame.style.height=height;this.frame.canvas.style.width=\"100%\";this.frame.canvas.style.height=\"100%\";this.frame.canvas.width=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);this.frame.canvas.height=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);this.options.width=width;this.options.height=height;this.canvasViewCenter={x:.5*this.frame.clientWidth,y:.5*this.frame.clientHeight};emitEvent=true}else{var newWidth=Math.round(this.frame.canvas.clientWidth*this.pixelRatio);var newHeight=Math.round(this.frame.canvas.clientHeight*this.pixelRatio);if(this.frame.canvas.width!==newWidth||this.frame.canvas.height!==newHeight){this._getCameraState(previousRatio)}if(this.frame.canvas.width!==newWidth){this.frame.canvas.width=newWidth;emitEvent=true}if(this.frame.canvas.height!==newHeight){this.frame.canvas.height=newHeight;emitEvent=true}}if(emitEvent===true){this.body.emitter.emit(\"resize\",{width:Math.round(this.frame.canvas.width/this.pixelRatio),height:Math.round(this.frame.canvas.height/this.pixelRatio),oldWidth:Math.round(oldWidth/this.pixelRatio),oldHeight:Math.round(oldHeight/this.pixelRatio)});this._setCameraState()}this.initialized=true;return emitEvent}},{key:\"getContext\",value:function getContext(){return this.frame.canvas.getContext(\"2d\")}},{key:\"_determinePixelRatio\",value:function _determinePixelRatio(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}var numerator=1;if(typeof window!==\"undefined\"){numerator=window.devicePixelRatio||1}var denominator=ctx.webkitBackingStorePixelRatio||ctx.mozBackingStorePixelRatio||ctx.msBackingStorePixelRatio||ctx.oBackingStorePixelRatio||ctx.backingStorePixelRatio||1;return numerator/denominator}},{key:\"_setPixelRatio\",value:function _setPixelRatio(){this.pixelRatio=this._determinePixelRatio()}},{key:\"setTransform\",value:function setTransform(){var ctx=this.getContext();if(ctx===undefined){throw new Error(\"Could not get canvax context\")}ctx.setTransform(this.pixelRatio,0,0,this.pixelRatio,0,0)}},{key:\"_XconvertDOMtoCanvas\",value:function _XconvertDOMtoCanvas(x){return(x-this.body.view.translation.x)/this.body.view.scale}},{\nkey:\"_XconvertCanvasToDOM\",value:function _XconvertCanvasToDOM(x){return x*this.body.view.scale+this.body.view.translation.x}},{key:\"_YconvertDOMtoCanvas\",value:function _YconvertDOMtoCanvas(y){return(y-this.body.view.translation.y)/this.body.view.scale}},{key:\"_YconvertCanvasToDOM\",value:function _YconvertCanvasToDOM(y){return y*this.body.view.scale+this.body.view.translation.y}},{key:\"canvasToDOM\",value:function canvasToDOM(pos){return{x:this._XconvertCanvasToDOM(pos.x),y:this._YconvertCanvasToDOM(pos.y)}}},{key:\"DOMtoCanvas\",value:function DOMtoCanvas(pos){return{x:this._XconvertDOMtoCanvas(pos.x),y:this._YconvertDOMtoCanvas(pos.y)}}}]);return Canvas}();exports[\"default\"]=Canvas},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var View=function(){function View(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,View);this.body=body;this.canvas=canvas;this.animationSpeed=1/this.renderRefreshRate;this.animationEasingFunction=\"easeInOutQuint\";this.easingTime=0;this.sourceScale=0;this.targetScale=0;this.sourceTranslation=0;this.targetTranslation=0;this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined;this.touchTime=0;this.viewFunction=undefined;this.body.emitter.on(\"fit\",this.fit.bind(this));this.body.emitter.on(\"animationFinished\",function(){_this.body.emitter.emit(\"_stopRendering\")});this.body.emitter.on(\"unlockNode\",this.releaseNode.bind(this))}(0,_createClass3[\"default\"])(View,[{key:\"setOptions\",value:function setOptions(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.options=options}},{key:\"fit\",value:function fit(){var options=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{nodes:[]};var initialZoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;var range=void 0;var zoomLevel=void 0;if(options.nodes===undefined||options.nodes.length===0){options.nodes=this.body.nodeIndices}if(initialZoom===true){var positionDefined=0;for(var nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){var node=this.body.nodes[nodeId];if(node.predefinedPosition===true){positionDefined+=1}}}if(positionDefined>.5*this.body.nodeIndices.length){this.fit(options,false);return}range=NetworkUtil.getRange(this.body.nodes,options.nodes);var numberOfNodes=this.body.nodeIndices.length;zoomLevel=12.662/(numberOfNodes+7.4147)+.0964822;var factor=Math.min(this.canvas.frame.canvas.clientWidth/600,this.canvas.frame.canvas.clientHeight/600);zoomLevel*=factor}else{this.body.emitter.emit(\"_resizeNodes\");range=NetworkUtil.getRange(this.body.nodes,options.nodes);var xDistance=Math.abs(range.maxX-range.minX)*1.1;var yDistance=Math.abs(range.maxY-range.minY)*1.1;var xZoomLevel=this.canvas.frame.canvas.clientWidth/xDistance;var yZoomLevel=this.canvas.frame.canvas.clientHeight/yDistance;zoomLevel=xZoomLevel<=yZoomLevel?xZoomLevel:yZoomLevel}if(zoomLevel>1){zoomLevel=1}else if(zoomLevel===0){zoomLevel=1}var center=NetworkUtil.findCenter(range);var animationOptions={position:center,scale:zoomLevel,animation:options.animation};this.moveTo(animationOptions)}},{key:\"focus\",value:function focus(nodeId){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};if(this.body.nodes[nodeId]!==undefined){var nodePosition={x:this.body.nodes[nodeId].x,y:this.body.nodes[nodeId].y};options.position=nodePosition;options.lockedOnNode=nodeId;this.moveTo(options)}else{console.log(\"Node: \"+nodeId+\" cannot be found.\")}}},{key:\"moveTo\",value:function moveTo(options){if(options===undefined){options={};return}if(options.offset===undefined){options.offset={x:0,y:0}}if(options.offset.x===undefined){options.offset.x=0}if(options.offset.y===undefined){options.offset.y=0}if(options.scale===undefined){options.scale=this.body.view.scale}if(options.position===undefined){options.position=this.getViewPosition()}if(options.animation===undefined){options.animation={duration:0}}if(options.animation===false){options.animation={duration:0}}if(options.animation===true){options.animation={}}if(options.animation.duration===undefined){options.animation.duration=1e3}if(options.animation.easingFunction===undefined){options.animation.easingFunction=\"easeInOutQuad\"}this.animateView(options)}},{key:\"animateView\",value:function animateView(options){if(options===undefined){return}this.animationEasingFunction=options.animation.easingFunction;this.releaseNode();if(options.locked===true){this.lockedOnNodeId=options.lockedOnNode;this.lockedOnNodeOffset=options.offset}if(this.easingTime!=0){this._transitionRedraw(true)}this.sourceScale=this.body.view.scale;this.sourceTranslation=this.body.view.translation;this.targetScale=options.scale;this.body.view.scale=this.targetScale;var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-options.position.x,y:viewCenter.y-options.position.y};this.targetTranslation={x:this.sourceTranslation.x+distanceFromCenter.x*this.targetScale+options.offset.x,y:this.sourceTranslation.y+distanceFromCenter.y*this.targetScale+options.offset.y};if(options.animation.duration===0){if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}else{this.body.view.scale=this.targetScale;this.body.view.translation=this.targetTranslation;this.body.emitter.emit(\"_requestRedraw\")}}else{this.animationSpeed=1/(60*options.animation.duration*.001)||1/60;this.animationEasingFunction=options.animation.easingFunction;this.viewFunction=this._transitionRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction);this.body.emitter.emit(\"_startRendering\")}}},{key:\"_lockedRedraw\",value:function _lockedRedraw(){var nodePosition={x:this.body.nodes[this.lockedOnNodeId].x,y:this.body.nodes[this.lockedOnNodeId].y};var viewCenter=this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight});var distanceFromCenter={x:viewCenter.x-nodePosition.x,y:viewCenter.y-nodePosition.y};var sourceTranslation=this.body.view.translation;var targetTranslation={x:sourceTranslation.x+distanceFromCenter.x*this.body.view.scale+this.lockedOnNodeOffset.x,y:sourceTranslation.y+distanceFromCenter.y*this.body.view.scale+this.lockedOnNodeOffset.y};this.body.view.translation=targetTranslation}},{key:\"releaseNode\",value:function releaseNode(){if(this.lockedOnNodeId!==undefined&&this.viewFunction!==undefined){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.lockedOnNodeId=undefined;this.lockedOnNodeOffset=undefined}}},{key:\"_transitionRedraw\",value:function _transitionRedraw(){var finished=arguments.length>0&&arguments[0]!==undefined?arguments[0]:false;this.easingTime+=this.animationSpeed;this.easingTime=finished===true?1:this.easingTime;var progress=util.easingFunctions[this.animationEasingFunction](this.easingTime);this.body.view.scale=this.sourceScale+(this.targetScale-this.sourceScale)*progress;this.body.view.translation={x:this.sourceTranslation.x+(this.targetTranslation.x-this.sourceTranslation.x)*progress,y:this.sourceTranslation.y+(this.targetTranslation.y-this.sourceTranslation.y)*progress};if(this.easingTime>=1){this.body.emitter.off(\"initRedraw\",this.viewFunction);this.easingTime=0;if(this.lockedOnNodeId!=undefined){this.viewFunction=this._lockedRedraw.bind(this);this.body.emitter.on(\"initRedraw\",this.viewFunction)}this.body.emitter.emit(\"animationFinished\")}}},{key:\"getScale\",value:function getScale(){return this.body.view.scale}},{key:\"getViewPosition\",value:function getViewPosition(){return this.canvas.DOMtoCanvas({x:.5*this.canvas.frame.canvas.clientWidth,y:.5*this.canvas.frame.canvas.clientHeight})}}]);return View}();exports[\"default\"]=View},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NavigationHandler=__webpack_require__(233)[\"default\"];var Popup=__webpack_require__(104)[\"default\"];var InteractionHandler=function(){function InteractionHandler(body,canvas,selectionHandler){(0,_classCallCheck3[\"default\"])(this,InteractionHandler);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.navigationHandler=new NavigationHandler(body,canvas);this.body.eventListeners.onTap=this.onTap.bind(this);this.body.eventListeners.onTouch=this.onTouch.bind(this);this.body.eventListeners.onDoubleTap=this.onDoubleTap.bind(this);this.body.eventListeners.onHold=this.onHold.bind(this);this.body.eventListeners.onDragStart=this.onDragStart.bind(this);this.body.eventListeners.onDrag=this.onDrag.bind(this);this.body.eventListeners.onDragEnd=this.onDragEnd.bind(this);this.body.eventListeners.onMouseWheel=this.onMouseWheel.bind(this);this.body.eventListeners.onPinch=this.onPinch.bind(this);this.body.eventListeners.onMouseMove=this.onMouseMove.bind(this);this.body.eventListeners.onRelease=this.onRelease.bind(this);this.body.eventListeners.onContext=this.onContext.bind(this);this.touchTime=0;this.drag={};this.pinch={};this.popup=undefined;this.popupObj=undefined;this.popupTimer=undefined;this.body.functions.getPointer=this.getPointer.bind(this);this.options={};this.defaultOptions={dragNodes:true,dragView:true,hover:false,keyboard:{enabled:false,speed:{x:10,y:10,zoom:.02},bindToWindow:true},navigationButtons:false,tooltipDelay:300,zoomView:true};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(InteractionHandler,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this=this;this.body.emitter.on(\"destroy\",function(){clearTimeout(_this.popupTimer);delete _this.body.functions.getPointer})}},{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"hideEdgesOnDrag\",\"hideNodesOnDrag\",\"keyboard\",\"multiselect\",\"selectable\",\"selectConnectedEdges\"];util.selectiveNotDeepExtend(fields,this.options,options);util.mergeOptions(this.options,options,\"keyboard\");if(options.tooltip){util.extend(this.options.tooltip,options.tooltip);if(options.tooltip.color){this.options.tooltip.color=util.parseColor(options.tooltip.color)}}}this.navigationHandler.setOptions(this.options)}},{key:\"getPointer\",value:function getPointer(touch){return{x:touch.x-util.getAbsoluteLeft(this.canvas.frame.canvas),y:touch.y-util.getAbsoluteTop(this.canvas.frame.canvas)}}},{key:\"onTouch\",value:function onTouch(event){if((new Date).valueOf()-this.touchTime>50){this.drag.pointer=this.getPointer(event.center);this.drag.pinched=false;this.pinch.scale=this.body.view.scale;this.touchTime=(new Date).valueOf()}}},{key:\"onTap\",value:function onTap(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect&&(event.changedPointers[0].ctrlKey||event.changedPointers[0].metaKey);this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer)}},{key:\"onDoubleTap\",value:function onDoubleTap(event){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"doubleClick\",event,pointer)}},{key:\"onHold\",value:function onHold(event){var pointer=this.getPointer(event.center);var multiselect=this.selectionHandler.options.multiselect;this.checkSelectionChanges(pointer,event,multiselect);this.selectionHandler._generateClickEvent(\"click\",event,pointer);this.selectionHandler._generateClickEvent(\"hold\",event,pointer)}},{key:\"onRelease\",value:function onRelease(event){if((new Date).valueOf()-this.touchTime>10){var pointer=this.getPointer(event.center);this.selectionHandler._generateClickEvent(\"release\",event,pointer);this.touchTime=(new Date).valueOf()}}},{key:\"onContext\",value:function onContext(event){var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.selectionHandler._generateClickEvent(\"oncontext\",event,pointer)}},{key:\"checkSelectionChanges\",value:function checkSelectionChanges(pointer,event){var add=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var previousSelection=this.selectionHandler.getSelection();var selected=false;if(add===true){selected=this.selectionHandler.selectAdditionalOnPoint(pointer)}else{selected=this.selectionHandler.selectOnPoint(pointer)}var currentSelection=this.selectionHandler.getSelection();var deselectedItems=this._determineDifference(previousSelection,currentSelection);var selectedItems=this._determineDifference(currentSelection,previousSelection);if(deselectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"deselectEdge\",event,pointer,previousSelection);selected=true}if(deselectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"deselectNode\",event,pointer,previousSelection);selected=true}if(selectedItems.nodes.length>0){this.selectionHandler._generateClickEvent(\"selectNode\",event,pointer);selected=true}if(selectedItems.edges.length>0){this.selectionHandler._generateClickEvent(\"selectEdge\",event,pointer);selected=true}if(selected===true){this.selectionHandler._generateClickEvent(\"select\",event,pointer)}}},{key:\"_determineDifference\",value:function _determineDifference(firstSet,secondSet){var arrayDiff=function arrayDiff(firstArr,secondArr){var result=[];for(var i=0;i<firstArr.length;i++){var value=firstArr[i];if(secondArr.indexOf(value)===-1){result.push(value)}}return result};return{nodes:arrayDiff(firstSet.nodes,secondSet.nodes),edges:arrayDiff(firstSet.edges,secondSet.edges)}}},{key:\"onDragStart\",value:function onDragStart(event){if(this.drag.pointer===undefined){this.onTouch(event)}var node=this.selectionHandler.getNodeAt(this.drag.pointer);this.drag.dragging=true;this.drag.selection=[];this.drag.translation=util.extend({},this.body.view.translation);this.drag.nodeId=undefined;if(node!==undefined&&this.options.dragNodes===true){this.drag.nodeId=node.id;if(node.isSelected()===false){this.selectionHandler.unselectAll();this.selectionHandler.selectObject(node)}this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer);var selection=this.selectionHandler.selectionObj.nodes;for(var nodeId in selection){if(selection.hasOwnProperty(nodeId)){var object=selection[nodeId];var s={id:object.id,node:object,x:object.x,y:object.y,xFixed:object.options.fixed.x,yFixed:object.options.fixed.y};object.options.fixed.x=true;object.options.fixed.y=true;this.drag.selection.push(s)}}}else{this.selectionHandler._generateClickEvent(\"dragStart\",event,this.drag.pointer,undefined,true)}}},{key:\"onDrag\",value:function onDrag(event){var _this2=this;if(this.drag.pinched===true){return}this.body.emitter.emit(\"unlockNode\");var pointer=this.getPointer(event.center);var selection=this.drag.selection;if(selection&&selection.length&&this.options.dragNodes===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer);var deltaX=pointer.x-this.drag.pointer.x;var deltaY=pointer.y-this.drag.pointer.y;selection.forEach(function(selection){var node=selection.node;if(selection.xFixed===false){node.x=_this2.canvas._XconvertDOMtoCanvas(_this2.canvas._XconvertCanvasToDOM(selection.x)+deltaX)}if(selection.yFixed===false){node.y=_this2.canvas._YconvertDOMtoCanvas(_this2.canvas._YconvertCanvasToDOM(selection.y)+deltaY)}});this.body.emitter.emit(\"startSimulation\")}else{if(this.options.dragView===true){this.selectionHandler._generateClickEvent(\"dragging\",event,pointer,undefined,true);if(this.drag.pointer===undefined){this.onDragStart(event);return}var diffX=pointer.x-this.drag.pointer.x;var diffY=pointer.y-this.drag.pointer.y;this.body.view.translation={x:this.drag.translation.x+diffX,y:this.drag.translation.y+diffY};this.body.emitter.emit(\"_requestRedraw\")}}}},{key:\"onDragEnd\",value:function onDragEnd(event){this.drag.dragging=false;var selection=this.drag.selection;if(selection&&selection.length){selection.forEach(function(s){s.node.options.fixed.x=s.xFixed;s.node.options.fixed.y=s.yFixed});this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center));this.body.emitter.emit(\"startSimulation\")}else{this.selectionHandler._generateClickEvent(\"dragEnd\",event,this.getPointer(event.center),undefined,true);this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"onPinch\",value:function onPinch(event){var pointer=this.getPointer(event.center);this.drag.pinched=true;if(this.pinch[\"scale\"]===undefined){this.pinch.scale=1}var scale=this.pinch.scale*event.scale;this.zoom(scale,pointer)}},{key:\"zoom\",value:function zoom(scale,pointer){if(this.options.zoomView===true){var scaleOld=this.body.view.scale;if(scale<1e-5){scale=1e-5}if(scale>10){scale=10}var preScaleDragPointer=undefined;if(this.drag!==undefined){if(this.drag.dragging===true){preScaleDragPointer=this.canvas.DOMtoCanvas(this.drag.pointer)}}var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*pointer.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*pointer.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};if(preScaleDragPointer!=undefined){var postScaleDragPointer=this.canvas.canvasToDOM(preScaleDragPointer);this.drag.pointer.x=postScaleDragPointer.x;this.drag.pointer.y=postScaleDragPointer.y}this.body.emitter.emit(\"_requestRedraw\");if(scaleOld<scale){this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:pointer})}else{this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:pointer})}}}},{key:\"onMouseWheel\",value:function onMouseWheel(event){if(this.options.zoomView===true){var delta=0;if(event.wheelDelta){delta=event.wheelDelta/120}else if(event.detail){delta=-event.detail/3}if(delta!==0){var scale=this.body.view.scale;var zoom=delta/10;if(delta<0){zoom=zoom/(1-zoom)}scale*=1+zoom;var pointer=this.getPointer({x:event.clientX,y:event.clientY});this.zoom(scale,pointer)}event.preventDefault()}}},{key:\"onMouseMove\",value:function onMouseMove(event){var _this3=this;var pointer=this.getPointer({x:event.clientX,y:event.clientY});var popupVisible=false;if(this.popup!==undefined){if(this.popup.hidden===false){this._checkHidePopup(pointer)}if(this.popup.hidden===false){popupVisible=true;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.show()}}if(this.options.keyboard.bindToWindow===false&&this.options.keyboard.enabled===true){this.canvas.frame.focus()}if(popupVisible===false){if(this.popupTimer!==undefined){clearInterval(this.popupTimer);this.popupTimer=undefined}if(!this.drag.dragging){this.popupTimer=setTimeout(function(){return _this3._checkShowPopup(pointer)},this.options.tooltipDelay)}}if(this.options.hover===true){this.selectionHandler.hoverObject(event,pointer)}}},{key:\"_checkShowPopup\",value:function _checkShowPopup(pointer){var x=this.canvas._XconvertDOMtoCanvas(pointer.x);var y=this.canvas._YconvertDOMtoCanvas(pointer.y);var pointerObj={left:x,top:y,right:x,bottom:y};var previousPopupObjId=this.popupObj===undefined?undefined:this.popupObj.id;var nodeUnderCursor=false;var popupType=\"node\";if(this.popupObj===undefined){var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;var node=void 0;var overlappingNodes=[];for(var i=0;i<nodeIndices.length;i++){node=nodes[nodeIndices[i]];if(node.isOverlappingWith(pointerObj)===true){if(node.getTitle()!==undefined){overlappingNodes.push(nodeIndices[i])}}}if(overlappingNodes.length>0){this.popupObj=nodes[overlappingNodes[overlappingNodes.length-1]];nodeUnderCursor=true}}if(this.popupObj===undefined&&nodeUnderCursor===false){var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;var edge=void 0;var overlappingEdges=[];for(var _i=0;_i<edgeIndices.length;_i++){edge=edges[edgeIndices[_i]];if(edge.isOverlappingWith(pointerObj)===true){if(edge.connected===true&&edge.getTitle()!==undefined){overlappingEdges.push(edgeIndices[_i])}}}if(overlappingEdges.length>0){this.popupObj=edges[overlappingEdges[overlappingEdges.length-1]];popupType=\"edge\"}}if(this.popupObj!==undefined){if(this.popupObj.id!==previousPopupObjId){if(this.popup===undefined){this.popup=new Popup(this.canvas.frame)}this.popup.popupTargetType=popupType;this.popup.popupTargetId=this.popupObj.id;this.popup.setPosition(pointer.x+3,pointer.y-5);this.popup.setText(this.popupObj.getTitle());this.popup.show();this.body.emitter.emit(\"showPopup\",this.popupObj.id)}}else{if(this.popup!==undefined){this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}},{key:\"_checkHidePopup\",value:function _checkHidePopup(pointer){var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var stillOnObj=false;if(this.popup.popupTargetType===\"node\"){if(this.body.nodes[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.nodes[this.popup.popupTargetId].isOverlappingWith(pointerObj);if(stillOnObj===true){var overNode=this.selectionHandler.getNodeAt(pointer);stillOnObj=overNode===undefined?false:overNode.id===this.popup.popupTargetId}}}else{if(this.selectionHandler.getNodeAt(pointer)===undefined){if(this.body.edges[this.popup.popupTargetId]!==undefined){stillOnObj=this.body.edges[this.popup.popupTargetId].isOverlappingWith(pointerObj)}}}if(stillOnObj===false){this.popupObj=undefined;this.popup.hide();this.body.emitter.emit(\"hidePopup\")}}}]);return InteractionHandler}();exports[\"default\"]=InteractionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var keycharm=__webpack_require__(35);var NavigationHandler=function(){function NavigationHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,NavigationHandler);this.body=body;this.canvas=canvas;this.iconsCreated=false;this.navigationHammers=[];this.boundFunctions={};this.touchTime=0;this.activated=false;this.body.emitter.on(\"activate\",function(){_this.activated=true;_this.configureKeyboardBindings()});this.body.emitter.on(\"deactivate\",function(){_this.activated=false;_this.configureKeyboardBindings()});this.body.emitter.on(\"destroy\",function(){if(_this.keycharm!==undefined){_this.keycharm.destroy()}});this.options={}}(0,_createClass3[\"default\"])(NavigationHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){this.options=options;this.create()}}},{key:\"create\",value:function create(){if(this.options.navigationButtons===true){if(this.iconsCreated===false){this.loadNavigationElements()}}else if(this.iconsCreated===true){this.cleanNavigation()}this.configureKeyboardBindings()}},{key:\"cleanNavigation\",value:function cleanNavigation(){if(this.navigationHammers.length!=0){for(var i=0;i<this.navigationHammers.length;i++){this.navigationHammers[i].destroy()}this.navigationHammers=[]}if(this.navigationDOM&&this.navigationDOM[\"wrapper\"]&&this.navigationDOM[\"wrapper\"].parentNode){this.navigationDOM[\"wrapper\"].parentNode.removeChild(this.navigationDOM[\"wrapper\"])}this.iconsCreated=false}},{key:\"loadNavigationElements\",value:function loadNavigationElements(){var _this2=this;this.cleanNavigation();this.navigationDOM={};var navigationDivs=[\"up\",\"down\",\"left\",\"right\",\"zoomIn\",\"zoomOut\",\"zoomExtends\"];var navigationDivActions=[\"_moveUp\",\"_moveDown\",\"_moveLeft\",\"_moveRight\",\"_zoomIn\",\"_zoomOut\",\"_fit\"];this.navigationDOM[\"wrapper\"]=document.createElement(\"div\");this.navigationDOM[\"wrapper\"].className=\"vis-navigation\";this.canvas.frame.appendChild(this.navigationDOM[\"wrapper\"]);for(var i=0;i<navigationDivs.length;i++){this.navigationDOM[navigationDivs[i]]=document.createElement(\"div\");this.navigationDOM[navigationDivs[i]].className=\"vis-button vis-\"+navigationDivs[i];this.navigationDOM[\"wrapper\"].appendChild(this.navigationDOM[navigationDivs[i]]);var hammer=new Hammer(this.navigationDOM[navigationDivs[i]]);if(navigationDivActions[i]===\"_fit\"){hammerUtil.onTouch(hammer,this._fit.bind(this))}else{hammerUtil.onTouch(hammer,this.bindToRedraw.bind(this,navigationDivActions[i]))}this.navigationHammers.push(hammer)}var hammerFrame=new Hammer(this.canvas.frame);hammerUtil.onRelease(hammerFrame,function(){_this2._stopMovement()});this.navigationHammers.push(hammerFrame);this.iconsCreated=true}},{key:\"bindToRedraw\",value:function bindToRedraw(action){if(this.boundFunctions[action]===undefined){this.boundFunctions[action]=this[action].bind(this);this.body.emitter.on(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_startRendering\")}}},{key:\"unbindFromRedraw\",value:function unbindFromRedraw(action){if(this.boundFunctions[action]!==undefined){this.body.emitter.off(\"initRedraw\",this.boundFunctions[action]);this.body.emitter.emit(\"_stopRendering\");delete this.boundFunctions[action]}}},{key:\"_fit\",value:function _fit(){if((new Date).valueOf()-this.touchTime>700){this.body.emitter.emit(\"fit\",{duration:700});this.touchTime=(new Date).valueOf()}}},{key:\"_stopMovement\",value:function _stopMovement(){for(var boundAction in this.boundFunctions){if(this.boundFunctions.hasOwnProperty(boundAction)){this.body.emitter.off(\"initRedraw\",this.boundFunctions[boundAction]);this.body.emitter.emit(\"_stopRendering\")}}this.boundFunctions={}}},{key:\"_moveUp\",value:function _moveUp(){this.body.view.translation.y+=this.options.keyboard.speed.y}},{key:\"_moveDown\",value:function _moveDown(){this.body.view.translation.y-=this.options.keyboard.speed.y}},{key:\"_moveLeft\",value:function _moveLeft(){this.body.view.translation.x+=this.options.keyboard.speed.x}},{key:\"_moveRight\",value:function _moveRight(){this.body.view.translation.x-=this.options.keyboard.speed.x}},{key:\"_zoomIn\",value:function _zoomIn(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale*(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"+\",scale:this.body.view.scale,pointer:null})}},{key:\"_zoomOut\",value:function _zoomOut(){var scaleOld=this.body.view.scale;var scale=this.body.view.scale/(1+this.options.keyboard.speed.zoom);var translation=this.body.view.translation;var scaleFrac=scale/scaleOld;var tx=(1-scaleFrac)*this.canvas.canvasViewCenter.x+translation.x*scaleFrac;var ty=(1-scaleFrac)*this.canvas.canvasViewCenter.y+translation.y*scaleFrac;this.body.view.scale=scale;this.body.view.translation={x:tx,y:ty};this.body.emitter.emit(\"zoom\",{direction:\"-\",scale:this.body.view.scale,pointer:null})}},{key:\"configureKeyboardBindings\",value:function configureKeyboardBindings(){var _this3=this;if(this.keycharm!==undefined){this.keycharm.destroy()}if(this.options.keyboard.enabled===true){if(this.options.keyboard.bindToWindow===true){this.keycharm=keycharm({container:window,preventDefault:true})}else{this.keycharm=keycharm({container:this.canvas.frame,preventDefault:true})}this.keycharm.reset();if(this.activated===true){this.keycharm.bind(\"up\",function(){_this3.bindToRedraw(\"_moveUp\")},\"keydown\");this.keycharm.bind(\"down\",function(){_this3.bindToRedraw(\"_moveDown\")},\"keydown\");this.keycharm.bind(\"left\",function(){_this3.bindToRedraw(\"_moveLeft\")},\"keydown\");this.keycharm.bind(\"right\",function(){_this3.bindToRedraw(\"_moveRight\")},\"keydown\");this.keycharm.bind(\"=\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num+\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"num-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"-\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"[\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"]\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pageup\",function(){_this3.bindToRedraw(\"_zoomIn\")},\"keydown\");this.keycharm.bind(\"pagedown\",function(){_this3.bindToRedraw(\"_zoomOut\")},\"keydown\");this.keycharm.bind(\"up\",function(){_this3.unbindFromRedraw(\"_moveUp\")},\"keyup\");this.keycharm.bind(\"down\",function(){_this3.unbindFromRedraw(\"_moveDown\")},\"keyup\");this.keycharm.bind(\"left\",function(){_this3.unbindFromRedraw(\"_moveLeft\")},\"keyup\");this.keycharm.bind(\"right\",function(){_this3.unbindFromRedraw(\"_moveRight\")},\"keyup\");this.keycharm.bind(\"=\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num+\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"num-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"-\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"[\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\");this.keycharm.bind(\"]\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pageup\",function(){_this3.unbindFromRedraw(\"_zoomIn\")},\"keyup\");this.keycharm.bind(\"pagedown\",function(){_this3.unbindFromRedraw(\"_zoomOut\")},\"keyup\")}}}}]);return NavigationHandler}();exports[\"default\"]=NavigationHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var Node=__webpack_require__(47)[\"default\"];var Edge=__webpack_require__(74)[\"default\"];var util=__webpack_require__(2);var SelectionHandler=function(){function SelectionHandler(body,canvas){var _this=this;(0,_classCallCheck3[\"default\"])(this,SelectionHandler);this.body=body;this.canvas=canvas;this.selectionObj={nodes:[],edges:[]};this.hoverObj={nodes:{},edges:{}};this.options={};this.defaultOptions={multiselect:false,selectable:true,selectConnectedEdges:true,hoverConnectedEdges:true};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"_dataChanged\",function(){_this.updateSelection()})}(0,_createClass3[\"default\"])(SelectionHandler,[{key:\"setOptions\",value:function setOptions(options){if(options!==undefined){var fields=[\"multiselect\",\"hoverConnectedEdges\",\"selectable\",\"selectConnectedEdges\"];util.selectiveDeepExtend(fields,this.options,options)}}},{key:\"selectOnPoint\",value:function selectOnPoint(pointer){var selected=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);this.unselectAll();if(obj!==undefined){selected=this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}return selected}},{key:\"selectAdditionalOnPoint\",value:function selectAdditionalOnPoint(pointer){var selectionChanged=false;if(this.options.selectable===true){var obj=this.getNodeAt(pointer)||this.getEdgeAt(pointer);if(obj!==undefined){selectionChanged=true;if(obj.isSelected()===true){this.deselectObject(obj)}else{this.selectObject(obj)}this.body.emitter.emit(\"_requestRedraw\")}}return selectionChanged}},{key:\"_initBaseEvent\",value:function _initBaseEvent(event,pointer){var properties={};properties[\"pointer\"]={DOM:{\nx:pointer.x,y:pointer.y},canvas:this.canvas.DOMtoCanvas(pointer)};properties[\"event\"]=event;return properties}},{key:\"_generateClickEvent\",value:function _generateClickEvent(eventType,event,pointer,oldSelection){var emptySelection=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;var properties=this._initBaseEvent(event,pointer);if(emptySelection===true){properties.nodes=[];properties.edges=[]}else{var tmp=this.getSelection();properties.nodes=tmp.nodes;properties.edges=tmp.edges}if(oldSelection!==undefined){properties[\"previousSelection\"]=oldSelection}if(eventType==\"click\"){properties.items=this.getClickedItems(pointer)}this.body.emitter.emit(eventType,properties)}},{key:\"selectObject\",value:function selectObject(obj){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:this.options.selectConnectedEdges;if(obj!==undefined){if(obj instanceof Node){if(highlightEdges===true){this._selectConnectedEdges(obj)}}obj.select();this._addToSelection(obj);return true}return false}},{key:\"deselectObject\",value:function deselectObject(obj){if(obj.isSelected()===true){obj.selected=false;this._removeFromSelection(obj)}}},{key:\"_getAllNodesOverlappingWith\",value:function _getAllNodesOverlappingWith(object){var overlappingNodes=[];var nodes=this.body.nodes;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(nodes[nodeId].isOverlappingWith(object)){overlappingNodes.push(nodeId)}}return overlappingNodes}},{key:\"_pointerToPositionObject\",value:function _pointerToPositionObject(pointer){var canvasPos=this.canvas.DOMtoCanvas(pointer);return{left:canvasPos.x-1,top:canvasPos.y+1,right:canvasPos.x+1,bottom:canvasPos.y-1}}},{key:\"getNodeAt\",value:function getNodeAt(pointer){var returnNode=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var positionObject=this._pointerToPositionObject(pointer);var overlappingNodes=this._getAllNodesOverlappingWith(positionObject);if(overlappingNodes.length>0){if(returnNode===true){return this.body.nodes[overlappingNodes[overlappingNodes.length-1]]}else{return overlappingNodes[overlappingNodes.length-1]}}else{return undefined}}},{key:\"_getEdgesOverlappingWith\",value:function _getEdgesOverlappingWith(object,overlappingEdges){var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];if(edges[edgeId].isOverlappingWith(object)){overlappingEdges.push(edgeId)}}}},{key:\"_getAllEdgesOverlappingWith\",value:function _getAllEdgesOverlappingWith(object){var overlappingEdges=[];this._getEdgesOverlappingWith(object,overlappingEdges);return overlappingEdges}},{key:\"getEdgeAt\",value:function getEdgeAt(pointer){var returnEdge=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;var canvasPos=this.canvas.DOMtoCanvas(pointer);var mindist=10;var overlappingEdge=null;var edges=this.body.edges;for(var i=0;i<this.body.edgeIndices.length;i++){var edgeId=this.body.edgeIndices[i];var edge=edges[edgeId];if(edge.connected){var xFrom=edge.from.x;var yFrom=edge.from.y;var xTo=edge.to.x;var yTo=edge.to.y;var dist=edge.edgeType.getDistanceToEdge(xFrom,yFrom,xTo,yTo,canvasPos.x,canvasPos.y);if(dist<mindist){overlappingEdge=edgeId;mindist=dist}}}if(overlappingEdge!==null){if(returnEdge===true){return this.body.edges[overlappingEdge]}else{return overlappingEdge}}else{return undefined}}},{key:\"_addToSelection\",value:function _addToSelection(obj){if(obj instanceof Node){this.selectionObj.nodes[obj.id]=obj}else{this.selectionObj.edges[obj.id]=obj}}},{key:\"_addToHover\",value:function _addToHover(obj){if(obj instanceof Node){this.hoverObj.nodes[obj.id]=obj}else{this.hoverObj.edges[obj.id]=obj}}},{key:\"_removeFromSelection\",value:function _removeFromSelection(obj){if(obj instanceof Node){delete this.selectionObj.nodes[obj.id];this._unselectConnectedEdges(obj)}else{delete this.selectionObj.edges[obj.id]}}},{key:\"unselectAll\",value:function unselectAll(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){this.selectionObj.nodes[nodeId].unselect()}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){this.selectionObj.edges[edgeId].unselect()}}this.selectionObj={nodes:{},edges:{}}}},{key:\"_getSelectedNodeCount\",value:function _getSelectedNodeCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}return count}},{key:\"_getSelectedNode\",value:function _getSelectedNode(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return this.selectionObj.nodes[nodeId]}}return undefined}},{key:\"_getSelectedEdge\",value:function _getSelectedEdge(){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return this.selectionObj.edges[edgeId]}}return undefined}},{key:\"_getSelectedEdgeCount\",value:function _getSelectedEdgeCount(){var count=0;for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_getSelectedObjectCount\",value:function _getSelectedObjectCount(){var count=0;for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){count+=1}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){count+=1}}return count}},{key:\"_selectionIsEmpty\",value:function _selectionIsEmpty(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){return false}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){return false}}return true}},{key:\"_clusterInSelection\",value:function _clusterInSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(this.selectionObj.nodes[nodeId].clusterSize>1){return true}}}return false}},{key:\"_selectConnectedEdges\",value:function _selectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.select();this._addToSelection(edge)}}},{key:\"_hoverConnectedEdges\",value:function _hoverConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.hover=true;this._addToHover(edge)}}},{key:\"_unselectConnectedEdges\",value:function _unselectConnectedEdges(node){for(var i=0;i<node.edges.length;i++){var edge=node.edges[i];edge.unselect();this._removeFromSelection(edge)}}},{key:\"emitBlurEvent\",value:function emitBlurEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);if(object.hover===true){object.hover=false;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"blurNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"blurEdge\",properties)}}}},{key:\"emitHoverEvent\",value:function emitHoverEvent(event,pointer,object){var properties=this._initBaseEvent(event,pointer);var hoverChanged=false;if(object.hover===false){object.hover=true;this._addToHover(object);hoverChanged=true;if(object instanceof Node){properties.node=object.id;this.body.emitter.emit(\"hoverNode\",properties)}else{properties.edge=object.id;this.body.emitter.emit(\"hoverEdge\",properties)}}return hoverChanged}},{key:\"hoverObject\",value:function hoverObject(event,pointer){var object=this.getNodeAt(pointer);if(object===undefined){object=this.getEdgeAt(pointer)}var hoverChanged=false;for(var nodeId in this.hoverObj.nodes){if(this.hoverObj.nodes.hasOwnProperty(nodeId)){if(object===undefined||object instanceof Node&&object.id!=nodeId||object instanceof Edge){this.emitBlurEvent(event,pointer,this.hoverObj.nodes[nodeId]);delete this.hoverObj.nodes[nodeId];hoverChanged=true}}}for(var edgeId in this.hoverObj.edges){if(this.hoverObj.edges.hasOwnProperty(edgeId)){if(hoverChanged===true){this.hoverObj.edges[edgeId].hover=false;delete this.hoverObj.edges[edgeId]}else if(object===undefined||object instanceof Edge&&object.id!=edgeId||object instanceof Node&&!object.hover){this.emitBlurEvent(event,pointer,this.hoverObj.edges[edgeId]);delete this.hoverObj.edges[edgeId];hoverChanged=true}}}if(object!==undefined){hoverChanged=hoverChanged||this.emitHoverEvent(event,pointer,object);if(object instanceof Node&&this.options.hoverConnectedEdges===true){this._hoverConnectedEdges(object)}}if(hoverChanged===true){this.body.emitter.emit(\"_requestRedraw\")}}},{key:\"getSelection\",value:function getSelection(){var nodeIds=this.getSelectedNodes();var edgeIds=this.getSelectedEdges();return{nodes:nodeIds,edges:edgeIds}}},{key:\"getSelectedNodes\",value:function getSelectedNodes(){var idArray=[];if(this.options.selectable===true){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){idArray.push(this.selectionObj.nodes[nodeId].id)}}}return idArray}},{key:\"getSelectedEdges\",value:function getSelectedEdges(){var idArray=[];if(this.options.selectable===true){for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){idArray.push(this.selectionObj.edges[edgeId].id)}}}return idArray}},{key:\"setSelection\",value:function setSelection(selection){var options=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};var i=void 0,id=void 0;if(!selection||!selection.nodes&&!selection.edges)throw\"Selection must be an object with nodes and/or edges properties\";if(options.unselectAll||options.unselectAll===undefined){this.unselectAll()}if(selection.nodes){for(i=0;i<selection.nodes.length;i++){id=selection.nodes[i];var node=this.body.nodes[id];if(!node){throw new RangeError('Node with id \"'+id+'\" not found')}this.selectObject(node,options.highlightEdges)}}if(selection.edges){for(i=0;i<selection.edges.length;i++){id=selection.edges[i];var edge=this.body.edges[id];if(!edge){throw new RangeError('Edge with id \"'+id+'\" not found')}this.selectObject(edge)}}this.body.emitter.emit(\"_requestRedraw\")}},{key:\"selectNodes\",value:function selectNodes(selection){var highlightEdges=arguments.length>1&&arguments[1]!==undefined?arguments[1]:true;if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({nodes:selection},{highlightEdges:highlightEdges})}},{key:\"selectEdges\",value:function selectEdges(selection){if(!selection||selection.length===undefined)throw\"Selection must be an array with ids\";this.setSelection({edges:selection})}},{key:\"updateSelection\",value:function updateSelection(){for(var nodeId in this.selectionObj.nodes){if(this.selectionObj.nodes.hasOwnProperty(nodeId)){if(!this.body.nodes.hasOwnProperty(nodeId)){delete this.selectionObj.nodes[nodeId]}}}for(var edgeId in this.selectionObj.edges){if(this.selectionObj.edges.hasOwnProperty(edgeId)){if(!this.body.edges.hasOwnProperty(edgeId)){delete this.selectionObj.edges[edgeId]}}}}},{key:\"getClickedItems\",value:function getClickedItems(pointer){var point=this.canvas.DOMtoCanvas(pointer);var items=[];var nodeIndices=this.body.nodeIndices;var nodes=this.body.nodes;for(var i=nodeIndices.length-1;i>=0;i--){var node=nodes[nodeIndices[i]];var ret=node.getItemsOnPoint(point);items.push.apply(items,ret)}var edgeIndices=this.body.edgeIndices;var edges=this.body.edges;for(var _i=edgeIndices.length-1;_i>=0;_i--){var edge=edges[edgeIndices[_i]];var _ret=edge.getItemsOnPoint(point);items.push.apply(items,_ret)}return items}}]);return SelectionHandler}();exports[\"default\"]=SelectionHandler},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var NetworkUtil=__webpack_require__(76)[\"default\"];var _require=__webpack_require__(236),HorizontalStrategy=_require.HorizontalStrategy,VerticalStrategy=_require.VerticalStrategy;var HierarchicalStatus=function(){function HierarchicalStatus(){(0,_classCallCheck3[\"default\"])(this,HierarchicalStatus);this.childrenReference={};this.parentReference={};this.trees={};this.distributionOrdering={};this.levels={};this.distributionIndex={};this.isTree=false;this.treeIndex=-1}(0,_createClass3[\"default\"])(HierarchicalStatus,[{key:\"addRelation\",value:function addRelation(parentNodeId,childNodeId){if(this.childrenReference[parentNodeId]===undefined){this.childrenReference[parentNodeId]=[]}this.childrenReference[parentNodeId].push(childNodeId);if(this.parentReference[childNodeId]===undefined){this.parentReference[childNodeId]=[]}this.parentReference[childNodeId].push(parentNodeId)}},{key:\"checkIfTree\",value:function checkIfTree(){for(var i in this.parentReference){if(this.parentReference[i].length>1){this.isTree=false;return}}this.isTree=true}},{key:\"numTrees\",value:function numTrees(){return this.treeIndex+1}},{key:\"setTreeIndex\",value:function setTreeIndex(node,treeId){if(treeId===undefined)return;if(this.trees[node.id]===undefined){this.trees[node.id]=treeId;this.treeIndex=Math.max(treeId,this.treeIndex)}}},{key:\"ensureLevel\",value:function ensureLevel(nodeId){if(this.levels[nodeId]===undefined){this.levels[nodeId]=0}}},{key:\"getMaxLevel\",value:function getMaxLevel(nodeId){var _this=this;var accumulator={};var _getMaxLevel=function _getMaxLevel(nodeId){if(accumulator[nodeId]!==undefined){return accumulator[nodeId]}var level=_this.levels[nodeId];if(_this.childrenReference[nodeId]){var children=_this.childrenReference[nodeId];if(children.length>0){for(var i=0;i<children.length;i++){level=Math.max(level,_getMaxLevel(children[i]))}}}accumulator[nodeId]=level;return level};return _getMaxLevel(nodeId)}},{key:\"levelDownstream\",value:function levelDownstream(nodeA,nodeB){if(this.levels[nodeB.id]===undefined){if(this.levels[nodeA.id]===undefined){this.levels[nodeA.id]=0}this.levels[nodeB.id]=this.levels[nodeA.id]+1}}},{key:\"setMinLevelToZero\",value:function setMinLevelToZero(nodes){var minLevel=1e9;for(var nodeId in nodes){if(nodes.hasOwnProperty(nodeId)){if(this.levels[nodeId]!==undefined){minLevel=Math.min(this.levels[nodeId],minLevel)}}}for(var _nodeId in nodes){if(nodes.hasOwnProperty(_nodeId)){if(this.levels[_nodeId]!==undefined){this.levels[_nodeId]-=minLevel}}}}},{key:\"getTreeSize\",value:function getTreeSize(nodes,index){var min_x=1e9;var max_x=-1e9;var min_y=1e9;var max_y=-1e9;for(var nodeId in this.trees){if(this.trees.hasOwnProperty(nodeId)){if(this.trees[nodeId]===index){var node=nodes[nodeId];min_x=Math.min(node.x,min_x);max_x=Math.max(node.x,max_x);min_y=Math.min(node.y,min_y);max_y=Math.max(node.y,max_y)}}}return{min_x:min_x,max_x:max_x,min_y:min_y,max_y:max_y}}},{key:\"hasSameParent\",value:function hasSameParent(node1,node2){var parents1=this.parentReference[node1.id];var parents2=this.parentReference[node2.id];if(parents1===undefined||parents2===undefined){return false}for(var i=0;i<parents1.length;i++){for(var j=0;j<parents2.length;j++){if(parents1[i]==parents2[j]){return true}}}return false}},{key:\"inSameSubNetwork\",value:function inSameSubNetwork(node1,node2){return this.trees[node1.id]===this.trees[node2.id]}},{key:\"getLevels\",value:function getLevels(){return(0,_keys2[\"default\"])(this.distributionOrdering)}},{key:\"addToOrdering\",value:function addToOrdering(node,level){if(this.distributionOrdering[level]===undefined){this.distributionOrdering[level]=[]}var isPresent=false;var curLevel=this.distributionOrdering[level];for(var n in curLevel){if(curLevel[n]===node){isPresent=true;break}}if(!isPresent){this.distributionOrdering[level].push(node);this.distributionIndex[node.id]=this.distributionOrdering[level].length-1}}}]);return HierarchicalStatus}();var LayoutEngine=function(){function LayoutEngine(body){(0,_classCallCheck3[\"default\"])(this,LayoutEngine);this.body=body;this.initialRandomSeed=Math.round(Math.random()*1e6);this.randomSeed=this.initialRandomSeed;this.setPhysics=false;this.options={};this.optionsBackup={physics:{}};this.defaultOptions={randomSeed:undefined,improvedLayout:true,hierarchical:{enabled:false,levelSeparation:150,nodeSpacing:100,treeSpacing:200,blockShifting:true,edgeMinimization:true,parentCentralization:true,direction:\"UD\",sortMethod:\"hubsize\"}};util.extend(this.options,this.defaultOptions);this.bindEventListeners()}(0,_createClass3[\"default\"])(LayoutEngine,[{key:\"bindEventListeners\",value:function bindEventListeners(){var _this2=this;this.body.emitter.on(\"_dataChanged\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_dataLoaded\",function(){_this2.layoutNetwork()});this.body.emitter.on(\"_resetHierarchicalLayout\",function(){_this2.setupHierarchicalLayout()});this.body.emitter.on(\"_adjustEdgesForHierarchicalLayout\",function(){if(_this2.options.hierarchical.enabled!==true){return}var type=_this2.direction.curveType();_this2.body.emitter.emit(\"_forceDisableDynamicCurves\",type,false)})}},{key:\"setOptions\",value:function setOptions(options,allOptions){if(options!==undefined){var hierarchical=this.options.hierarchical;var prevHierarchicalState=hierarchical.enabled;util.selectiveDeepExtend([\"randomSeed\",\"improvedLayout\"],this.options,options);util.mergeOptions(this.options,options,\"hierarchical\");if(options.randomSeed!==undefined){this.initialRandomSeed=options.randomSeed}if(hierarchical.enabled===true){if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\",true)}if(hierarchical.direction===\"RL\"||hierarchical.direction===\"DU\"){if(hierarchical.levelSeparation>0){hierarchical.levelSeparation*=-1}}else{if(hierarchical.levelSeparation<0){hierarchical.levelSeparation*=-1}}this.setDirectionStrategy();this.body.emitter.emit(\"_resetHierarchicalLayout\");return this.adaptAllOptionsForHierarchicalLayout(allOptions)}else{if(prevHierarchicalState===true){this.body.emitter.emit(\"refresh\");return util.deepExtend(allOptions,this.optionsBackup)}}}return allOptions}},{key:\"adaptAllOptionsForHierarchicalLayout\",value:function adaptAllOptionsForHierarchicalLayout(allOptions){if(this.options.hierarchical.enabled===true){var backupPhysics=this.optionsBackup.physics;if(allOptions.physics===undefined||allOptions.physics===true){allOptions.physics={enabled:backupPhysics.enabled===undefined?true:backupPhysics.enabled,solver:\"hierarchicalRepulsion\"};backupPhysics.enabled=backupPhysics.enabled===undefined?true:backupPhysics.enabled;backupPhysics.solver=backupPhysics.solver||\"barnesHut\"}else if((0,_typeof3[\"default\"])(allOptions.physics)===\"object\"){backupPhysics.enabled=allOptions.physics.enabled===undefined?true:allOptions.physics.enabled;backupPhysics.solver=allOptions.physics.solver||\"barnesHut\";allOptions.physics.solver=\"hierarchicalRepulsion\"}else if(allOptions.physics!==false){backupPhysics.solver=\"barnesHut\";allOptions.physics={solver:\"hierarchicalRepulsion\"}}var type=this.direction.curveType();if(allOptions.edges===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges={smooth:false}}else if(allOptions.edges.smooth===undefined){this.optionsBackup.edges={smooth:{enabled:true,type:\"dynamic\"}};allOptions.edges.smooth=false}else{if(typeof allOptions.edges.smooth===\"boolean\"){this.optionsBackup.edges={smooth:allOptions.edges.smooth};allOptions.edges.smooth={enabled:allOptions.edges.smooth,type:type}}else{var smooth=allOptions.edges.smooth;if(smooth.type!==undefined&&smooth.type!==\"dynamic\"){type=smooth.type}this.optionsBackup.edges={smooth:smooth.enabled===undefined?true:smooth.enabled,type:smooth.type===undefined?\"dynamic\":smooth.type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection};allOptions.edges.smooth={enabled:smooth.enabled===undefined?true:smooth.enabled,type:type,roundness:smooth.roundness===undefined?.5:smooth.roundness,forceDirection:smooth.forceDirection===undefined?false:smooth.forceDirection}}}this.body.emitter.emit(\"_forceDisableDynamicCurves\",type)}return allOptions}},{key:\"seededRandom\",value:function seededRandom(){var x=Math.sin(this.randomSeed++)*1e4;return x-Math.floor(x)}},{key:\"positionInitially\",value:function positionInitially(nodesArray){if(this.options.hierarchical.enabled!==true){this.randomSeed=this.initialRandomSeed;var radius=nodesArray.length+50;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var angle=2*Math.PI*this.seededRandom();if(node.x===undefined){node.x=radius*Math.cos(angle)}if(node.y===undefined){node.y=radius*Math.sin(angle)}}}}},{key:\"layoutNetwork\",value:function layoutNetwork(){if(this.options.hierarchical.enabled!==true&&this.options.improvedLayout===true){var indices=this.body.nodeIndices;var positionDefined=0;for(var i=0;i<indices.length;i++){var node=this.body.nodes[indices[i]];if(node.predefinedPosition===true){positionDefined+=1}}if(positionDefined<.5*indices.length){var MAX_LEVELS=10;var level=0;var clusterThreshold=150;var clusterOptions={clusterNodeProperties:{shape:\"ellipse\",label:\"\",group:\"\",font:{multi:false}},clusterEdgeProperties:{label:\"\",font:{multi:false},smooth:{enabled:false}}};if(indices.length>clusterThreshold){var startLength=indices.length;while(indices.length>clusterThreshold&&level<=MAX_LEVELS){level+=1;var before=indices.length;if(level%3===0){this.body.modules.clustering.clusterBridges(clusterOptions)}else{this.body.modules.clustering.clusterOutliers(clusterOptions)}var after=indices.length;if(before==after&&level%3!==0){this._declusterAll();this.body.emitter.emit(\"_layoutFailed\");console.info(\"This network could not be positioned by this version of the improved layout algorithm.\"+\" Please disable improvedLayout for better performance.\");return}}this.body.modules.kamadaKawai.setOptions({springLength:Math.max(150,2*startLength)})}if(level>MAX_LEVELS){console.info(\"The clustering didn't succeed within the amount of interations allowed,\"+\" progressing with partial result.\")}this.body.modules.kamadaKawai.solve(indices,this.body.edgeIndices,true);this._shiftToCenter();var offset=70;for(var _i=0;_i<indices.length;_i++){var _node=this.body.nodes[indices[_i]];if(_node.predefinedPosition===false){_node.x+=(.5-this.seededRandom())*offset;_node.y+=(.5-this.seededRandom())*offset}}this._declusterAll();this.body.emitter.emit(\"_repositionBezierNodes\")}}}},{key:\"_shiftToCenter\",value:function _shiftToCenter(){var range=NetworkUtil.getRangeCore(this.body.nodes,this.body.nodeIndices);var center=NetworkUtil.findCenter(range);for(var i=0;i<this.body.nodeIndices.length;i++){var node=this.body.nodes[this.body.nodeIndices[i]];node.x-=center.x;node.y-=center.y}}},{key:\"_declusterAll\",value:function _declusterAll(){var clustersPresent=true;while(clustersPresent===true){clustersPresent=false;for(var i=0;i<this.body.nodeIndices.length;i++){if(this.body.nodes[this.body.nodeIndices[i]].isCluster===true){clustersPresent=true;this.body.modules.clustering.openCluster(this.body.nodeIndices[i],{},false)}}if(clustersPresent===true){this.body.emitter.emit(\"_dataChanged\")}}}},{key:\"getSeed\",value:function getSeed(){return this.initialRandomSeed}},{key:\"setupHierarchicalLayout\",value:function setupHierarchicalLayout(){if(this.options.hierarchical.enabled===true&&this.body.nodeIndices.length>0){var node=void 0,nodeId=void 0;var definedLevel=false;var undefinedLevel=false;this.lastNodeOnLevel={};this.hierarchical=new HierarchicalStatus;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];if(node.options.level!==undefined){definedLevel=true;this.hierarchical.levels[nodeId]=node.options.level}else{undefinedLevel=true}}}if(undefinedLevel===true&&definedLevel===true){throw new Error(\"To use the hierarchical layout, nodes require either no predefined levels\"+\" or levels have to be defined for all nodes.\")}else{if(undefinedLevel===true){var sortMethod=this.options.hierarchical.sortMethod;if(sortMethod===\"hubsize\"){this._determineLevelsByHubsize()}else if(sortMethod===\"directed\"){this._determineLevelsDirected()}else if(sortMethod===\"custom\"){this._determineLevelsCustomCallback()}}for(var _nodeId2 in this.body.nodes){if(this.body.nodes.hasOwnProperty(_nodeId2)){this.hierarchical.ensureLevel(_nodeId2)}}var distribution=this._getDistribution();this._generateMap();this._placeNodesByHierarchy(distribution);this._condenseHierarchy();this._shiftToCenter()}}}},{key:\"_condenseHierarchy\",value:function _condenseHierarchy(){var _this3=this;var stillShifting=false;var branches={};var shiftTrees=function shiftTrees(){var treeSizes=getTreeSizes();var shiftBy=0;for(var i=0;i<treeSizes.length-1;i++){var diff=treeSizes[i].max-treeSizes[i+1].min;shiftBy+=diff+_this3.options.hierarchical.treeSpacing;shiftTree(i+1,shiftBy)}};var shiftTree=function shiftTree(index,offset){var trees=_this3.hierarchical.trees;for(var nodeId in trees){if(trees.hasOwnProperty(nodeId)){if(trees[nodeId]===index){_this3.direction.shift(nodeId,offset)}}}};var getTreeSizes=function getTreeSizes(){var treeWidths=[];for(var i=0;i<_this3.hierarchical.numTrees();i++){treeWidths.push(_this3.direction.getTreeSize(i))}return treeWidths};var getBranchNodes=function getBranchNodes(source,map){if(map[source.id]){return}map[source.id]=true;if(_this3.hierarchical.childrenReference[source.id]){var children=_this3.hierarchical.childrenReference[source.id];if(children.length>0){for(var i=0;i<children.length;i++){getBranchNodes(_this3.body.nodes[children[i]],map)}}}};var getBranchBoundary=function getBranchBoundary(branchMap){var maxLevel=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1e9;var minSpace=1e9;var maxSpace=1e9;var min=1e9;var max=-1e9;for(var branchNode in branchMap){if(branchMap.hasOwnProperty(branchNode)){var node=_this3.body.nodes[branchNode];var level=_this3.hierarchical.levels[node.id];var position=_this3.direction.getPosition(node);var _getSpaceAroundNode2=_this3._getSpaceAroundNode(node,branchMap),_getSpaceAroundNode3=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode2,2),minSpaceNode=_getSpaceAroundNode3[0],maxSpaceNode=_getSpaceAroundNode3[1];minSpace=Math.min(minSpaceNode,minSpace);maxSpace=Math.min(maxSpaceNode,maxSpace);if(level<=maxLevel){min=Math.min(position,min);max=Math.max(position,max)}}}return[min,max,minSpace,maxSpace]};var getCollisionLevel=function getCollisionLevel(node1,node2){var maxLevel1=_this3.hierarchical.getMaxLevel(node1.id);var maxLevel2=_this3.hierarchical.getMaxLevel(node2.id);return Math.min(maxLevel1,maxLevel2)};var shiftElementsCloser=function shiftElementsCloser(callback,levels,centerParents){var hier=_this3.hierarchical;for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=hier.distributionOrdering[level];if(levelNodes.length>1){for(var j=0;j<levelNodes.length-1;j++){var node1=levelNodes[j];var node2=levelNodes[j+1];if(hier.hasSameParent(node1,node2)&&hier.inSameSubNetwork(node1,node2)){callback(node1,node2,centerParents)}}}}};var branchShiftCallback=function branchShiftCallback(node1,node2){var centerParent=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var pos1=_this3.direction.getPosition(node1);var pos2=_this3.direction.getPosition(node2);var diffAbs=Math.abs(pos2-pos1);var nodeSpacing=_this3.options.hierarchical.nodeSpacing;if(diffAbs>nodeSpacing){var branchNodes1={};var branchNodes2={};getBranchNodes(node1,branchNodes1);getBranchNodes(node2,branchNodes2);var maxLevel=getCollisionLevel(node1,node2);var branchNodeBoundary1=getBranchBoundary(branchNodes1,maxLevel);var branchNodeBoundary2=getBranchBoundary(branchNodes2,maxLevel);var max1=branchNodeBoundary1[1];var min2=branchNodeBoundary2[0];var minSpace2=branchNodeBoundary2[2];var diffBranch=Math.abs(max1-min2);if(diffBranch>nodeSpacing){var offset=max1-min2+nodeSpacing;if(offset<-minSpace2+nodeSpacing){offset=-minSpace2+nodeSpacing}if(offset<0){_this3._shiftBlock(node2.id,offset);stillShifting=true;if(centerParent===true)_this3._centerParent(node2)}}}};var minimizeEdgeLength=function minimizeEdgeLength(iterations,node){var nodeId=node.id;var allEdges=node.edges;var nodeLevel=_this3.hierarchical.levels[node.id];var C2=_this3.options.hierarchical.levelSeparation*_this3.options.hierarchical.levelSeparation;var referenceNodes={};var aboveEdges=[];for(var i=0;i<allEdges.length;i++){var edge=allEdges[i];if(edge.toId!=edge.fromId){var otherNode=edge.toId==nodeId?edge.from:edge.to;referenceNodes[allEdges[i].id]=otherNode;if(_this3.hierarchical.levels[otherNode.id]<nodeLevel){aboveEdges.push(edge)}}}var getFx=function getFx(point,edges){var sum=0;for(var _i2=0;_i2<edges.length;_i2++){if(referenceNodes[edges[_i2].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i2].id])-point;sum+=a/Math.sqrt(a*a+C2)}}return sum};var getDFx=function getDFx(point,edges){var sum=0;for(var _i3=0;_i3<edges.length;_i3++){if(referenceNodes[edges[_i3].id]!==undefined){var a=_this3.direction.getPosition(referenceNodes[edges[_i3].id])-point;sum-=C2*Math.pow(a*a+C2,-1.5)}}return sum};var getGuess=function getGuess(iterations,edges){var guess=_this3.direction.getPosition(node);var guessMap={};for(var _i4=0;_i4<iterations;_i4++){var fx=getFx(guess,edges);var dfx=getDFx(guess,edges);var limit=40;var ratio=Math.max(-limit,Math.min(limit,Math.round(fx/dfx)));guess=guess-ratio;if(guessMap[guess]!==undefined){break}guessMap[guess]=_i4}return guess};var moveBranch=function moveBranch(guess){var nodePosition=_this3.direction.getPosition(node);if(branches[node.id]===undefined){var branchNodes={};getBranchNodes(node,branchNodes);branches[node.id]=branchNodes}var branchBoundary=getBranchBoundary(branches[node.id]);var minSpaceBranch=branchBoundary[2];var maxSpaceBranch=branchBoundary[3];var diff=guess-nodePosition;var branchOffset=0;if(diff>0){branchOffset=Math.min(diff,maxSpaceBranch-_this3.options.hierarchical.nodeSpacing)}else if(diff<0){branchOffset=-Math.min(-diff,minSpaceBranch-_this3.options.hierarchical.nodeSpacing)}if(branchOffset!=0){_this3._shiftBlock(node.id,branchOffset);stillShifting=true}};var moveNode=function moveNode(guess){var nodePosition=_this3.direction.getPosition(node);var _getSpaceAroundNode4=_this3._getSpaceAroundNode(node),_getSpaceAroundNode5=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode4,2),minSpace=_getSpaceAroundNode5[0],maxSpace=_getSpaceAroundNode5[1];var diff=guess-nodePosition;var newPosition=nodePosition;if(diff>0){newPosition=Math.min(nodePosition+(maxSpace-_this3.options.hierarchical.nodeSpacing),guess)}else if(diff<0){newPosition=Math.max(nodePosition-(minSpace-_this3.options.hierarchical.nodeSpacing),guess)}if(newPosition!==nodePosition){_this3.direction.setPosition(node,newPosition);stillShifting=true}};var guess=getGuess(iterations,aboveEdges);moveBranch(guess);guess=getGuess(iterations,allEdges);moveNode(guess)};var minimizeEdgeLengthBottomUp=function minimizeEdgeLengthBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;for(var j=0;j<levels.length;j++){var level=levels[j];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var k=0;k<levelNodes.length;k++){minimizeEdgeLength(1e3,levelNodes[k])}}if(stillShifting!==true){break}}};var shiftBranchesCloserBottomUp=function shiftBranchesCloserBottomUp(iterations){var levels=_this3.hierarchical.getLevels();levels=levels.reverse();for(var i=0;i<iterations;i++){stillShifting=false;shiftElementsCloser(branchShiftCallback,levels,true);if(stillShifting!==true){break}}};var centerAllParents=function centerAllParents(){for(var nodeId in _this3.body.nodes){if(_this3.body.nodes.hasOwnProperty(nodeId))_this3._centerParent(_this3.body.nodes[nodeId])}};var centerAllParentsBottomUp=function centerAllParentsBottomUp(){var levels=_this3.hierarchical.getLevels()\n;levels=levels.reverse();for(var i=0;i<levels.length;i++){var level=levels[i];var levelNodes=_this3.hierarchical.distributionOrdering[level];for(var j=0;j<levelNodes.length;j++){_this3._centerParent(levelNodes[j])}}};if(this.options.hierarchical.blockShifting===true){shiftBranchesCloserBottomUp(5);centerAllParents()}if(this.options.hierarchical.edgeMinimization===true){minimizeEdgeLengthBottomUp(20)}if(this.options.hierarchical.parentCentralization===true){centerAllParentsBottomUp()}shiftTrees()}},{key:\"_getSpaceAroundNode\",value:function _getSpaceAroundNode(node,map){var useMap=true;if(map===undefined){useMap=false}var level=this.hierarchical.levels[node.id];if(level!==undefined){var index=this.hierarchical.distributionIndex[node.id];var position=this.direction.getPosition(node);var ordering=this.hierarchical.distributionOrdering[level];var minSpace=1e9;var maxSpace=1e9;if(index!==0){var prevNode=ordering[index-1];if(useMap===true&&map[prevNode.id]===undefined||useMap===false){var prevPos=this.direction.getPosition(prevNode);minSpace=position-prevPos}}if(index!=ordering.length-1){var nextNode=ordering[index+1];if(useMap===true&&map[nextNode.id]===undefined||useMap===false){var nextPos=this.direction.getPosition(nextNode);maxSpace=Math.min(maxSpace,nextPos-position)}}return[minSpace,maxSpace]}else{return[0,0]}}},{key:\"_centerParent\",value:function _centerParent(node){if(this.hierarchical.parentReference[node.id]){var parents=this.hierarchical.parentReference[node.id];for(var i=0;i<parents.length;i++){var parentId=parents[i];var parentNode=this.body.nodes[parentId];var children=this.hierarchical.childrenReference[parentId];if(children!==undefined){var newPosition=this._getCenterPosition(children);var position=this.direction.getPosition(parentNode);var _getSpaceAroundNode6=this._getSpaceAroundNode(parentNode),_getSpaceAroundNode7=(0,_slicedToArray3[\"default\"])(_getSpaceAroundNode6,2),minSpace=_getSpaceAroundNode7[0],maxSpace=_getSpaceAroundNode7[1];var diff=position-newPosition;if(diff<0&&Math.abs(diff)<maxSpace-this.options.hierarchical.nodeSpacing||diff>0&&Math.abs(diff)<minSpace-this.options.hierarchical.nodeSpacing){this.direction.setPosition(parentNode,newPosition)}}}}}},{key:\"_placeNodesByHierarchy\",value:function _placeNodesByHierarchy(distribution){this.positionedNodes={};for(var level in distribution){if(distribution.hasOwnProperty(level)){var nodeArray=(0,_keys2[\"default\"])(distribution[level]);nodeArray=this._indexArrayToNodes(nodeArray);this.direction.sort(nodeArray);var handledNodeCount=0;for(var i=0;i<nodeArray.length;i++){var node=nodeArray[i];if(this.positionedNodes[node.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=spacing*handledNodeCount;if(handledNodeCount>0){pos=this.direction.getPosition(nodeArray[i-1])+spacing}this.direction.setPosition(node,pos,level);this._validatePositionAndContinue(node,level,pos);handledNodeCount++}}}}}},{key:\"_placeBranchNodes\",value:function _placeBranchNodes(parentId,parentLevel){var childRef=this.hierarchical.childrenReference[parentId];if(childRef===undefined){return}var childNodes=[];for(var i=0;i<childRef.length;i++){childNodes.push(this.body.nodes[childRef[i]])}this.direction.sort(childNodes);for(var _i5=0;_i5<childNodes.length;_i5++){var childNode=childNodes[_i5];var childNodeLevel=this.hierarchical.levels[childNode.id];if(childNodeLevel>parentLevel&&this.positionedNodes[childNode.id]===undefined){var spacing=this.options.hierarchical.nodeSpacing;var pos=void 0;if(_i5===0){pos=this.direction.getPosition(this.body.nodes[parentId])}else{pos=this.direction.getPosition(childNodes[_i5-1])+spacing}this.direction.setPosition(childNode,pos,childNodeLevel);this._validatePositionAndContinue(childNode,childNodeLevel,pos)}else{return}}var center=this._getCenterPosition(childNodes);this.direction.setPosition(this.body.nodes[parentId],center,parentLevel)}},{key:\"_validatePositionAndContinue\",value:function _validatePositionAndContinue(node,level,pos){if(!this.hierarchical.isTree)return;if(this.lastNodeOnLevel[level]!==undefined){var previousPos=this.direction.getPosition(this.body.nodes[this.lastNodeOnLevel[level]]);if(pos-previousPos<this.options.hierarchical.nodeSpacing){var diff=previousPos+this.options.hierarchical.nodeSpacing-pos;var sharedParent=this._findCommonParent(this.lastNodeOnLevel[level],node.id);this._shiftBlock(sharedParent.withChild,diff)}}this.lastNodeOnLevel[level]=node.id;this.positionedNodes[node.id]=true;this._placeBranchNodes(node.id,level)}},{key:\"_indexArrayToNodes\",value:function _indexArrayToNodes(idArray){var array=[];for(var i=0;i<idArray.length;i++){array.push(this.body.nodes[idArray[i]])}return array}},{key:\"_getDistribution\",value:function _getDistribution(){var distribution={};var nodeId=void 0,node=void 0;for(nodeId in this.body.nodes){if(this.body.nodes.hasOwnProperty(nodeId)){node=this.body.nodes[nodeId];var level=this.hierarchical.levels[nodeId]===undefined?0:this.hierarchical.levels[nodeId];this.direction.fix(node,level);if(distribution[level]===undefined){distribution[level]={}}distribution[level][nodeId]=node}}return distribution}},{key:\"_getActiveEdges\",value:function _getActiveEdges(node){var _this4=this;var result=[];util.forEach(node.edges,function(edge){if(_this4.body.edgeIndices.indexOf(edge.id)!==-1){result.push(edge)}});return result}},{key:\"_getHubSizes\",value:function _getHubSizes(){var _this5=this;var hubSizes={};var nodeIds=this.body.nodeIndices;util.forEach(nodeIds,function(nodeId){var node=_this5.body.nodes[nodeId];var hubSize=_this5._getActiveEdges(node).length;hubSizes[hubSize]=true});var result=[];util.forEach(hubSizes,function(size){result.push(Number(size))});result.sort(function(a,b){return b-a});return result}},{key:\"_determineLevelsByHubsize\",value:function _determineLevelsByHubsize(){var _this6=this;var levelDownstream=function levelDownstream(nodeA,nodeB){_this6.hierarchical.levelDownstream(nodeA,nodeB)};var hubSizes=this._getHubSizes();var _loop=function _loop(i){var hubSize=hubSizes[i];if(hubSize===0)return\"break\";util.forEach(_this6.body.nodeIndices,function(nodeId){var node=_this6.body.nodes[nodeId];if(hubSize===_this6._getActiveEdges(node).length){_this6._crawlNetwork(levelDownstream,nodeId)}})};for(var i=0;i<hubSizes.length;++i){var _ret=_loop(i);if(_ret===\"break\")break}}},{key:\"_determineLevelsCustomCallback\",value:function _determineLevelsCustomCallback(){var _this7=this;var minLevel=1e5;var customCallback=function customCallback(nodeA,nodeB,edge){};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this7.hierarchical.levels[nodeA.id];if(levelA===undefined){levelA=_this7.hierarchical.levels[nodeA.id]=minLevel}var diff=customCallback(NetworkUtil.cloneOptions(nodeA,\"node\"),NetworkUtil.cloneOptions(nodeB,\"node\"),NetworkUtil.cloneOptions(edge,\"edge\"));_this7.hierarchical.levels[nodeB.id]=levelA+diff};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_determineLevelsDirected\",value:function _determineLevelsDirected(){var _this8=this;var minLevel=1e4;var isBidirectional=function isBidirectional(edge){util.forEach(_this8.body.edges,function(otherEdge){if(otherEdge.toId===edge.fromId&&otherEdge.fromId===edge.toId){return true}});return false};var levelByDirection=function levelByDirection(nodeA,nodeB,edge){var levelA=_this8.hierarchical.levels[nodeA.id];var levelB=_this8.hierarchical.levels[nodeB.id];if(isBidirectional(edge)&&levelA!==undefined&&levelB!==undefined){return}if(levelA===undefined){levelA=_this8.hierarchical.levels[nodeA.id]=minLevel}if(edge.toId==nodeB.id){_this8.hierarchical.levels[nodeB.id]=levelA+1}else{_this8.hierarchical.levels[nodeB.id]=levelA-1}};this._crawlNetwork(levelByDirection);this.hierarchical.setMinLevelToZero(this.body.nodes)}},{key:\"_generateMap\",value:function _generateMap(){var _this9=this;var fillInRelations=function fillInRelations(parentNode,childNode){if(_this9.hierarchical.levels[childNode.id]>_this9.hierarchical.levels[parentNode.id]){_this9.hierarchical.addRelation(parentNode.id,childNode.id)}};this._crawlNetwork(fillInRelations);this.hierarchical.checkIfTree()}},{key:\"_crawlNetwork\",value:function _crawlNetwork(){var _this10=this;var callback=arguments.length>0&&arguments[0]!==undefined?arguments[0]:function(){};var startingNodeId=arguments[1];var progress={};var crawler=function crawler(node,tree){if(progress[node.id]===undefined){_this10.hierarchical.setTreeIndex(node,tree);progress[node.id]=true;var childNode=void 0;var edges=_this10._getActiveEdges(node);for(var i=0;i<edges.length;i++){var edge=edges[i];if(edge.connected===true){if(edge.toId==node.id){childNode=edge.from}else{childNode=edge.to}if(node.id!=childNode.id){callback(node,childNode,edge);crawler(childNode,tree)}}}}};if(startingNodeId===undefined){var treeIndex=0;for(var i=0;i<this.body.nodeIndices.length;i++){var nodeId=this.body.nodeIndices[i];if(progress[nodeId]===undefined){var node=this.body.nodes[nodeId];crawler(node,treeIndex);treeIndex+=1}}}else{var _node2=this.body.nodes[startingNodeId];if(_node2===undefined){console.error(\"Node not found:\",startingNodeId);return}crawler(_node2)}}},{key:\"_shiftBlock\",value:function _shiftBlock(parentId,diff){var _this11=this;var progress={};var shifter=function shifter(parentId){if(progress[parentId]){return}progress[parentId]=true;_this11.direction.shift(parentId,diff);var childRef=_this11.hierarchical.childrenReference[parentId];if(childRef!==undefined){for(var i=0;i<childRef.length;i++){shifter(childRef[i])}}};shifter(parentId)}},{key:\"_findCommonParent\",value:function _findCommonParent(childA,childB){var _this12=this;var parents={};var iterateParents=function iterateParents(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];parents[parent]=true;iterateParents(parents,parent)}}};var findParent=function findParent(parents,child){var parentRef=_this12.hierarchical.parentReference[child];if(parentRef!==undefined){for(var i=0;i<parentRef.length;i++){var parent=parentRef[i];if(parents[parent]!==undefined){return{foundParent:parent,withChild:child}}var branch=findParent(parents,parent);if(branch.foundParent!==null){return branch}}}return{foundParent:null,withChild:child}};iterateParents(parents,childA);return findParent(parents,childB)}},{key:\"setDirectionStrategy\",value:function setDirectionStrategy(){var isVertical=this.options.hierarchical.direction===\"UD\"||this.options.hierarchical.direction===\"DU\";if(isVertical){this.direction=new VerticalStrategy(this)}else{this.direction=new HorizontalStrategy(this)}}},{key:\"_getCenterPosition\",value:function _getCenterPosition(childNodes){var minPos=1e9;var maxPos=-1e9;for(var i=0;i<childNodes.length;i++){var childNode=void 0;if(childNodes[i].id!==undefined){childNode=childNodes[i]}else{var childNodeId=childNodes[i];childNode=this.body.nodes[childNodeId]}var position=this.direction.getPosition(childNode);minPos=Math.min(minPos,position);maxPos=Math.max(maxPos,position)}return.5*(minPos+maxPos)}}]);return LayoutEngine}();exports[\"default\"]=LayoutEngine},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});exports.VerticalStrategy=exports.HorizontalStrategy=undefined;var _getPrototypeOf=__webpack_require__(3);var _getPrototypeOf2=_interopRequireDefault(_getPrototypeOf);var _possibleConstructorReturn2=__webpack_require__(4);var _possibleConstructorReturn3=_interopRequireDefault(_possibleConstructorReturn2);var _inherits2=__webpack_require__(5);var _inherits3=_interopRequireDefault(_inherits2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var DirectionInterface=function(){function DirectionInterface(){(0,_classCallCheck3[\"default\"])(this,DirectionInterface)}(0,_createClass3[\"default\"])(DirectionInterface,[{key:\"abstract\",value:function abstract(){throw new Error(\"Can't instantiate abstract class!\")}},{key:\"fake_use\",value:function fake_use(){}},{key:\"curveType\",value:function curveType(){return this.abstract()}},{key:\"getPosition\",value:function getPosition(node){this.fake_use(node);return this.abstract()}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;this.fake_use(node,position,level);this.abstract()}},{key:\"getTreeSize\",value:function getTreeSize(index){this.fake_use(index);return this.abstract()}},{key:\"sort\",value:function sort(nodeArray){this.fake_use(nodeArray);this.abstract()}},{key:\"fix\",value:function fix(node,level){this.fake_use(node,level);this.abstract()}},{key:\"shift\",value:function shift(nodeId,diff){this.fake_use(nodeId,diff);this.abstract()}}]);return DirectionInterface}();var VerticalStrategy=function(_DirectionInterface){(0,_inherits3[\"default\"])(VerticalStrategy,_DirectionInterface);function VerticalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,VerticalStrategy);var _this=(0,_possibleConstructorReturn3[\"default\"])(this,(VerticalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(VerticalStrategy)).call(this));_this.layout=layout;return _this}(0,_createClass3[\"default\"])(VerticalStrategy,[{key:\"curveType\",value:function curveType(){return\"horizontal\"}},{key:\"getPosition\",value:function getPosition(node){return node.x}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.x=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_x,max:res.max_x}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.x===undefined||b.x===undefined)return 0;return a.x-b.x})}},{key:\"fix\",value:function fix(node,level){node.y=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.y=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].x+=diff}}]);return VerticalStrategy}(DirectionInterface);var HorizontalStrategy=function(_DirectionInterface2){(0,_inherits3[\"default\"])(HorizontalStrategy,_DirectionInterface2);function HorizontalStrategy(layout){(0,_classCallCheck3[\"default\"])(this,HorizontalStrategy);var _this2=(0,_possibleConstructorReturn3[\"default\"])(this,(HorizontalStrategy.__proto__||(0,_getPrototypeOf2[\"default\"])(HorizontalStrategy)).call(this));_this2.layout=layout;return _this2}(0,_createClass3[\"default\"])(HorizontalStrategy,[{key:\"curveType\",value:function curveType(){return\"vertical\"}},{key:\"getPosition\",value:function getPosition(node){return node.y}},{key:\"setPosition\",value:function setPosition(node,position){var level=arguments.length>2&&arguments[2]!==undefined?arguments[2]:undefined;if(level!==undefined){this.layout.hierarchical.addToOrdering(node,level)}node.y=position}},{key:\"getTreeSize\",value:function getTreeSize(index){var res=this.layout.hierarchical.getTreeSize(this.layout.body.nodes,index);return{min:res.min_y,max:res.max_y}}},{key:\"sort\",value:function sort(nodeArray){nodeArray.sort(function(a,b){if(a.y===undefined||b.y===undefined)return 0;return a.y-b.y})}},{key:\"fix\",value:function fix(node,level){node.x=this.layout.options.hierarchical.levelSeparation*level;node.options.fixed.x=true}},{key:\"shift\",value:function shift(nodeId,diff){this.layout.body.nodes[nodeId].y+=diff}}]);return HorizontalStrategy}(DirectionInterface);exports.HorizontalStrategy=HorizontalStrategy;exports.VerticalStrategy=VerticalStrategy},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _keys=__webpack_require__(8);var _keys2=_interopRequireDefault(_keys);var _stringify=__webpack_require__(19);var _stringify2=_interopRequireDefault(_stringify);var _typeof2=__webpack_require__(6);var _typeof3=_interopRequireDefault(_typeof2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var util=__webpack_require__(2);var Hammer=__webpack_require__(10);var hammerUtil=__webpack_require__(37);var ManipulationSystem=function(){function ManipulationSystem(body,canvas,selectionHandler){var _this=this;(0,_classCallCheck3[\"default\"])(this,ManipulationSystem);this.body=body;this.canvas=canvas;this.selectionHandler=selectionHandler;this.editMode=false;this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined;this.manipulationHammers=[];this.temporaryUIFunctions={};this.temporaryEventFunctions=[];this.touchTime=0;this.temporaryIds={nodes:[],edges:[]};this.guiEnabled=false;this.inMode=false;this.selectedControlNode=undefined;this.options={};this.defaultOptions={enabled:false,initiallyActive:false,addNode:true,addEdge:true,editNode:undefined,editEdge:true,deleteNode:true,deleteEdge:true,controlNodeStyle:{shape:\"dot\",size:6,color:{background:\"#ff0000\",border:\"#3c3c3c\",highlight:{background:\"#07f968\",border:\"#3c3c3c\"}},borderWidth:2,borderWidthSelected:2}};util.extend(this.options,this.defaultOptions);this.body.emitter.on(\"destroy\",function(){_this._clean()});this.body.emitter.on(\"_dataChanged\",this._restore.bind(this));this.body.emitter.on(\"_resetData\",this._restore.bind(this))}(0,_createClass3[\"default\"])(ManipulationSystem,[{key:\"_restore\",value:function _restore(){if(this.inMode!==false){if(this.options.initiallyActive===true){this.enableEditMode()}else{this.disableEditMode()}}}},{key:\"setOptions\",value:function setOptions(options,allOptions,globalOptions){if(allOptions!==undefined){if(allOptions.locale!==undefined){this.options.locale=allOptions.locale}else{this.options.locale=globalOptions.locale}if(allOptions.locales!==undefined){this.options.locales=allOptions.locales}else{this.options.locales=globalOptions.locales}}if(options!==undefined){if(typeof options===\"boolean\"){this.options.enabled=options}else{this.options.enabled=true;util.deepExtend(this.options,options)}if(this.options.initiallyActive===true){this.editMode=true}this._setup()}}},{key:\"toggleEditMode\",value:function toggleEditMode(){if(this.editMode===true){this.disableEditMode()}else{this.enableEditMode()}}},{key:\"enableEditMode\",value:function enableEditMode(){this.editMode=true;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";this.editModeDiv.style.display=\"none\";this.showManipulatorToolbar()}}},{key:\"disableEditMode\",value:function disableEditMode(){this.editMode=false;this._clean();if(this.guiEnabled===true){this.manipulationDiv.style.display=\"none\";this.closeDiv.style.display=\"none\";this.editModeDiv.style.display=\"block\";this._createEditButton()}}},{key:\"showManipulatorToolbar\",value:function showManipulatorToolbar(){this._clean();this.manipulationDOM={};if(this.guiEnabled===true){this.editMode=true;this.manipulationDiv.style.display=\"block\";this.closeDiv.style.display=\"block\";var selectedNodeCount=this.selectionHandler._getSelectedNodeCount();var selectedEdgeCount=this.selectionHandler._getSelectedEdgeCount();var selectedTotalCount=selectedNodeCount+selectedEdgeCount;var locale=this.options.locales[this.options.locale];var needSeperator=false;if(this.options.addNode!==false){this._createAddNodeButton(locale);needSeperator=true}if(this.options.addEdge!==false){if(needSeperator===true){this._createSeperator(1)}else{needSeperator=true}this._createAddEdgeButton(locale)}if(selectedNodeCount===1&&typeof this.options.editNode===\"function\"){if(needSeperator===true){this._createSeperator(2)}else{needSeperator=true}this._createEditNodeButton(locale)}else if(selectedEdgeCount===1&&selectedNodeCount===0&&this.options.editEdge!==false){if(needSeperator===true){this._createSeperator(3)}else{needSeperator=true}this._createEditEdgeButton(locale)}if(selectedTotalCount!==0){if(selectedNodeCount>0&&this.options.deleteNode!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}else if(selectedNodeCount===0&&this.options.deleteEdge!==false){if(needSeperator===true){this._createSeperator(4)}this._createDeleteButton(locale)}}this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this));this._temporaryBindEvent(\"select\",this.showManipulatorToolbar.bind(this))}this.body.emitter.emit(\"_redraw\")}},{key:\"addNodeMode\",value:function addNodeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addNode\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"addDescription\"]||this.options.locales[\"en\"][\"addDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindEvent(\"click\",this._performAddNode.bind(this))}},{key:\"editNode\",value:function editNode(){var _this2=this;if(this.editMode!==true){this.enableEditMode()}this._clean();var node=this.selectionHandler._getSelectedNode();if(node!==undefined){this.inMode=\"editNode\";if(typeof this.options.editNode===\"function\"){if(node.isCluster!==true){var data=util.deepExtend({},node.options,false);data.x=node.x;data.y=node.y;if(this.options.editNode.length===2){this.options.editNode(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this2.inMode===\"editNode\"){_this2.body.data.nodes.getDataSet().update(finalizedData)}_this2.showManipulatorToolbar()})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{alert(this.options.locales[this.options.locale][\"editClusterError\"]||this.options.locales[\"en\"][\"editClusterError\"])}}else{throw new Error(\"No function has been configured to handle the editing of nodes.\")}}else{this.showManipulatorToolbar()}}},{key:\"addEdgeMode\",value:function addEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"addEdge\";if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"edgeDescription\"]||this.options.locales[\"en\"][\"edgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this._temporaryBindUI(\"onTouch\",this._handleConnect.bind(this));this._temporaryBindUI(\"onDragEnd\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDrag\",this._dragControlNode.bind(this));this._temporaryBindUI(\"onRelease\",this._finishConnect.bind(this));this._temporaryBindUI(\"onDragStart\",this._dragStartEdge.bind(this));this._temporaryBindUI(\"onHold\",function(){})}},{key:\"editEdgeMode\",value:function editEdgeMode(){if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"editEdge\";if((0,_typeof3[\"default\"])(this.options.editEdge)===\"object\"&&typeof this.options.editEdge.editWithoutDrag===\"function\"){this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var edge=this.body.edges[this.edgeBeingEditedId];this._performEditEdge(edge.from,edge.to);return}}if(this.guiEnabled===true){var locale=this.options.locales[this.options.locale];this.manipulationDOM={};this._createBackButton(locale);this._createSeperator();this._createDescription(locale[\"editEdgeDescription\"]||this.options.locales[\"en\"][\"editEdgeDescription\"]);this._bindHammerToDiv(this.closeDiv,this.toggleEditMode.bind(this))}this.edgeBeingEditedId=this.selectionHandler.getSelectedEdges()[0];if(this.edgeBeingEditedId!==undefined){var _edge=this.body.edges[this.edgeBeingEditedId];var controlNodeFrom=this._getNewTargetNode(_edge.from.x,_edge.from.y);var controlNodeTo=this._getNewTargetNode(_edge.to.x,_edge.to.y);this.temporaryIds.nodes.push(controlNodeFrom.id);this.temporaryIds.nodes.push(controlNodeTo.id);this.body.nodes[controlNodeFrom.id]=controlNodeFrom;this.body.nodeIndices.push(controlNodeFrom.id);this.body.nodes[controlNodeTo.id]=controlNodeTo;this.body.nodeIndices.push(controlNodeTo.id);this._temporaryBindUI(\"onTouch\",this._controlNodeTouch.bind(this));this._temporaryBindUI(\"onTap\",function(){});this._temporaryBindUI(\"onHold\",function(){});this._temporaryBindUI(\"onDragStart\",this._controlNodeDragStart.bind(this));this._temporaryBindUI(\"onDrag\",this._controlNodeDrag.bind(this));this._temporaryBindUI(\"onDragEnd\",this._controlNodeDragEnd.bind(this));this._temporaryBindUI(\"onMouseMove\",function(){});this._temporaryBindEvent(\"beforeDrawing\",function(ctx){var positions=_edge.edgeType.findBorderPositions(ctx);if(controlNodeFrom.selected===false){controlNodeFrom.x=positions.from.x;controlNodeFrom.y=positions.from.y}if(controlNodeTo.selected===false){controlNodeTo.x=positions.to.x;controlNodeTo.y=positions.to.y}});this.body.emitter.emit(\"_redraw\")}else{this.showManipulatorToolbar()}}},{key:\"deleteSelected\",value:function deleteSelected(){var _this3=this;if(this.editMode!==true){this.enableEditMode()}this._clean();this.inMode=\"delete\";var selectedNodes=this.selectionHandler.getSelectedNodes();var selectedEdges=this.selectionHandler.getSelectedEdges();var deleteFunction=undefined;if(selectedNodes.length>0){for(var i=0;i<selectedNodes.length;i++){if(this.body.nodes[selectedNodes[i]].isCluster===true){alert(this.options.locales[this.options.locale][\"deleteClusterError\"]||this.options.locales[\"en\"][\"deleteClusterError\"]);return}}if(typeof this.options.deleteNode===\"function\"){deleteFunction=this.options.deleteNode}}else if(selectedEdges.length>0){if(typeof this.options.deleteEdge===\"function\"){deleteFunction=this.options.deleteEdge}}if(typeof deleteFunction===\"function\"){var data={nodes:selectedNodes,edges:selectedEdges};if(deleteFunction.length===2){deleteFunction(data,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this3.inMode===\"delete\"){_this3.body.data.edges.getDataSet().remove(finalizedData.edges);_this3.body.data.nodes.getDataSet().remove(finalizedData.nodes);_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}else{_this3.body.emitter.emit(\"startSimulation\");_this3.showManipulatorToolbar()}})}else{throw new Error(\"The function for delete does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().remove(selectedEdges);this.body.data.nodes.getDataSet().remove(selectedNodes);this.body.emitter.emit(\"startSimulation\");this.showManipulatorToolbar()}}},{key:\"_setup\",value:function _setup(){if(this.options.enabled===true){this.guiEnabled=true;this._createWrappers();if(this.editMode===false){this._createEditButton()}else{this.showManipulatorToolbar()}}else{this._removeManipulationDOM();this.guiEnabled=false}}},{key:\"_createWrappers\",value:function _createWrappers(){if(this.manipulationDiv===undefined){this.manipulationDiv=document.createElement(\"div\");this.manipulationDiv.className=\"vis-manipulation\";if(this.editMode===true){this.manipulationDiv.style.display=\"block\"}else{this.manipulationDiv.style.display=\"none\"}this.canvas.frame.appendChild(this.manipulationDiv)}if(this.editModeDiv===undefined){this.editModeDiv=document.createElement(\"div\");this.editModeDiv.className=\"vis-edit-mode\";if(this.editMode===true){this.editModeDiv.style.display=\"none\"}else{this.editModeDiv.style.display=\"block\"}this.canvas.frame.appendChild(this.editModeDiv)}if(this.closeDiv===undefined){this.closeDiv=document.createElement(\"div\");this.closeDiv.className=\"vis-close\";this.closeDiv.style.display=this.manipulationDiv.style.display;this.canvas.frame.appendChild(this.closeDiv)}}},{key:\"_getNewTargetNode\",value:function _getNewTargetNode(x,y){var controlNodeStyle=util.deepExtend({},this.options.controlNodeStyle);controlNodeStyle.id=\"targetNode\"+util.randomUUID();controlNodeStyle.hidden=false;controlNodeStyle.physics=false;controlNodeStyle.x=x;controlNodeStyle.y=y;var node=this.body.functions.createNode(controlNodeStyle);node.shape.boundingBox={left:x,right:x,top:y,bottom:y};return node}},{key:\"_createEditButton\",value:function _createEditButton(){this._clean();this.manipulationDOM={};util.recursiveDOMDelete(this.editModeDiv);var locale=this.options.locales[this.options.locale];var button=this._createButton(\"editMode\",\"vis-button vis-edit vis-edit-mode\",locale[\"edit\"]||this.options.locales[\"en\"][\"edit\"]);this.editModeDiv.appendChild(button);this._bindHammerToDiv(button,this.toggleEditMode.bind(this))}},{key:\"_clean\",value:function _clean(){this.inMode=false;if(this.guiEnabled===true){util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.manipulationDiv);this._cleanManipulatorHammers()}this._cleanupTemporaryNodesAndEdges();this._unbindTemporaryUIs();this._unbindTemporaryEvents();this.body.emitter.emit(\"restorePhysics\")}},{key:\"_cleanManipulatorHammers\",value:function _cleanManipulatorHammers(){if(this.manipulationHammers.length!=0){for(var i=0;i<this.manipulationHammers.length;i++){this.manipulationHammers[i].destroy()}this.manipulationHammers=[]}}},{key:\"_removeManipulationDOM\",value:function _removeManipulationDOM(){this._clean();util.recursiveDOMDelete(this.manipulationDiv);util.recursiveDOMDelete(this.editModeDiv);util.recursiveDOMDelete(this.closeDiv);if(this.manipulationDiv){this.canvas.frame.removeChild(this.manipulationDiv)}if(this.editModeDiv){this.canvas.frame.removeChild(this.editModeDiv)}if(this.closeDiv){this.canvas.frame.removeChild(this.closeDiv)}this.manipulationDiv=undefined;this.editModeDiv=undefined;this.closeDiv=undefined}},{key:\"_createSeperator\",value:function _createSeperator(){var index=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;this.manipulationDOM[\"seperatorLineDiv\"+index]=document.createElement(\"div\");this.manipulationDOM[\"seperatorLineDiv\"+index].className=\"vis-separator-line\";this.manipulationDiv.appendChild(this.manipulationDOM[\"seperatorLineDiv\"+index])}},{key:\"_createAddNodeButton\",value:function _createAddNodeButton(locale){var button=this._createButton(\"addNode\",\"vis-button vis-add\",locale[\"addNode\"]||this.options.locales[\"en\"][\"addNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addNodeMode.bind(this))}},{key:\"_createAddEdgeButton\",value:function _createAddEdgeButton(locale){var button=this._createButton(\"addEdge\",\"vis-button vis-connect\",locale[\"addEdge\"]||this.options.locales[\"en\"][\"addEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.addEdgeMode.bind(this))}},{key:\"_createEditNodeButton\",value:function _createEditNodeButton(locale){var button=this._createButton(\"editNode\",\"vis-button vis-edit\",locale[\"editNode\"]||this.options.locales[\"en\"][\"editNode\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editNode.bind(this))}},{key:\"_createEditEdgeButton\",value:function _createEditEdgeButton(locale){var button=this._createButton(\"editEdge\",\"vis-button vis-edit\",locale[\"editEdge\"]||this.options.locales[\"en\"][\"editEdge\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.editEdgeMode.bind(this))}},{key:\"_createDeleteButton\",value:function _createDeleteButton(locale){var deleteBtnClass;if(this.options.rtl){deleteBtnClass=\"vis-button vis-delete-rtl\"}else{deleteBtnClass=\"vis-button vis-delete\"}var button=this._createButton(\"delete\",deleteBtnClass,locale[\"del\"]||this.options.locales[\"en\"][\"del\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.deleteSelected.bind(this))}},{key:\"_createBackButton\",value:function _createBackButton(locale){\nvar button=this._createButton(\"back\",\"vis-button vis-back\",locale[\"back\"]||this.options.locales[\"en\"][\"back\"]);this.manipulationDiv.appendChild(button);this._bindHammerToDiv(button,this.showManipulatorToolbar.bind(this))}},{key:\"_createButton\",value:function _createButton(id,className,label){var labelClassName=arguments.length>3&&arguments[3]!==undefined?arguments[3]:\"vis-label\";this.manipulationDOM[id+\"Div\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Div\"].className=className;this.manipulationDOM[id+\"Label\"]=document.createElement(\"div\");this.manipulationDOM[id+\"Label\"].className=labelClassName;this.manipulationDOM[id+\"Label\"].innerHTML=label;this.manipulationDOM[id+\"Div\"].appendChild(this.manipulationDOM[id+\"Label\"]);return this.manipulationDOM[id+\"Div\"]}},{key:\"_createDescription\",value:function _createDescription(label){this.manipulationDiv.appendChild(this._createButton(\"description\",\"vis-button vis-none\",label))}},{key:\"_temporaryBindEvent\",value:function _temporaryBindEvent(event,newFunction){this.temporaryEventFunctions.push({event:event,boundFunction:newFunction});this.body.emitter.on(event,newFunction)}},{key:\"_temporaryBindUI\",value:function _temporaryBindUI(UIfunctionName,newFunction){if(this.body.eventListeners[UIfunctionName]!==undefined){this.temporaryUIFunctions[UIfunctionName]=this.body.eventListeners[UIfunctionName];this.body.eventListeners[UIfunctionName]=newFunction}else{throw new Error(\"This UI function does not exist. Typo? You tried: \"+UIfunctionName+\" possible are: \"+(0,_stringify2[\"default\"])((0,_keys2[\"default\"])(this.body.eventListeners)))}}},{key:\"_unbindTemporaryUIs\",value:function _unbindTemporaryUIs(){for(var functionName in this.temporaryUIFunctions){if(this.temporaryUIFunctions.hasOwnProperty(functionName)){this.body.eventListeners[functionName]=this.temporaryUIFunctions[functionName];delete this.temporaryUIFunctions[functionName]}}this.temporaryUIFunctions={}}},{key:\"_unbindTemporaryEvents\",value:function _unbindTemporaryEvents(){for(var i=0;i<this.temporaryEventFunctions.length;i++){var eventName=this.temporaryEventFunctions[i].event;var boundFunction=this.temporaryEventFunctions[i].boundFunction;this.body.emitter.off(eventName,boundFunction)}this.temporaryEventFunctions=[]}},{key:\"_bindHammerToDiv\",value:function _bindHammerToDiv(domElement,boundFunction){var hammer=new Hammer(domElement,{});hammerUtil.onTouch(hammer,boundFunction);this.manipulationHammers.push(hammer)}},{key:\"_cleanupTemporaryNodesAndEdges\",value:function _cleanupTemporaryNodesAndEdges(){for(var i=0;i<this.temporaryIds.edges.length;i++){this.body.edges[this.temporaryIds.edges[i]].disconnect();delete this.body.edges[this.temporaryIds.edges[i]];var indexTempEdge=this.body.edgeIndices.indexOf(this.temporaryIds.edges[i]);if(indexTempEdge!==-1){this.body.edgeIndices.splice(indexTempEdge,1)}}for(var _i=0;_i<this.temporaryIds.nodes.length;_i++){delete this.body.nodes[this.temporaryIds.nodes[_i]];var indexTempNode=this.body.nodeIndices.indexOf(this.temporaryIds.nodes[_i]);if(indexTempNode!==-1){this.body.nodeIndices.splice(indexTempNode,1)}}this.temporaryIds={nodes:[],edges:[]}}},{key:\"_controlNodeTouch\",value:function _controlNodeTouch(event){this.selectionHandler.unselectAll();this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation)}},{key:\"_controlNodeDragStart\",value:function _controlNodeDragStart(event){var pointer=this.lastTouch;var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var from=this.body.nodes[this.temporaryIds.nodes[0]];var to=this.body.nodes[this.temporaryIds.nodes[1]];var edge=this.body.edges[this.edgeBeingEditedId];this.selectedControlNode=undefined;var fromSelect=from.isOverlappingWith(pointerObj);var toSelect=to.isOverlappingWith(pointerObj);if(fromSelect===true){this.selectedControlNode=from;edge.edgeType.from=from}else if(toSelect===true){this.selectedControlNode=to;edge.edgeType.to=to}if(this.selectedControlNode!==undefined){this.selectionHandler.selectObject(this.selectedControlNode)}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDrag\",value:function _controlNodeDrag(event){this.body.emitter.emit(\"disablePhysics\");var pointer=this.body.functions.getPointer(event.center);var pos=this.canvas.DOMtoCanvas(pointer);if(this.selectedControlNode!==undefined){this.selectedControlNode.x=pos.x;this.selectedControlNode.y=pos.y}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}this.body.emitter.emit(\"_redraw\")}},{key:\"_controlNodeDragEnd\",value:function _controlNodeDragEnd(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var edge=this.body.edges[this.edgeBeingEditedId];if(this.selectedControlNode===undefined){return}this.selectionHandler.unselectAll();var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(overlappingNodeIds[i]!==this.selectedControlNode.id){node=this.body.nodes[overlappingNodeIds[i]];break}}if(node!==undefined&&this.selectedControlNode!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var from=this.body.nodes[this.temporaryIds.nodes[0]];if(this.selectedControlNode.id===from.id){this._performEditEdge(node.id,edge.to.id)}else{this._performEditEdge(edge.from.id,node.id)}}}else{edge.updateEdgeType();this.body.emitter.emit(\"restorePhysics\")}this.body.emitter.emit(\"_redraw\")}},{key:\"_handleConnect\",value:function _handleConnect(event){if((new Date).valueOf()-this.touchTime>100){this.lastTouch=this.body.functions.getPointer(event.center);this.lastTouch.translation=util.extend({},this.body.view.translation);var pointer=this.lastTouch;var node=this.selectionHandler.getNodeAt(pointer);if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{var targetNode=this._getNewTargetNode(node.x,node.y);this.body.nodes[targetNode.id]=targetNode;this.body.nodeIndices.push(targetNode.id);var connectionEdge=this.body.functions.createEdge({id:\"connectionEdge\"+util.randomUUID(),from:node.id,to:targetNode.id,physics:false,smooth:{enabled:true,type:\"continuous\",roundness:.5}});this.body.edges[connectionEdge.id]=connectionEdge;this.body.edgeIndices.push(connectionEdge.id);this.temporaryIds.nodes.push(targetNode.id);this.temporaryIds.edges.push(connectionEdge.id)}}this.touchTime=(new Date).valueOf()}}},{key:\"_dragControlNode\",value:function _dragControlNode(event){var pointer=this.body.functions.getPointer(event.center);if(this.temporaryIds.nodes[0]!==undefined){var targetNode=this.body.nodes[this.temporaryIds.nodes[0]];targetNode.x=this.canvas._XconvertDOMtoCanvas(pointer.x);targetNode.y=this.canvas._YconvertDOMtoCanvas(pointer.y);this.body.emitter.emit(\"_redraw\")}else{var diffX=pointer.x-this.lastTouch.x;var diffY=pointer.y-this.lastTouch.y;this.body.view.translation={x:this.lastTouch.translation.x+diffX,y:this.lastTouch.translation.y+diffY}}}},{key:\"_finishConnect\",value:function _finishConnect(event){var pointer=this.body.functions.getPointer(event.center);var pointerObj=this.selectionHandler._pointerToPositionObject(pointer);var connectFromId=undefined;if(this.temporaryIds.edges[0]!==undefined){connectFromId=this.body.edges[this.temporaryIds.edges[0]].fromId}var overlappingNodeIds=this.selectionHandler._getAllNodesOverlappingWith(pointerObj);var node=undefined;for(var i=overlappingNodeIds.length-1;i>=0;i--){if(this.temporaryIds.nodes.indexOf(overlappingNodeIds[i])===-1){node=this.body.nodes[overlappingNodeIds[i]];break}}this._cleanupTemporaryNodesAndEdges();if(node!==undefined){if(node.isCluster===true){alert(this.options.locales[this.options.locale][\"createEdgeError\"]||this.options.locales[\"en\"][\"createEdgeError\"])}else{if(this.body.nodes[connectFromId]!==undefined&&this.body.nodes[node.id]!==undefined){this._performAddEdge(connectFromId,node.id)}}}this.body.emitter.emit(\"_redraw\")}},{key:\"_dragStartEdge\",value:function _dragStartEdge(event){var pointer=this.lastTouch;this.selectionHandler._generateClickEvent(\"dragStart\",event,pointer,undefined,true)}},{key:\"_performAddNode\",value:function _performAddNode(clickData){var _this4=this;var defaultData={id:util.randomUUID(),x:clickData.pointer.canvas.x,y:clickData.pointer.canvas.y,label:\"new\"};if(typeof this.options.addNode===\"function\"){if(this.options.addNode.length===2){this.options.addNode(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this4.inMode===\"addNode\"){_this4.body.data.nodes.getDataSet().add(finalizedData);_this4.showManipulatorToolbar()}})}else{this.showManipulatorToolbar();throw new Error(\"The function for add does not support two arguments (data,callback)\")}}else{this.body.data.nodes.getDataSet().add(defaultData);this.showManipulatorToolbar()}}},{key:\"_performAddEdge\",value:function _performAddEdge(sourceNodeId,targetNodeId){var _this5=this;var defaultData={from:sourceNodeId,to:targetNodeId};if(typeof this.options.addEdge===\"function\"){if(this.options.addEdge.length===2){this.options.addEdge(defaultData,function(finalizedData){if(finalizedData!==null&&finalizedData!==undefined&&_this5.inMode===\"addEdge\"){_this5.body.data.edges.getDataSet().add(finalizedData);_this5.selectionHandler.unselectAll();_this5.showManipulatorToolbar()}})}else{throw new Error(\"The function for connect does not support two arguments (data,callback)\")}}else{this.body.data.edges.getDataSet().add(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}},{key:\"_performEditEdge\",value:function _performEditEdge(sourceNodeId,targetNodeId){var _this6=this;var defaultData={id:this.edgeBeingEditedId,from:sourceNodeId,to:targetNodeId,label:this.body.data.edges._data[this.edgeBeingEditedId].label};var eeFunct=this.options.editEdge;if((typeof eeFunct===\"undefined\"?\"undefined\":(0,_typeof3[\"default\"])(eeFunct))===\"object\"){eeFunct=eeFunct.editWithoutDrag}if(typeof eeFunct===\"function\"){if(eeFunct.length===2){eeFunct(defaultData,function(finalizedData){if(finalizedData===null||finalizedData===undefined||_this6.inMode!==\"editEdge\"){_this6.body.edges[defaultData.id].updateEdgeType();_this6.body.emitter.emit(\"_redraw\");_this6.showManipulatorToolbar()}else{_this6.body.data.edges.getDataSet().update(finalizedData);_this6.selectionHandler.unselectAll();_this6.showManipulatorToolbar()}})}else{throw new Error(\"The function for edit does not support two arguments (data, callback)\")}}else{this.body.data.edges.getDataSet().update(defaultData);this.selectionHandler.unselectAll();this.showManipulatorToolbar()}}}]);return ManipulationSystem}();exports[\"default\"]=ManipulationSystem},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _slicedToArray2=__webpack_require__(30);var _slicedToArray3=_interopRequireDefault(_slicedToArray2);var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);var _FloydWarshall=__webpack_require__(239);var _FloydWarshall2=_interopRequireDefault(_FloydWarshall);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var KamadaKawai=function(){function KamadaKawai(body,edgeLength,edgeStrength){(0,_classCallCheck3[\"default\"])(this,KamadaKawai);this.body=body;this.springLength=edgeLength;this.springConstant=edgeStrength;this.distanceSolver=new _FloydWarshall2[\"default\"]}(0,_createClass3[\"default\"])(KamadaKawai,[{key:\"setOptions\",value:function setOptions(options){if(options){if(options.springLength){this.springLength=options.springLength}if(options.springConstant){this.springConstant=options.springConstant}}}},{key:\"solve\",value:function solve(nodesArray,edgesArray){var ignoreClusters=arguments.length>2&&arguments[2]!==undefined?arguments[2]:false;var D_matrix=this.distanceSolver.getDistances(this.body,nodesArray,edgesArray);this._createL_matrix(D_matrix);this._createK_matrix(D_matrix);this._createE_matrix();var threshold=.01;var innerThreshold=1;var iterations=0;var maxIterations=Math.max(1e3,Math.min(10*this.body.nodeIndices.length,6e3));var maxInnerIterations=5;var maxEnergy=1e9;var highE_nodeId=0,dE_dx=0,dE_dy=0,delta_m=0,subIterations=0;while(maxEnergy>threshold&&iterations<maxIterations){iterations+=1;var _getHighestEnergyNode2=this._getHighestEnergyNode(ignoreClusters);var _getHighestEnergyNode3=(0,_slicedToArray3[\"default\"])(_getHighestEnergyNode2,4);highE_nodeId=_getHighestEnergyNode3[0];maxEnergy=_getHighestEnergyNode3[1];dE_dx=_getHighestEnergyNode3[2];dE_dy=_getHighestEnergyNode3[3];delta_m=maxEnergy;subIterations=0;while(delta_m>innerThreshold&&subIterations<maxInnerIterations){subIterations+=1;this._moveNode(highE_nodeId,dE_dx,dE_dy);var _getEnergy2=this._getEnergy(highE_nodeId);var _getEnergy3=(0,_slicedToArray3[\"default\"])(_getEnergy2,3);delta_m=_getEnergy3[0];dE_dx=_getEnergy3[1];dE_dy=_getEnergy3[2]}}}},{key:\"_getHighestEnergyNode\",value:function _getHighestEnergyNode(ignoreClusters){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var maxEnergy=0;var maxEnergyNodeId=nodesArray[0];var dE_dx_max=0,dE_dy_max=0;for(var nodeIdx=0;nodeIdx<nodesArray.length;nodeIdx++){var m=nodesArray[nodeIdx];if(nodes[m].predefinedPosition===false||nodes[m].isCluster===true&&ignoreClusters===true||nodes[m].options.fixed.x===true||nodes[m].options.fixed.y===true){var _getEnergy4=this._getEnergy(m),_getEnergy5=(0,_slicedToArray3[\"default\"])(_getEnergy4,3),delta_m=_getEnergy5[0],dE_dx=_getEnergy5[1],dE_dy=_getEnergy5[2];if(maxEnergy<delta_m){maxEnergy=delta_m;maxEnergyNodeId=m;dE_dx_max=dE_dx;dE_dy_max=dE_dy}}}return[maxEnergyNodeId,maxEnergy,dE_dx_max,dE_dy_max]}},{key:\"_getEnergy\",value:function _getEnergy(m){var _E_sums$m=(0,_slicedToArray3[\"default\"])(this.E_sums[m],2),dE_dx=_E_sums$m[0],dE_dy=_E_sums$m[1];var delta_m=Math.sqrt(Math.pow(dE_dx,2)+Math.pow(dE_dy,2));return[delta_m,dE_dx,dE_dy]}},{key:\"_moveNode\",value:function _moveNode(m,dE_dx,dE_dy){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var d2E_dx2=0;var d2E_dxdy=0;var d2E_dy2=0;var x_m=nodes[m].x;var y_m=nodes[m].y;var km=this.K_matrix[m];var lm=this.L_matrix[m];for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var kmat=km[i];var lmat=lm[i];var denominator=1/Math.pow(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2),1.5);d2E_dx2+=kmat*(1-lmat*Math.pow(y_m-y_i,2)*denominator);d2E_dxdy+=kmat*(lmat*(x_m-x_i)*(y_m-y_i)*denominator);d2E_dy2+=kmat*(1-lmat*Math.pow(x_m-x_i,2)*denominator)}}var A=d2E_dx2,B=d2E_dxdy,C=dE_dx,D=d2E_dy2,E=dE_dy;var dy=(C/A+E/B)/(B/A-D/B);var dx=-(B*dy+C)/A;nodes[m].x+=dx;nodes[m].y+=dy;this._updateE_matrix(m)}},{key:\"_createL_matrix\",value:function _createL_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeLength=this.springLength;this.L_matrix=[];for(var i=0;i<nodesArray.length;i++){this.L_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.L_matrix[nodesArray[i]][nodesArray[j]]=edgeLength*D_matrix[nodesArray[i]][nodesArray[j]]}}}},{key:\"_createK_matrix\",value:function _createK_matrix(D_matrix){var nodesArray=this.body.nodeIndices;var edgeStrength=this.springConstant;this.K_matrix=[];for(var i=0;i<nodesArray.length;i++){this.K_matrix[nodesArray[i]]={};for(var j=0;j<nodesArray.length;j++){this.K_matrix[nodesArray[i]][nodesArray[j]]=edgeStrength*Math.pow(D_matrix[nodesArray[i]][nodesArray[j]],-2)}}}},{key:\"_createE_matrix\",value:function _createE_matrix(){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;this.E_matrix={};this.E_sums={};for(var mIdx=0;mIdx<nodesArray.length;mIdx++){this.E_matrix[nodesArray[mIdx]]=[]}for(var _mIdx=0;_mIdx<nodesArray.length;_mIdx++){var m=nodesArray[_mIdx];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=_mIdx;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));this.E_matrix[m][iIdx]=[this.K_matrix[m][i]*(x_m-x_i-this.L_matrix[m][i]*(x_m-x_i)*denominator),this.K_matrix[m][i]*(y_m-y_i-this.L_matrix[m][i]*(y_m-y_i)*denominator)];this.E_matrix[i][_mIdx]=this.E_matrix[m][iIdx];dE_dx+=this.E_matrix[m][iIdx][0];dE_dy+=this.E_matrix[m][iIdx][1]}}this.E_sums[m]=[dE_dx,dE_dy]}}},{key:\"_updateE_matrix\",value:function _updateE_matrix(m){var nodesArray=this.body.nodeIndices;var nodes=this.body.nodes;var colm=this.E_matrix[m];var kcolm=this.K_matrix[m];var lcolm=this.L_matrix[m];var x_m=nodes[m].x;var y_m=nodes[m].y;var dE_dx=0;var dE_dy=0;for(var iIdx=0;iIdx<nodesArray.length;iIdx++){var i=nodesArray[iIdx];if(i!==m){var cell=colm[iIdx];var oldDx=cell[0];var oldDy=cell[1];var x_i=nodes[i].x;var y_i=nodes[i].y;var denominator=1/Math.sqrt(Math.pow(x_m-x_i,2)+Math.pow(y_m-y_i,2));var dx=kcolm[i]*(x_m-x_i-lcolm[i]*(x_m-x_i)*denominator);var dy=kcolm[i]*(y_m-y_i-lcolm[i]*(y_m-y_i)*denominator);colm[iIdx]=[dx,dy];dE_dx+=dx;dE_dy+=dy;var sum=this.E_sums[i];sum[0]+=dx-oldDx;sum[1]+=dy-oldDy}}this.E_sums[m]=[dE_dx,dE_dy]}}]);return KamadaKawai}();exports[\"default\"]=KamadaKawai},function(module,exports,__webpack_require__){\"use strict\";Object.defineProperty(exports,\"__esModule\",{value:true});var _classCallCheck2=__webpack_require__(0);var _classCallCheck3=_interopRequireDefault(_classCallCheck2);var _createClass2=__webpack_require__(1);var _createClass3=_interopRequireDefault(_createClass2);function _interopRequireDefault(obj){return obj&&obj.__esModule?obj:{default:obj}}var FloydWarshall=function(){function FloydWarshall(){(0,_classCallCheck3[\"default\"])(this,FloydWarshall)}(0,_createClass3[\"default\"])(FloydWarshall,[{key:\"getDistances\",value:function getDistances(body,nodesArray,edgesArray){var D_matrix={};var edges=body.edges;for(var i=0;i<nodesArray.length;i++){var node=nodesArray[i];var cell={};D_matrix[node]=cell;for(var j=0;j<nodesArray.length;j++){cell[nodesArray[j]]=i==j?0:1e9}}for(var _i=0;_i<edgesArray.length;_i++){var edge=edges[edgesArray[_i]];if(edge.connected===true&&D_matrix[edge.fromId]!==undefined&&D_matrix[edge.toId]!==undefined){D_matrix[edge.fromId][edge.toId]=1;D_matrix[edge.toId][edge.fromId]=1}}var nodeCount=nodesArray.length;for(var k=0;k<nodeCount;k++){var knode=nodesArray[k];var kcolm=D_matrix[knode];for(var _i2=0;_i2<nodeCount-1;_i2++){var inode=nodesArray[_i2];var icolm=D_matrix[inode];for(var _j=_i2+1;_j<nodeCount;_j++){var jnode=nodesArray[_j];var jcolm=D_matrix[jnode];var val=Math.min(icolm[jnode],icolm[knode]+kcolm[jnode]);icolm[jnode]=val;jcolm[inode]=val}}}return D_matrix}}]);return FloydWarshall}();exports[\"default\"]=FloydWarshall}])});\n",
            "type": "application/javascript",
            "module-type": "library"
        }
    }
}
图书情报前沿知识
hide
checked
$:/core/ui/ControlPanel/Appearance
$:/plugins/felixhayashi/tiddlymap/hook/editor
no

$:/themes/tiddlywiki/vanilla
{
    "tiddlers": {
        "$:/themes/tiddlywiki/snowwhite/base": {
            "title": "$:/themes/tiddlywiki/snowwhite/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\n\n.tc-sidebar-header {\n\ttext-shadow: 0 1px 0 <<colour sidebar-foreground-shadow>>;\n}\n\n.tc-tiddler-info {\n\t<<box-shadow \"inset 1px 2px 3px rgba(0,0,0,0.1)\">>\n}\n\n@media screen {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow \"1px 1px 5px rgba(0, 0, 0, 0.3)\">>\n\t}\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\t.tc-tiddler-frame {\n\t\t<<box-shadow none>>\n\t}\n}\n\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\n\t<<transition \"fill 150ms ease-in-out\">>\n}\n\n.tc-tiddler-controls button.tc-selected,\n.tc-page-controls button.tc-selected {\n\t<<filter \"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\">>\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-edit-tags {\n\t<<box-shadow \"inset 0 1px 8px rgba(0, 0, 0, 0.15)\">>\n}\n\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\n\t<<box-shadow \"none\">>\n\tborder: none;\n\toutline: none;\n}\n\ntextarea.tc-edit-texteditor {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\t<<box-shadow \"2px 2px 5px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-drop-down {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-block-dropdown {\n\tborder-radius: 4px;\n\t<<box-shadow \"2px 2px 10px rgba(0, 0, 0, 0.5)\">>\n}\n\n.tc-modal {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n}\n\n.tc-modal-footer {\n\tborder-radius: 0 0 6px 6px;\n\t<<box-shadow \"inset 0 1px 0 #fff\">>;\n}\n\n\n.tc-alert {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.6)\">>\n}\n\n.tc-notification {\n\tborder-radius: 6px;\n\t<<box-shadow \"0 3px 7px rgba(0,0,0,0.3)\">>\n\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\n}\n\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\n\tborder-top: none;\n\theight: 1px;\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\">>\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\t<<background-linear-gradient \"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\">>\n}\n\n.tc-message-box img {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n\n.tc-plugin-info {\n\t<<box-shadow \"1px 1px 3px rgba(0,0,0,0.5)\">>\n}\n"
        }
    }
}
{
    "tiddlers": {
        "$:/themes/tiddlywiki/vanilla/themetweaks": {
            "title": "$:/themes/tiddlywiki/vanilla/themetweaks",
            "tags": "$:/tags/ControlPanel/Appearance",
            "caption": "{{$:/language/ThemeTweaks/ThemeTweaks}}",
            "text": "\\define lingo-base() $:/language/ThemeTweaks/\n\n\\define replacement-text()\n[img[$(imageTitle)$]]\n\\end\n\n\\define backgroundimage-dropdown()\n<div class=\"tc-drop-down-wrapper\">\n<$button popup=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> class=\"tc-btn-invisible tc-btn-dropdown\">{{$:/core/images/down-arrow}}</$button>\n<$reveal state=<<qualify \"$:/state/popup/themetweaks/backgroundimage\">> type=\"popup\" position=\"belowleft\" text=\"\" default=\"\">\n<div class=\"tc-drop-down\">\n<$macrocall $name=\"image-picker\" actions=\"\"\"\n\n<$action-setfield\n\t$tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"\n\t$value=<<imageTitle>>\n/>\n\n\"\"\"/>\n</div>\n</$reveal>\n</div>\n\\end\n\n\\define backgroundimageattachment-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\" default=\"scroll\">\n<option value=\"scroll\"><<lingo Settings/BackgroundImageAttachment/Scroll>></option>\n<option value=\"fixed\"><<lingo Settings/BackgroundImageAttachment/Fixed>></option>\n</$select>\n\\end\n\n\\define backgroundimagesize-dropdown()\n<$select tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\" default=\"scroll\">\n<option value=\"auto\"><<lingo Settings/BackgroundImageSize/Auto>></option>\n<option value=\"cover\"><<lingo Settings/BackgroundImageSize/Cover>></option>\n<option value=\"contain\"><<lingo Settings/BackgroundImageSize/Contain>></option>\n</$select>\n\\end\n\n<<lingo ThemeTweaks/Hint>>\n\n! <<lingo Options>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><<lingo Options/SidebarLayout>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\"><option value=\"fixed-fluid\"><<lingo Options/SidebarLayout/Fixed-Fluid>></option><option value=\"fluid-fixed\"><<lingo Options/SidebarLayout/Fluid-Fixed>></option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><<lingo Options/StickyTitles>></$link><br>//<<lingo Options/StickyTitles/Hint>>// |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\"><option value=\"no\">{{$:/language/No}}</option><option value=\"yes\">{{$:/language/Yes}}</option></$select> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><<lingo Options/CodeWrapping>></$link> |<$select tiddler=\"$:/themes/tiddlywiki/vanilla/options/codewrapping\"><option value=\"pre\">{{$:/language/No}}</option><option value=\"pre-wrap\">{{$:/language/Yes}}</option></$select> |\n\n! <<lingo Settings>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\"><<lingo Settings/FontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/fontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\"><<lingo Settings/CodeFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/codefontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\"><<lingo Settings/EditorFontFamily>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/editorfontfamily\" default=\"\" tag=\"input\"/> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\"><<lingo Settings/BackgroundImage>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimage\" default=\"\" tag=\"input\"/> |<<backgroundimage-dropdown>> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment\"><<lingo Settings/BackgroundImageAttachment>></$link> |<<backgroundimageattachment-dropdown>> | |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize\"><<lingo Settings/BackgroundImageSize>></$link> |<<backgroundimagesize-dropdown>> | |\n\n! <<lingo Metrics>>\n\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\"><<lingo Metrics/FontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/fontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\"><<lingo Metrics/LineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/lineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\"><<lingo Metrics/BodyFontSize>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\"><<lingo Metrics/BodyLineHeight>></$link> |<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/bodylineheight\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\"><<lingo Metrics/StoryLeft>></$link><br>//<<lingo Metrics/StoryLeft/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyleft\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\"><<lingo Metrics/StoryTop>></$link><br>//<<lingo Metrics/StoryTop/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storytop\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\"><<lingo Metrics/StoryRight>></$link><br>//<<lingo Metrics/StoryRight/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storyright\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\"><<lingo Metrics/StoryWidth>></$link><br>//<<lingo Metrics/StoryWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/storywidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\"><<lingo Metrics/TiddlerWidth>></$link><br>//<<lingo Metrics/TiddlerWidth/Hint>>//<br> |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\"><<lingo Metrics/SidebarBreakpoint>></$link><br>//<<lingo Metrics/SidebarBreakpoint/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint\" default=\"\" tag=\"input\"/> |\n|<$link to=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\"><<lingo Metrics/SidebarWidth>></$link><br>//<<lingo Metrics/SidebarWidth/Hint>>// |^<$edit-text tiddler=\"$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth\" default=\"\" tag=\"input\"/> |\n"
        },
        "$:/themes/tiddlywiki/vanilla/base": {
            "title": "$:/themes/tiddlywiki/vanilla/base",
            "tags": "[[$:/tags/Stylesheet]]",
            "text": "\\define custom-background-datauri()\n<$set name=\"background\" value={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}>\n<$list filter=\"[<background>is[image]]\">\n`background: url(`\n<$list filter=\"[<background>!has[_canonical_uri]]\">\n`\"`<$macrocall $name=\"datauri\" title={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}}/>`\"`\n</$list>\n<$list filter=\"[<background>has[_canonical_uri]]\">\n`\"`<$view tiddler={{$:/themes/tiddlywiki/vanilla/settings/backgroundimage}} field=\"_canonical_uri\"/>`\"`\n</$list>\n`) center center;`\n`background-attachment: `{{$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment}}`;\n-webkit-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-moz-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\n-o-background-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;\nbackground-size:` {{$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize}}`;`\n</$list>\n</$set>\n\\end\n\n\\define sidebarbreakpoint()\n<$text text={{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}/>\n\\end\n\n\\define sidebarbreakpoint-minus-one()\n<$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\n\\end\n\n\\define if-fluid-fixed(text,hiddenSidebarText)\n<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/sidebarlayout\" type=\"match\" text=\"fluid-fixed\">\n$text$\n<$reveal state=\"$:/state/sidebar\" type=\"nomatch\" text=\"yes\" default=\"yes\">\n$hiddenSidebarText$\n</$reveal>\n</$reveal>\n\\end\n\n\\define if-editor-height-fixed(then,else)\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"fixed\">\n$then$\n</$reveal>\n<$reveal state=\"$:/config/TextEditor/EditorHeight/Mode\" type=\"match\" text=\"auto\">\n$else$\n</$reveal>\n\\end\n\n\\define set-type-selector-min-width()\n<$set name=\"typeLength\" value={{{ [all[shadows+tiddlers]prefix[$:/language/Docs/Types/]get[name]length[]maxall[]] }}}>\n\n\t.tc-type-selector-dropdown-wrapper {\n\t\tmin-width: calc(<<typeLength>>ch + 4em);\n\t}\n\n\t.tc-type-selector-dropdown-wrapper input.tc-edit-typeeditor {\n\t\tmin-width: <<typeLength>>ch;\n\t}\n\n</$set>\n\\end\n\n\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline macrocallblock\n\n/*\n** Start with the normalize CSS reset, and then belay some of its effects\n*/\n\n{{$:/themes/tiddlywiki/vanilla/reset}}\n\n*, input[type=\"search\"] {\n\tbox-sizing: border-box;\n\t-moz-box-sizing: border-box;\n\t-webkit-box-sizing: border-box;\n}\n\ninput[type=\"search\"] {\n  outline-offset: initial;\n}\n\nhtml button {\n\tline-height: 1.2;\n\tcolor: <<colour button-foreground>>;\n\tfill: <<colour button-foreground>>;\n\tbackground: <<colour button-background>>;\n\tborder-color: <<colour button-border>>;\n}\n\n/*\n** Basic element styles\n*/\n\nhtml, body {\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/fontfamily}};\n\ttext-rendering: optimizeLegibility; /* Enables kerning and ligatures etc. */\n\t-webkit-font-smoothing: antialiased;\n\t-moz-osx-font-smoothing: grayscale;\n}\n\nhtml:-webkit-full-screen {\n\tbackground-color: <<colour page-background>>;\n}\n\nbody.tc-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/fontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/lineheight}};\n\tword-wrap: break-word;\n\t<<custom-background-datauri>>\n\tcolor: <<colour foreground>>;\n\tbackground-color: <<colour page-background>>;\n\tfill: <<colour foreground>>;\n}\n\n<<if-background-attachment \"\"\"\n\nbody.tc-body {\n        background-color: transparent;\n}\n\n\"\"\">>\n\n/**\n * Correct the font size and margin on `h1` elements within `section` and\n * `article` contexts in Chrome, Firefox, and Safari.\n */\n\nh1 {\n\tfont-size: 2em;\n}\n\nh1, h2, h3, h4, h5, h6 {\n\tline-height: 1.2;\n\tfont-weight: 300;\n}\n\npre {\n\tdisplay: block;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\tword-break: normal;\n\tword-wrap: break-word;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tbackground-color: <<colour pre-background>>;\n\tborder: 1px solid <<colour pre-border>>;\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\ncode {\n\tcolor: <<colour code-foreground>>;\n\tbackground-color: <<colour code-background>>;\n\tborder: 1px solid <<colour code-border>>;\n\twhite-space: {{$:/themes/tiddlywiki/vanilla/options/codewrapping}};\n\tpadding: 0 3px 2px;\n\tborder-radius: 3px;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/codefontfamily}};\n}\n\nblockquote {\n\tborder-left: 5px solid <<colour blockquote-bar>>;\n\tmargin-left: 25px;\n\tpadding-left: 10px;\n\tquotes: \"\\201C\"\"\\201D\"\"\\2018\"\"\\2019\";\n}\n\nblockquote > div {\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n}\n\nblockquote.tc-big-quote {\n\tfont-family: Georgia, serif;\n\tposition: relative;\n\tbackground: <<colour pre-background>>;\n\tborder-left: none;\n\tmargin-left: 50px;\n\tmargin-right: 50px;\n\tpadding: 10px;\n    border-radius: 8px;\n}\n\nblockquote.tc-big-quote cite:before {\n\tcontent: \"\\2014 \\2009\";\n}\n\nblockquote.tc-big-quote:before {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: open-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    left: -50px;\n    top: 42px;\n}\n\nblockquote.tc-big-quote:after {\n\tfont-family: Georgia, serif;\n\tcolor: <<colour blockquote-bar>>;\n\tcontent: close-quote;\n\tfont-size: 8em;\n\tline-height: 0.1em;\n\tmargin-right: 0.25em;\n\tvertical-align: -0.4em;\n\tposition: absolute;\n    right: -80px;\n    bottom: -20px;\n}\n\ndl dt {\n\tfont-weight: bold;\n\tmargin-top: 6px;\n}\n\nbutton, textarea, input, select {\n\toutline-color: <<colour primary>>;\n}\n\ntextarea,\ninput[type=text],\ninput[type=search],\ninput[type=\"\"],\ninput:not([type]) {\n\tcolor: <<colour foreground>>;\n\tbackground: <<colour background>>;\n}\n\ninput[type=\"checkbox\"] {\n  vertical-align: middle;\n}\n\ninput[type=\"search\"]::-webkit-search-decoration,\ninput[type=\"search\"]::-webkit-search-cancel-button,\ninput[type=\"search\"]::-webkit-search-results-button,\ninput[type=\"search\"]::-webkit-search-results-decoration {\n\t-webkit-appearance:none;\n}\n\n.tc-muted {\n\tcolor: <<colour muted-foreground>>;\n}\n\nsvg.tc-image-button {\n\tpadding: 0px 1px 1px 0px;\n}\n\n.tc-icon-wrapper > svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\nkbd {\n\tdisplay: inline-block;\n\tpadding: 3px 5px;\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tcolor: <<colour foreground>>;\n\tvertical-align: middle;\n\tbackground-color: <<colour background>>;\n\tborder: solid 1px <<colour muted-foreground>>;\n\tborder-bottom-color: <<colour muted-foreground>>;\n\tborder-radius: 3px;\n\tbox-shadow: inset 0 -1px 0 <<colour muted-foreground>>;\n}\n\n::selection {\n\tbackground-color: Highlight;\n\tcolor: HighlightText;\n\tbackground-color: <<colour selection-background>>;\n\tcolor: <<colour selection-foreground>>;\n}\n\n/*\nMarkdown likes putting code elements inside pre elements\n*/\npre > code {\n\tpadding: 0;\n\tborder: none;\n\tbackground-color: inherit;\n\tcolor: inherit;\n}\n\ntable {\n\tborder: 1px solid <<colour table-border>>;\n\twidth: auto;\n\tmax-width: 100%;\n\tcaption-side: bottom;\n\tmargin-top: 1em;\n\tmargin-bottom: 1em;\n\t/* next 2 elements needed, since normalize 8.0.1 */\n\tborder-collapse: collapse;\n\tborder-spacing: 0;\n}\n\ntable th, table td {\n\tpadding: 0 7px 0 7px;\n\tborder-top: 1px solid <<colour table-border>>;\n\tborder-left: 1px solid <<colour table-border>>;\n}\n\ntable thead tr td, table th {\n\tbackground-color: <<colour table-header-background>>;\n\tfont-weight: bold;\n}\n\ntable tfoot tr td {\n\tbackground-color: <<colour table-footer-background>>;\n}\n\n.tc-csv-table {\n\twhite-space: nowrap;\n}\n\n.tc-tiddler-frame img,\n.tc-tiddler-frame svg,\n.tc-tiddler-frame canvas,\n.tc-tiddler-frame embed,\n.tc-tiddler-frame iframe {\n\tmax-width: 100%;\n}\n\n.tc-tiddler-body > embed,\n.tc-tiddler-body > iframe {\n\twidth: 100%;\n\theight: 600px;\n}\n\n/*\n** Links\n*/\n\nbutton.tc-tiddlylink,\na.tc-tiddlylink {\n\ttext-decoration: none;\n\tfont-weight: 500;\n\tcolor: <<colour tiddler-link-foreground>>;\n\t-webkit-user-select: inherit; /* Otherwise the draggable attribute makes links impossible to select */\n}\n\n.tc-sidebar-lists a.tc-tiddlylink {\n\tcolor: <<colour sidebar-tiddler-link-foreground>>;\n}\n\n.tc-sidebar-lists a.tc-tiddlylink:hover {\n\tcolor: <<colour sidebar-tiddler-link-foreground-hover>>;\n}\n\nbutton.tc-tiddlylink:hover,\na.tc-tiddlylink:hover {\n\ttext-decoration: underline;\n}\n\na.tc-tiddlylink-resolves {\n}\n\na.tc-tiddlylink-shadow {\n\tfont-weight: bold;\n}\n\na.tc-tiddlylink-shadow.tc-tiddlylink-resolves {\n\tfont-weight: normal;\n}\n\na.tc-tiddlylink-missing {\n\tfont-style: italic;\n}\n\na.tc-tiddlylink-external {\n\ttext-decoration: underline;\n\tcolor: <<colour external-link-foreground>>;\n\tbackground-color: <<colour external-link-background>>;\n}\n\na.tc-tiddlylink-external:visited {\n\tcolor: <<colour external-link-foreground-visited>>;\n\tbackground-color: <<colour external-link-background-visited>>;\n}\n\na.tc-tiddlylink-external:hover {\n\tcolor: <<colour external-link-foreground-hover>>;\n\tbackground-color: <<colour external-link-background-hover>>;\n}\n\n.tc-drop-down a.tc-tiddlylink:hover {\n\tcolor: <<colour tiddler-link-background>>;\n}\n\n/*\n** Drag and drop styles\n*/\n\n.tc-tiddler-dragger {\n\tposition: relative;\n\tz-index: -10000;\n}\n\n.tc-tiddler-dragger-inner {\n\tposition: absolute;\n\ttop: -1000px;\n\tleft: -1000px;\n\tdisplay: inline-block;\n\tpadding: 8px 20px;\n\tfont-size: 16.9px;\n\tfont-weight: bold;\n\tline-height: 20px;\n\tcolor: <<colour dragger-foreground>>;\n\ttext-shadow: 0 1px 0 rgba(0, 0, 0, 1);\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour dragger-background>>;\n\tborder-radius: 20px;\n}\n\n.tc-tiddler-dragger-cover {\n\tposition: absolute;\n\tbackground-color: <<colour page-background>>;\n}\n\n.tc-dropzone {\n\tposition: relative;\n}\n\n.tc-dropzone.tc-dragover:before {\n\tz-index: 10000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour dropzone-background>>;\n\ttext-align: center;\n\tcontent: \"<<lingo DropMessage>>\";\n}\n\n.tc-droppable > .tc-droppable-placeholder {\n\tdisplay: none;\n}\n\n.tc-droppable.tc-dragover > .tc-droppable-placeholder {\n\tdisplay: block;\n\tborder: 2px dashed <<colour dropzone-background>>;\n}\n\n.tc-draggable {\n\tcursor: move;\n}\n\n.tc-sidebar-tab-open .tc-droppable-placeholder, .tc-tagged-draggable-list .tc-droppable-placeholder,\n.tc-links-draggable-list .tc-droppable-placeholder {\n\tline-height: 2em;\n\theight: 2em;\n}\n\n.tc-sidebar-tab-open-item {\n\tposition: relative;\n}\n\n.tc-sidebar-tab-open .tc-btn-invisible.tc-btn-mini svg {\n\tfont-size: 0.7em;\n\tfill: <<colour muted-foreground>>;\n}\n\n/*\n** Plugin reload warning\n*/\n\n.tc-plugin-reload-warning {\n\tz-index: 1000;\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbackground: <<colour alert-background>>;\n\ttext-align: center;\n}\n\n/*\n** Buttons\n*/\n\nbutton svg, button img, label svg, label img {\n\tvertical-align: middle;\n}\n\n.tc-btn-invisible {\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\tcursor: pointer;\n\tcolor: <<colour foreground>>;\n\tfill: <<colour foreground>>;\n}\n\n.tc-btn-boxed {\n\tfont-size: 0.6em;\n\tpadding: 0.2em;\n\tmargin: 1px;\n\tbackground: none;\n\tborder: 1px solid <<colour tiddler-controls-foreground>>;\n\tborder-radius: 0.25em;\n}\n\nhtml body.tc-body .tc-btn-boxed svg {\n\tfont-size: 1.6666em;\n}\n\n.tc-btn-boxed:hover {\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n}\n\nhtml body.tc-body .tc-btn-boxed:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded {\n\tfont-size: 0.5em;\n\tline-height: 2;\n\tpadding: 0em 0.3em 0.2em 0.4em;\n\tmargin: 1px;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour muted-foreground>>;\n\tcolor: <<colour background>>;\n\tborder-radius: 2em;\n}\n\nhtml body.tc-body .tc-btn-rounded svg {\n\tfont-size: 1.6666em;\n\tfill: <<colour background>>;\n}\n\n.tc-btn-rounded:hover {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tcolor: <<colour muted-foreground>>;\n}\n\nhtml body.tc-body .tc-btn-rounded:hover svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-icon svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-btn-text {\n\tpadding: 0;\n\tmargin: 0;\n}\n\n/* used for documentation \"fake\" buttons */\n.tc-btn-standard {\n\tline-height: 1.8;\n\tcolor: #667;\n\tbackground-color: #e0e0e0;\n\tborder: 1px solid #888;\n\tpadding: 2px 1px 2px 1px;\n\tmargin: 1px 4px 1px 4px;\n}\n\n.tc-btn-big-green {\n\tdisplay: inline-block;\n\tpadding: 8px;\n\tmargin: 4px 8px 4px 8px;\n\tbackground: <<colour download-background>>;\n\tcolor: <<colour download-foreground>>;\n\tfill: <<colour download-foreground>>;\n\tborder: none;\n\tborder-radius: 2px;\n\tfont-size: 1.2em;\n\tline-height: 1.4em;\n\ttext-decoration: none;\n}\n\n.tc-btn-big-green svg,\n.tc-btn-big-green img {\n\theight: 2em;\n\twidth: 2em;\n\tvertical-align: middle;\n\tfill: <<colour download-foreground>>;\n}\n\n.tc-primary-btn {\n \tbackground: <<colour primary>>;\n}\n\n.tc-sidebar-lists input {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-sidebar-lists button {\n\tcolor: <<colour sidebar-button-foreground>>;\n\tfill: <<colour sidebar-button-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini {\n\tcolor: <<colour sidebar-muted-foreground>>;\n}\n\n.tc-sidebar-lists button.tc-btn-mini:hover {\n\tcolor: <<colour sidebar-muted-foreground-hover>>;\n}\n\n.tc-sidebar-lists button small {\n\tcolor: <<colour foreground>>;\n}\n\nbutton svg.tc-image-button, button .tc-image-button img {\n\theight: 1em;\n\twidth: 1em;\n}\n\n.tc-unfold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 100%;\n\twidth: calc(100% + 2px);\n\tmargin-left: -43px;\n\ttext-align: center;\n\tborder-top: 2px solid <<colour tiddler-info-background>>;\n\tmargin-top: 4px;\n}\n\n.tc-unfold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n\tborder-top: 2px solid <<colour tiddler-info-border>>;\n}\n\n.tc-unfold-banner svg, .tc-fold-banner svg {\n\theight: 0.75em;\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-unfold-banner:hover svg, .tc-fold-banner:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n.tc-fold-banner {\n\tposition: absolute;\n\tpadding: 0;\n\tmargin: 0;\n\tbackground: none;\n\tborder: none;\n\twidth: 23px;\n\ttext-align: center;\n\tmargin-left: -35px;\n\ttop: 6px;\n\tbottom: 6px;\n}\n\n.tc-fold-banner:hover {\n\tbackground: <<colour tiddler-info-background>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-unfold-banner {\n\t\tposition: static;\n\t\twidth: calc(100% + 59px);\n\t}\n\n\t.tc-fold-banner {\n\t\twidth: 16px;\n\t\tmargin-left: -16px;\n\t\tfont-size: 0.75em;\n\t}\n\n}\n\n/*\n** Tags and missing tiddlers\n*/\n\n.tc-tag-list-item {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin-right: 7px;\n}\n\n.tc-tags-wrapper {\n\tmargin: 4px 0 14px 0;\n}\n\n.tc-missing-tiddler-label {\n\tfont-style: italic;\n\tfont-weight: normal;\n\tdisplay: inline-block;\n\tfont-size: 11.844px;\n\tline-height: 14px;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n}\n\n.tc-block-tags-dropdown > .tc-btn-invisible:hover {\n\tbackground-color: <<colour primary>>;\n}\n\nbutton.tc-tag-label, span.tc-tag-label {\n\tdisplay: inline-block;\n\tpadding: 0.16em 0.7em;\n\tfont-size: 0.9em;\n\tfont-weight: 400;\n\tline-height: 1.2em;\n\tcolor: <<colour tag-foreground>>;\n\twhite-space: nowrap;\n\tvertical-align: baseline;\n\tbackground-color: <<colour tag-background>>;\n\tborder-radius: 1em;\n}\n\n.tc-sidebar-scrollable .tc-tag-label {\n\ttext-shadow: none;\n}\n\n.tc-untagged-separator {\n\twidth: 10em;\n\tleft: 0;\n\tmargin-left: 0;\n\tborder: 0;\n\theight: 1px;\n\tbackground: <<colour tab-divider>>;\n}\n\nbutton.tc-untagged-label {\n\tbackground-color: <<colour untagged-background>>;\n}\n\n.tc-tag-label svg, .tc-tag-label img {\n\theight: 1em;\n\twidth: 1em;\n\tmargin-right: 3px; \n\tmargin-bottom: 1px;\n\tvertical-align: bottom;\n}\n\n.tc-edit-tags button.tc-remove-tag-button svg {\n\tfont-size: 0.7em;\n\tvertical-align: middle;\n}\n\n.tc-tag-manager-table .tc-tag-label {\n\twhite-space: normal;\n}\n\n.tc-tag-manager-tag {\n\twidth: 100%;\n}\n\nbutton.tc-btn-invisible.tc-remove-tag-button {\n\toutline: none;\n}\n\n.tc-tag-button-selected,\n.tc-list-item-selected a.tc-tiddlylink, a.tc-list-item-selected {\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour tiddler-background>>;\n}\n\n/*\n** Page layout\n*/\n\n.tc-topbar {\n\tposition: fixed;\n\tz-index: 1200;\n}\n\n.tc-topbar-left {\n\tleft: 29px;\n\ttop: 5px;\n}\n\n.tc-topbar-right {\n\ttop: 5px;\n\tright: 29px;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-topbar-right {\n\t\tright: 10px;\n\t}\n\n}\n\n.tc-topbar button {\n\tpadding: 8px;\n}\n\n.tc-topbar svg {\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-topbar button:hover svg {\n\tfill: <<colour foreground>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-show-sidebar-btn svg.tc-image-chevron-left, .tc-hide-sidebar-btn svg.tc-image-chevron-right {\n\t\ttransform: rotate(-90deg);\n\t}\n\n}\n\n.tc-sidebar-header {\n\tcolor: <<colour sidebar-foreground>>;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-sidebar-header .tc-title a.tc-tiddlylink-resolves {\n\tfont-weight: 300;\n}\n\n.tc-sidebar-header .tc-sidebar-lists p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-sidebar-header .tc-missing-tiddler-label {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-advanced-search input {\n\twidth: 60%;\n}\n\n.tc-search a svg {\n\twidth: 1.2em;\n\theight: 1.2em;\n\tvertical-align: middle;\n}\n\n.tc-page-controls {\n\tmargin-top: 14px;\n\tfont-size: 1.5em;\n}\n\n.tc-page-controls .tc-drop-down {\n  font-size: 1rem;\n}\n\n.tc-page-controls button {\n\tmargin-right: 0.5em;\n}\n\n.tc-page-controls a.tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-page-controls img {\n\twidth: 1em;\n}\n\n.tc-page-controls svg {\n\tfill: <<colour sidebar-controls-foreground>>;\n}\n\n.tc-page-controls button:hover svg, .tc-page-controls a:hover svg {\n\tfill: <<colour sidebar-controls-foreground-hover>>;\n}\n\n.tc-sidebar-lists .tc-menu-list-item {\n\twhite-space: nowrap;\n}\n\n.tc-menu-list-count {\n\tfont-weight: bold;\n}\n\n.tc-menu-list-subitem {\n\tpadding-left: 7px;\n}\n\n.tc-story-river {\n\tposition: relative;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-sidebar-header {\n\t\tpadding: 14px;\n\t\tmin-height: 32px;\n\t\tmargin-top: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\ttransition:  min-height {{$:/config/AnimationDuration}}ms ease-in-out, padding-top {{$:/config/AnimationDuration}}ms ease-in-out, padding-bottom {{$:/config/AnimationDuration}}ms ease-in-out;\n\t}\n\t\n\t<<if-no-sidebar \"\"\"\n\n\t\t.tc-sidebar-header {\n\t\t\tmin-height: 0;\n\t\t\tpadding-top: 0;\n\t\t\tpadding-bottom: 0;\n\t\t}\n\n\t\"\"\">>\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tpadding: 0;\n\t}\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-message-box {\n\t\tmargin: 21px -21px 21px -21px;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tposition: fixed;\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t\tbottom: 0;\n\t\tright: 0;\n\t\toverflow-y: auto;\n\t\toverflow-x: auto;\n\t\t-webkit-overflow-scrolling: touch;\n\t\tmargin: 0 0 0 -42px;\n\t\tpadding: 71px 0 28px 42px;\n\t}\n\n\thtml[dir=\"rtl\"] .tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tright: {{$:/themes/tiddlywiki/vanilla/metrics/storyright}};\n\t}\n\n\t.tc-story-river {\n\t\tposition: relative;\n\t\tleft: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\ttop: {{$:/themes/tiddlywiki/vanilla/metrics/storytop}};\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/storywidth}};\n\t\tpadding: 42px 42px 42px 42px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-story-river {\n\t\twidth: calc(100% - {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}});\n\t}\n\n\">>\n\n\t.tc-story-river.tc-static-story-river {\n\t\tmargin-right: 0;\n\t\tpadding-right: 42px;\n\t}\n\n}\n\n@media print {\n\n\tbody.tc-body {\n\t\tbackground-color: transparent;\n\t}\n\n\t.tc-sidebar-header, .tc-topbar {\n\t\tdisplay: none;\n\t}\n\n\t.tc-story-river {\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t}\n\n\t.tc-story-river .tc-tiddler-frame {\n\t\tmargin: 0;\n\t\tborder: none;\n\t\tpadding: 0;\n\t}\n}\n\n/*\n** Tiddler styles\n*/\n\n.tc-tiddler-frame {\n\tposition: relative;\n\tmargin-bottom: 28px;\n\tbackground-color: <<colour tiddler-background>>;\n\tborder: 1px solid <<colour tiddler-border>>;\n}\n\n{{$:/themes/tiddlywiki/vanilla/sticky}}\n\n.tc-tiddler-info {\n\tpadding: 14px 42px 14px 42px;\n\tbackground-color: <<colour tiddler-info-background>>;\n\tborder-top: 1px solid <<colour tiddler-info-border>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-border>>;\n}\n\n.tc-tiddler-info p {\n\tmargin-top: 3px;\n\tmargin-bottom: 3px;\n}\n\n.tc-tiddler-info .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour tiddler-info-tab-background>>;\n\tborder-bottom: 1px solid <<colour tiddler-info-tab-background>>;\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\n\t.tc-tiddler-info {\n\t\tpadding: 14px 14px 14px 14px;\n\t}\n\n}\n\n.tc-view-field-table {\n\twidth: 100%;\n}\n\n.tc-view-field-name {\n\twidth: 1%; /* Makes this column be as narrow as possible */\n\ttext-align: right;\n\tfont-style: italic;\n\tfont-weight: 200;\n}\n\n.tc-view-field-value {\n}\n\n@media (max-width: <<sidebarbreakpoint-minus-one>>) {\n\t.tc-tiddler-frame {\n\t\tpadding: 14px 14px 14px 14px;\n\t\tmargin-bottom: .5em;\n\t}\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -14px 0 -14px;\n\t}\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\t.tc-tiddler-frame {\n\t\tpadding: 28px 42px 42px 42px;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth}};\n\t\tborder-radius: 2px;\n\t}\n\n<<if-no-sidebar \"\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\">>\n\n\t.tc-tiddler-info {\n\t\tmargin: 0 -42px 0 -42px;\n\t}\n}\n\n.tc-site-title,\n.tc-titlebar {\n\tfont-weight: 300;\n\tfont-size: 2.35em;\n\tline-height: 1.35em;\n\tcolor: <<colour tiddler-title-foreground>>;\n\tmargin: 0;\n}\n\n.tc-site-title {\n\tcolor: <<colour site-title-foreground>>;\n}\n\n.tc-tiddler-title-icon {\n\tvertical-align: middle;\n\tmargin-right: .1em;\n}\n\n.tc-system-title-prefix {\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-titlebar h2 {\n\tfont-size: 1em;\n\tdisplay: inline;\n}\n\n.tc-titlebar img {\n\theight: 1em;\n}\n\n.tc-subtitle {\n\tfont-size: 0.9em;\n\tcolor: <<colour tiddler-subtitle-foreground>>;\n\tfont-weight: 300;\n}\n\n.tc-subtitle .tc-tiddlylink {\n\tmargin-right: .3em;\n}\n\n.tc-tiddler-missing .tc-title {\n  font-style: italic;\n  font-weight: normal;\n}\n\n.tc-tiddler-frame .tc-tiddler-controls {\n\tfloat: right;\n}\n\n.tc-tiddler-controls .tc-drop-down {\n\tfont-size: 0.6em;\n}\n\n.tc-tiddler-controls .tc-drop-down .tc-drop-down {\n\tfont-size: 1em;\n}\n\n.tc-tiddler-controls > span > button,\n.tc-tiddler-controls > span > span > button,\n.tc-tiddler-controls > span > span > span > button {\n\tvertical-align: baseline;\n\tmargin-left:5px;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img,\n.tc-search button svg, .tc-search a svg {\n\tfill: <<colour tiddler-controls-foreground>>;\n}\n\n.tc-tiddler-controls button svg, .tc-tiddler-controls button img {\n\theight: 0.75em;\n}\n\n.tc-search button svg, .tc-search a svg {\n    height: 1.2em;\n    width: 1.2em;\n    margin: 0 0.25em;\n}\n\n.tc-tiddler-controls button.tc-selected svg,\n.tc-page-controls button.tc-selected svg  {\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n}\n\n.tc-tiddler-controls button.tc-btn-invisible:hover svg,\n.tc-search button:hover svg, .tc-search a:hover svg {\n\tfill: <<colour tiddler-controls-foreground-hover>>;\n}\n\n@media print {\n\t.tc-tiddler-controls {\n\t\tdisplay: none;\n\t}\n}\n\n.tc-tiddler-help { /* Help prompts within tiddler template */\n\tcolor: <<colour muted-foreground>>;\n\tmargin-top: 14px;\n}\n\n.tc-tiddler-help a.tc-tiddlylink {\n\tcolor: <<colour very-muted-foreground>>;\n}\n\n.tc-tiddler-frame .tc-edit-texteditor {\n\twidth: 100%;\n\tmargin: 4px 0 4px 0;\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor,\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tpadding: 3px 3px 3px 3px;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tline-height: 1.3em;\n\t-webkit-appearance: none;\n\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\n}\n\n.tc-tiddler-frame input.tc-edit-texteditor,\n.tc-tiddler-frame textarea.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-editor-background>>;\n}\n\n.tc-tiddler-frame iframe.tc-edit-texteditor {\n\tbackground-color: <<colour tiddler-background>>;\n}\n\n.tc-tiddler-frame .tc-binary-warning {\n\twidth: 100%;\n\theight: 5em;\n\ttext-align: center;\n\tpadding: 3em 3em 6em 3em;\n\tbackground: <<colour alert-background>>;\n\tborder: 1px solid <<colour alert-border>>;\n}\n\ncanvas.tc-edit-bitmapeditor  {\n\tborder: 6px solid <<colour tiddler-editor-border-image>>;\n\tcursor: crosshair;\n\t-moz-user-select: none;\n\t-webkit-user-select: none;\n\t-ms-user-select: none;\n\tmargin-top: 6px;\n\tmargin-bottom: 6px;\n}\n\n.tc-edit-bitmapeditor-width {\n\tdisplay: block;\n}\n\n.tc-edit-bitmapeditor-height {\n\tdisplay: block;\n}\n\n.tc-tiddler-body {\n\tclear: both;\n}\n\n.tc-tiddler-frame .tc-tiddler-body {\n\tfont-size: {{$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize}};\n\tline-height: {{$:/themes/tiddlywiki/vanilla/metrics/bodylineheight}};\n}\n\n.tc-titlebar, .tc-tiddler-edit-title {\n\toverflow: hidden; /* https://github.com/Jermolene/TiddlyWiki5/issues/282 */\n}\n\nhtml body.tc-body.tc-single-tiddler-window {\n\tmargin: 1em;\n\tbackground: <<colour tiddler-background>>;\n}\n\n.tc-single-tiddler-window img,\n.tc-single-tiddler-window svg,\n.tc-single-tiddler-window canvas,\n.tc-single-tiddler-window embed,\n.tc-single-tiddler-window iframe {\n\tmax-width: 100%;\n}\n\n/*\n** Editor\n*/\n\n.tc-editor-toolbar {\n\tmargin-top: 8px;\n}\n\n.tc-editor-toolbar button {\n\tvertical-align: middle;\n\tbackground-color: <<colour tiddler-controls-foreground>>;\n\tcolor: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour tiddler-controls-foreground-selected>>;\n\tborder-radius: 4px;\n\tpadding: 3px;\n\tmargin: 2px 0 2px 4px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-adjunct {\n\tmargin-left: 1px;\n\twidth: 1em;\n\tborder-radius: 8px;\n}\n\n.tc-editor-toolbar button.tc-text-editor-toolbar-item-start-group {\n\tmargin-left: 11px;\n}\n\n.tc-editor-toolbar button.tc-selected {\n\tbackground-color: <<colour primary>>;\n}\n\n.tc-editor-toolbar button svg {\n\twidth: 1.6em;\n\theight: 1.2em;\n}\n\n.tc-editor-toolbar button:hover {\n\tbackground-color: <<colour tiddler-controls-foreground-selected>>;\n\tfill: <<colour background>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more {\n\twhite-space: normal;\n}\n\n.tc-editor-toolbar .tc-text-editor-toolbar-more button {\n\tdisplay: inline-block;\n\tpadding: 3px;\n\twidth: auto;\n}\n\n.tc-editor-toolbar .tc-search-results {\n\tpadding: 0;\n}\n\n/*\n** Adjustments for fluid-fixed mode\n*/\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n<<if-fluid-fixed text:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 0;\n\t\tposition: relative;\n\t\twidth: auto;\n\t\tleft: 0;\n\t\tmargin-left: {{$:/themes/tiddlywiki/vanilla/metrics/storyleft}};\n\t\tmargin-right: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\t.tc-tiddler-frame {\n\t\twidth: 100%;\n\t}\n\n\t.tc-sidebar-scrollable {\n\t\tleft: auto;\n\t\tbottom: 0;\n\t\tright: 0;\n\t\twidth: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth}};\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 42px);\n\t}\n\n\"\"\" hiddenSidebarText:\"\"\"\n\n\t.tc-story-river {\n\t\tpadding-right: 3em;\n\t\tmargin-right: 0;\n\t}\n\n\tbody.tc-body .tc-storyview-zoomin-tiddler {\n\t\twidth: 100%;\n\t\twidth: calc(100% - 84px);\n\t}\n\n\"\"\">>\n\n}\n\n/*\n** Toolbar buttons\n*/\n\n.tc-page-controls svg.tc-image-new-button {\n  fill: <<colour toolbar-new-button>>;\n}\n\n.tc-page-controls svg.tc-image-options-button {\n  fill: <<colour toolbar-options-button>>;\n}\n\n.tc-page-controls svg.tc-image-save-button {\n  fill: <<colour toolbar-save-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-info-button {\n  fill: <<colour toolbar-info-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-edit-button {\n  fill: <<colour toolbar-edit-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-close-button {\n  fill: <<colour toolbar-close-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-delete-button {\n  fill: <<colour toolbar-delete-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-cancel-button {\n  fill: <<colour toolbar-cancel-button>>;\n}\n\n.tc-tiddler-controls button svg.tc-image-done-button {\n  fill: <<colour toolbar-done-button>>;\n}\n\n/*\n** Tiddler edit mode\n*/\n\n.tc-tiddler-edit-frame em.tc-edit {\n\tcolor: <<colour muted-foreground>>;\n\tfont-style: normal;\n}\n\n.tc-edit-type-dropdown a.tc-tiddlylink-missing {\n\tfont-style: normal;\n}\n\n.tc-type-selector .tc-edit-typeeditor {\n\twidth: auto;\n}\n\n.tc-type-selector-dropdown-wrapper {\n\tdisplay: inline-block;\n}\n\n<<set-type-selector-min-width>>\n\n.tc-edit-tags {\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tpadding: 4px 8px 4px 8px;\n}\n\n.tc-edit-add-tag {\n\tdisplay: inline-block;\n}\n\n.tc-edit-add-tag .tc-add-tag-name input {\n\twidth: 50%;\n}\n\n.tc-edit-add-tag .tc-keyboard {\n\tdisplay:inline;\n}\n\n.tc-edit-tags .tc-tag-label {\n\tdisplay: inline-block;\n}\n\n.tc-edit-tags-list {\n\tmargin: 14px 0 14px 0;\n}\n\n.tc-remove-tag-button {\n\tpadding-left: 4px;\n}\n\n.tc-tiddler-preview {\n\toverflow: auto;\n}\n\n.tc-tiddler-preview-preview {\n\tfloat: right;\n\twidth: 49%;\n\tborder: 1px solid <<colour tiddler-editor-border>>;\n\tmargin: 4px 0 3px 3px;\n\tpadding: 3px 3px 3px 3px;\n}\n\n<<if-editor-height-fixed then:\"\"\"\n\n.tc-tiddler-preview-preview {\n\toverflow-y: scroll;\n\theight: {{$:/config/TextEditor/EditorHeight/Height}};\n}\n\n\"\"\">>\n\n.tc-tiddler-frame .tc-tiddler-preview .tc-edit-texteditor {\n\twidth: 49%;\n}\n\n.tc-tiddler-frame .tc-tiddler-preview canvas.tc-edit-bitmapeditor {\n\tmax-width: 49%;\n}\n\n.tc-edit-fields {\n\twidth: 100%;\n}\n\n.tc-edit-fields.tc-edit-fields-small {\n\tmargin-top: 0;\n\tmargin-bottom: 0;\n}\n\n.tc-edit-fields table, .tc-edit-fields tr, .tc-edit-fields td {\n\tborder: none;\n\tpadding: 4px;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(odd) {\n\tbackground-color: <<colour tiddler-editor-fields-odd>>;\n}\n\n.tc-edit-fields > tbody > .tc-edit-field:nth-child(even) {\n\tbackground-color: <<colour tiddler-editor-fields-even>>;\n}\n\n.tc-edit-field-name {\n\ttext-align: right;\n}\n\n.tc-edit-field-value input {\n\twidth: 100%;\n}\n\n.tc-edit-field-remove {\n}\n\n.tc-edit-field-remove svg {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n\tvertical-align: middle;\n}\n\n.tc-edit-field-add-name-wrapper input.tc-edit-texteditor {\n\twidth: auto;\n}\n\n.tc-edit-field-add-name-wrapper {\n\tdisplay: inline-block;\n}\n\n.tc-edit-field-add-value {\n\tdisplay: inline-block;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-edit-field-add-value {\n\t\twidth: 35%;\n\t}\n\n}\n\n.tc-edit-field-add-button {\n\tdisplay: inline-block;\n\twidth: 10%;\n}\n\n/*\n** Storyview Classes\n*/\n\n.tc-viewswitcher .tc-image-button {\n\tmargin-right: .3em;\n}\n\n.tc-storyview-zoomin-tiddler {\n\tposition: absolute;\n\tdisplay: block;\n\twidth: 100%;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-storyview-zoomin-tiddler {\n\t\twidth: calc(100% - 84px);\n\t}\n\n}\n\n/*\n** Dropdowns\n*/\n\n.tc-btn-dropdown {\n\ttext-align: left;\n}\n\n.tc-btn-dropdown svg, .tc-btn-dropdown img {\n\theight: 1em;\n\twidth: 1em;\n\tfill: <<colour muted-foreground>>;\n}\n\n.tc-drop-down-wrapper {\n\tposition: relative;\n}\n\n.tc-drop-down {\n\tmin-width: 380px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\ttext-shadow: none;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-drop-down {\n\tmargin-left: 14px;\n}\n\n.tc-drop-down button svg, .tc-drop-down a svg  {\n\tfill: <<colour foreground>>;\n}\n\n.tc-drop-down button.tc-btn-invisible:hover svg {\n\tfill: <<colour background>>;\n}\n\n.tc-drop-down .tc-drop-down-info {\n\tpadding-left: 14px;\n}\n\n.tc-drop-down p {\n\tpadding: 0 14px 0 14px;\n}\n\n.tc-drop-down svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-drop-down img {\n\twidth: 1em;\n}\n\n.tc-drop-down a, .tc-drop-down button {\n\tdisplay: block;\n\tpadding: 0 14px 0 14px;\n\twidth: 100%;\n\ttext-align: left;\n\tcolor: <<colour foreground>>;\n\tline-height: 1.4;\n}\n\n.tc-drop-down .tc-tab-set .tc-tab-buttons button {\n\tdisplay: inline-block;\n    width: auto;\n    margin-bottom: 0px;\n    border-bottom-left-radius: 0;\n    border-bottom-right-radius: 0;\n}\n\n.tc-drop-down .tc-prompt {\n\tpadding: 0 14px;\n}\n\n.tc-drop-down .tc-chooser {\n\tborder: none;\n}\n\n.tc-drop-down .tc-chooser .tc-swatches-horiz {\n\tfont-size: 0.4em;\n\tpadding-left: 1.2em;\n}\n\n.tc-drop-down .tc-file-input-wrapper {\n\twidth: 100%;\n}\n\n.tc-drop-down .tc-file-input-wrapper button {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-drop-down a:hover, .tc-drop-down button:hover, .tc-drop-down .tc-file-input-wrapper:hover button {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-tab-buttons button {\n\tbackground-color: <<colour dropdown-tab-background>>;\n}\n\n.tc-drop-down .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour dropdown-tab-background-selected>>;\n\tborder-bottom: 1px solid <<colour dropdown-tab-background-selected>>;\n}\n\n.tc-drop-down-bullet {\n\tdisplay: inline-block;\n\twidth: 0.5em;\n}\n\n.tc-drop-down .tc-tab-contents a {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-block-dropdown-wrapper {\n\tposition: relative;\n}\n\n.tc-block-dropdown {\n\tposition: absolute;\n\tmin-width: 220px;\n\tborder: 1px solid <<colour dropdown-border>>;\n\tbackground-color: <<colour dropdown-background>>;\n\tpadding: 7px 0;\n\tmargin: 4px 0 0 0;\n\twhite-space: nowrap;\n\tz-index: 1000;\n\ttext-shadow: none;\n}\n\n.tc-block-dropdown.tc-search-drop-down {\n\tmargin-left: -12px;\n}\n\n.tc-block-dropdown a {\n\tdisplay: block;\n\tpadding: 4px 14px 4px 14px;\n}\n\n.tc-block-dropdown.tc-search-drop-down a {\n\tdisplay: block;\n\tpadding: 0px 10px 0px 10px;\n}\n\n.tc-drop-down .tc-dropdown-item-plain,\n.tc-block-dropdown .tc-dropdown-item-plain {\n\tpadding: 4px 14px 4px 7px;\n}\n\n.tc-drop-down .tc-dropdown-item,\n.tc-block-dropdown .tc-dropdown-item {\n\tpadding: 4px 14px 4px 7px;\n\tcolor: <<colour muted-foreground>>;\n}\n\n.tc-block-dropdown a.tc-tiddlylink:hover {\n\tcolor: <<colour tiddler-link-background>>;\n\tbackground-color: <<colour tiddler-link-foreground>>;\n\ttext-decoration: none;\n}\n\n.tc-search-results {\n\tpadding: 0 7px 0 7px;\n}\n\n.tc-image-chooser, .tc-colour-chooser {\n\twhite-space: normal;\n}\n\n.tc-image-chooser a,\n.tc-colour-chooser a {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\ttext-align: center;\n\tposition: relative;\n}\n\n.tc-image-chooser a {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 2px;\n\tmargin: 2px;\n\twidth: 4em;\n\theight: 4em;\n}\n\n.tc-colour-chooser a {\n\tpadding: 3px;\n\twidth: 2em;\n\theight: 2em;\n\tvertical-align: middle;\n}\n\n.tc-image-chooser a:hover,\n.tc-colour-chooser a:hover {\n\tbackground: <<colour primary>>;\n\tpadding: 0px;\n\tborder: 3px solid <<colour primary>>;\n}\n\n.tc-image-chooser a svg,\n.tc-image-chooser a img {\n\tdisplay: inline-block;\n\twidth: auto;\n\theight: auto;\n\tmax-width: 3.5em;\n\tmax-height: 3.5em;\n\tposition: absolute;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\tright: 0;\n\tmargin: auto;\n}\n\n/*\n** Modals\n*/\n\n.tc-modal-wrapper {\n\tposition: fixed;\n\toverflow: auto;\n\toverflow-y: scroll;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 900;\n}\n\n.tc-modal-backdrop {\n\tposition: fixed;\n\ttop: 0;\n\tright: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 1000;\n\tbackground-color: <<colour modal-backdrop>>;\n}\n\n.tc-modal {\n\tz-index: 1100;\n\tbackground-color: <<colour modal-background>>;\n\tborder: 1px solid <<colour modal-border>>;\n}\n\n@media (max-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 1em;\n\t\tleft: 1em;\n\t\tright: 1em;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n@media (min-width: 55em) {\n\t.tc-modal {\n\t\tposition: fixed;\n\t\ttop: 2em;\n\t\tleft: 25%;\n\t\twidth: 50%;\n\t}\n\n\t.tc-modal-body {\n\t\toverflow-y: auto;\n\t\tmax-height: 400px;\n\t\tmax-height: 60vh;\n\t}\n}\n\n.tc-modal-header {\n\tpadding: 9px 15px;\n\tborder-bottom: 1px solid <<colour modal-header-border>>;\n}\n\n.tc-modal-header h3 {\n\tmargin: 0;\n\tline-height: 30px;\n}\n\n.tc-modal-header img, .tc-modal-header svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-modal-body {\n\tpadding: 15px;\n}\n\n.tc-modal-footer {\n\tpadding: 14px 15px 15px;\n\tmargin-bottom: 0;\n\ttext-align: right;\n\tbackground-color: <<colour modal-footer-background>>;\n\tborder-top: 1px solid <<colour modal-footer-border>>;\n}\n\n\n/*\n** Centered modals\n*/\n.tc-modal-centered .tc-modal {\n\twidth: auto;\n\ttop: 50%;\n\tleft: 50%;\n\ttransform: translate(-50%, -50%) !important;\n}\n\n/*\n** Notifications\n*/\n\n.tc-notification {\n\tposition: fixed;\n\ttop: 14px;\n\tright: 42px;\n\tz-index: 1300;\n\tmax-width: 280px;\n\tpadding: 0 14px 0 14px;\n\tbackground-color: <<colour notification-background>>;\n\tborder: 1px solid <<colour notification-border>>;\n}\n\n/*\n** Tabs\n*/\n\n.tc-tab-set.tc-vertical {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tab-buttons {\n\tfont-size: 0.85em;\n\tpadding-top: 1em;\n\tmargin-bottom: -2px;\n}\n\n.tc-tab-buttons.tc-vertical  {\n\tz-index: 100;\n\tdisplay: block;\n\tpadding-top: 14px;\n\tvertical-align: top;\n\ttext-align: right;\n\tmargin-bottom: inherit;\n\tmargin-right: -1px;\n\tmax-width: 33%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n}\n\n.tc-tab-buttons button.tc-tab-selected {\n\tcolor: <<colour tab-foreground-selected>>;\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-left: 1px solid <<colour tab-border-selected>>;\n\tborder-top: 1px solid <<colour tab-border-selected>>;\n\tborder-right: 1px solid <<colour tab-border-selected>>;\n}\n\n.tc-tab-buttons button {\n\tcolor: <<colour tab-foreground>>;\n\tpadding: 3px 5px 3px 5px;\n\tmargin-right: 0.3em;\n\tfont-weight: 300;\n\tborder: none;\n\tbackground: inherit;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-right: 1px solid <<colour tab-border>>;\n\tborder-top-left-radius: 2px;\n\tborder-top-right-radius: 2px;\n\tborder-bottom-left-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button {\n\tdisplay: block;\n\twidth: 100%;\n\tmargin-top: 3px;\n\tmargin-right: 0;\n\ttext-align: right;\n\tbackground-color: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tborder-right: none;\n\tborder-top-left-radius: 2px;\n\tborder-bottom-left-radius: 2px;\n\tborder-top-right-radius: 0;\n\tborder-bottom-right-radius: 0;\n}\n\n.tc-tab-buttons.tc-vertical button.tc-tab-selected {\n\tbackground-color: <<colour tab-background-selected>>;\n\tborder-right: 1px solid <<colour tab-background-selected>>;\n}\n\n.tc-tab-divider {\n\tborder-top: 1px solid <<colour tab-divider>>;\n}\n\n.tc-tab-divider.tc-vertical  {\n\tdisplay: none;\n}\n\n.tc-tab-content {\n\tmargin-top: 14px;\n}\n\n.tc-tab-content.tc-vertical  {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-top: 0;\n\tpadding-left: 14px;\n\tborder-left: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 70%;\n\tflex: 1 0 70%;\n\toverflow: auto;\n}\n\n.tc-sidebar-lists .tc-tab-buttons {\n\tmargin-bottom: -1px;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tcolor: <<colour sidebar-tab-foreground-selected>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border-selected>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border-selected>>;\n}\n\n.tc-sidebar-lists .tc-tab-buttons button {\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tcolor: <<colour sidebar-tab-foreground>>;\n\tborder-left: 1px solid <<colour sidebar-tab-border>>;\n\tborder-top: 1px solid <<colour sidebar-tab-border>>;\n\tborder-right: 1px solid <<colour sidebar-tab-border>>;\n}\n\n.tc-sidebar-lists .tc-tab-divider {\n\tborder-top: 1px solid <<colour sidebar-tab-divider>>;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\n\tdisplay: block;\n\twidth: 100%;\n\tbackground-color: <<colour sidebar-tab-background>>;\n\tborder-top: none;\n\tborder-left: none;\n\tborder-bottom: none;\n\tborder-right: 1px solid #ccc;\n\tmargin-bottom: inherit;\n}\n\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\n\tbackground-color: <<colour sidebar-tab-background-selected>>;\n\tborder: none;\n}\n\n/*\n** Manager\n*/\n\n.tc-manager-wrapper {\n\t\n}\n\n.tc-manager-controls {\n\t\n}\n\n.tc-manager-control {\n\tmargin: 0.5em 0;\n}\n\n.tc-manager-list {\n\twidth: 100%;\n\tborder-top: 1px solid <<colour muted-foreground>>;\n\tborder-left: 1px solid <<colour muted-foreground>>;\n\tborder-right: 1px solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item {\n\n}\n\n.tc-manager-list-item-heading {\n    display: block;\n    width: 100%;\n    text-align: left;\t\n\tborder-bottom: 1px solid <<colour muted-foreground>>;\n\tpadding: 3px;\n}\n\n.tc-manager-list-item-heading-selected {\n\tfont-weight: bold;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n\tbackground-color: <<colour foreground>>;\n}\n\n.tc-manager-list-item-heading:hover {\n\tbackground: <<colour primary>>;\n\tcolor: <<colour background>>;\n}\n\n.tc-manager-list-item-content {\n\tdisplay: flex;\n}\n\n.tc-manager-list-item-content-sidebar {\n    flex: 1 0;\n    background: <<colour tiddler-editor-background>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n    white-space: nowrap;\n}\n\n.tc-manager-list-item-content-item-heading {\n\tdisplay: block;\n\twidth: 100%;\n\ttext-align: left;\n    background: <<colour muted-foreground>>;\n\ttext-transform: uppercase;\n\tfont-size: 0.6em;\n\tfont-weight: bold;\n    padding: 0.5em 0 0.5em 0;\n}\n\n.tc-manager-list-item-content-item-body {\n\tpadding: 0 0.5em 0 0.5em;\n}\n\n.tc-manager-list-item-content-item-body > pre {\n\tmargin: 0.5em 0 0.5em 0;\n\tborder: none;\n\tbackground: inherit;\n}\n\n.tc-manager-list-item-content-tiddler {\n    flex: 3 1;\n    border-left: 0.5em solid <<colour muted-foreground>>;\n    border-right: 0.5em solid <<colour muted-foreground>>;\n    border-bottom: 0.5em solid <<colour muted-foreground>>;\n}\n\n.tc-manager-list-item-content-item-body > table {\n\tborder: none;\n\tpadding: 0;\n\tmargin: 0;\n}\n\n.tc-manager-list-item-content-item-body > table td {\n\tborder: none;\n}\n\n.tc-manager-icon-editor > button {\n\twidth: 100%;\n}\n\n.tc-manager-icon-editor > button > svg,\n.tc-manager-icon-editor > button > button {\n\twidth: 100%;\n\theight: auto;\n}\n\n/*\n** Import table\n*/\n\n.tc-import-table {\n\twidth: 100%;\n}\n\n.tc-import-table svg.tc-image-edit-button {\n\tmax-width: unset;\n}\n\n.tc-import-table th:first-of-type {\n\twidth: 10%;\n}\n\n.tc-import-table th:last-of-type {\n\twidth: 30%;\n}\n\n.tc-import-table .tc-row-disabled {\n\tbackground: <<colour very-muted-foreground>>10;\n\topacity: 0.8;\n}\n\n.tc-import-table .tc-row-warning {\n\tbackground: <<colour diff-delete-background>>50;\n}\n\n/*\n** Alerts\n*/\n\n.tc-alerts {\n\tposition: fixed;\n\ttop: 28px;\n\tleft: 0;\n\tright: 0;\n\tmax-width: 50%;\n\tz-index: 20000;\n}\n\n.tc-alert {\n\tposition: relative;\n\tmargin: 14px;\n\tpadding: 7px;\n\tborder: 1px solid <<colour alert-border>>;\n\tbackground-color: <<colour alert-background>>;\n}\n\n.tc-alert-toolbar {\n\tposition: absolute;\n\ttop: 7px;\n\tright: 7px;\n    line-height: 0;\n}\n\n.tc-alert-toolbar svg {\n\tfill: <<colour alert-muted-foreground>>;\n}\n\n.tc-alert-subtitle {\n\tcolor: <<colour alert-muted-foreground>>;\n\tfont-weight: bold;\n    font-size: 0.8em;\n    margin-bottom: 0.5em;\n}\n\n.tc-alert-body > p {\n\tmargin: 0;\n}\n\n.tc-alert-highlight {\n\tcolor: <<colour alert-highlight>>;\n}\n\n@media (min-width: <<sidebarbreakpoint>>) {\n\n\t.tc-static-alert {\n\t\tposition: relative;\n\t}\n\n\t.tc-static-alert-inner {\n\t\tposition: absolute;\n\t\tz-index: 100;\n\t}\n\n}\n\n.tc-static-alert-inner {\n\tpadding: 0 2px 2px 42px;\n\tcolor: <<colour static-alert-foreground>>;\n}\n\n/*\n** Floating drafts list\n*/\n\n.tc-drafts-list {\n\tz-index: 2000;\n\tposition: fixed;\n\tfont-size: 0.8em;\n\tleft: 0;\n\tbottom: 0;\n}\n\n.tc-drafts-list a {\n\tmargin: 0 0.5em;\n\tpadding: 4px 4px;\n\tborder-top-left-radius: 4px;\n\tborder-top-right-radius: 4px;\n\tborder: 1px solid <<colour background>>;\n\tborder-bottom-none;\n\tbackground: <<colour dirty-indicator>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a:hover {\n\ttext-decoration: none;\n\tbackground: <<colour foreground>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour background>>;\n}\n\n.tc-drafts-list a svg {\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: text-bottom;\n}\n\n/*\n** Control panel\n*/\n\n.tc-control-panel td {\n\tpadding: 4px;\n}\n\n.tc-control-panel table, .tc-control-panel table input, .tc-control-panel table textarea {\n\twidth: 100%;\n}\n\n.tc-plugin-info {\n\tdisplay: flex;\n\tborder: 1px solid <<colour muted-foreground>>;\n\tfill: <<colour muted-foreground>>;\n\tbackground-color: <<colour background>>;\n\tmargin: 0.5em 0 0.5em 0;\n\tpadding: 4px;\n    align-items: center;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info {\n    margin: 0.5em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugin-indicator {\n\tmargin: -16px 1em 0 2em;\n}\n\n.tc-plugin-info-sub-plugin-indicator button {\n\tcolor: <<colour background>>;\n\tbackground: <<colour foreground>>;\n\tborder-radius: 8px;\n    padding: 2px 7px;\n    font-size: 0.75em;\n}\n\n.tc-plugin-info-sub-plugins .tc-plugin-info-dropdown {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-plugin-info-disabled {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n\tbackground: repeating-linear-gradient(45deg, #ff0, #ff0 10px, #eee 10px, #eee 20px);\n}\n\n.tc-plugin-info-disabled:hover {\n\tbackground: -webkit-repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n\tbackground: repeating-linear-gradient(45deg, #aa0, #aa0 10px, #888 10px, #888 20px);\n}\n\na.tc-tiddlylink.tc-plugin-info:hover {\n\ttext-decoration: none;\n\tbackground-color: <<colour primary>>;\n\tcolor: <<colour background>>;\n\tfill: <<colour foreground>>;\n}\n\na.tc-tiddlylink.tc-plugin-info:hover > .tc-plugin-info-chunk > svg {\n\tfill: <<colour background>>;\n}\n\n.tc-plugin-info-chunk {\n    margin: 2px;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon {\n\tflex-grow: 0;\n\tflex-shrink: 0;\n\tline-height: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description {\n\tflex-grow: 1;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-buttons {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tflex-grow: 0;\n\tflex-shrink: 0;\n    text-align: right;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h1 {\n\tfont-size: 1em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description h2 {\n\tfont-size: 0.8em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-description div {\n\tfont-size: 0.7em;\n\tline-height: 1.2;\n\tmargin: 2px 0 2px 0;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-toggle img, .tc-plugin-info-chunk.tc-plugin-info-toggle svg {\n\twidth: 1em;\n\theight: 1em;\n}\n\n.tc-plugin-info-chunk.tc-plugin-info-icon img, .tc-plugin-info-chunk.tc-plugin-info-icon svg {\n\twidth: 2em;\n\theight: 2em;\n}\n\n.tc-plugin-info-dropdown {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tbackground: <<colour background>>;\n\tmargin-top: -8px;\n}\n\n.tc-plugin-info-dropdown-message {\n\tbackground: <<colour message-background>>;\n\tpadding: 0.5em 1em 0.5em 1em;\n\tfont-weight: bold;\n\tfont-size: 0.8em;\n}\n\n.tc-plugin-info-dropdown-body {\n\tpadding: 1em 1em 0 1em;\n\tbackground: <<colour background>>;\n}\n\n.tc-plugin-info-sub-plugins {\n\tpadding: 0.5em;\n    margin: 0 1em 1em 1em;\n\tbackground: <<colour notification-background>>;\n}\n\n.tc-install-plugin {\n\tfont-weight: bold;\n\tbackground: green;\n\tcolor: white;\n\tfill: white;\n\tborder-radius: 4px;\n\tpadding: 3px;\n}\n\n.tc-install-plugin.tc-reinstall-downgrade {\n\tbackground: red;\n}\n\n.tc-install-plugin.tc-reinstall {\n\tbackground: blue;\n}\n\n.tc-install-plugin.tc-reinstall-upgrade {\n\tbackground: orange;\n}\n\n.tc-check-list {\n\tline-height: 2em;\n}\n\n.tc-check-list .tc-image-button {\n\theight: 1.5em;\n}\n\n/*\n** Message boxes\n*/\n\n.tc-message-box {\n\tborder: 1px solid <<colour message-border>>;\n\tbackground: <<colour message-background>>;\n\tpadding: 0px 21px 0px 21px;\n\tfont-size: 12px;\n\tline-height: 18px;\n\tcolor: <<colour message-foreground>>;\n}\n\n.tc-message-box svg {\n\twidth: 1em;\n\theight: 1em;\n    vertical-align: text-bottom;\n}\n\n/*\n** Pictures\n*/\n\n.tc-bordered-image {\n\tborder: 1px solid <<colour muted-foreground>>;\n\tpadding: 5px;\n\tmargin: 5px;\n}\n\n/*\n** Floats\n*/\n\n.tc-float-right {\n\tfloat: right;\n}\n\n/*\n** Chooser\n*/\n\n.tc-chooser {\n\tborder-right: 1px solid <<colour table-header-background>>;\n\tborder-left: 1px solid <<colour table-header-background>>;\n}\n\n\n.tc-chooser-item {\n\tborder-bottom: 1px solid <<colour table-header-background>>;\n\tborder-top: 1px solid <<colour table-header-background>>;\n\tpadding: 2px 4px 2px 14px;\n}\n\n.tc-drop-down .tc-chooser-item {\n\tpadding: 2px;\n}\n\n.tc-chosen,\n.tc-chooser-item:hover {\n\tbackground-color: <<colour table-header-background>>;\n\tborder-color: <<colour table-footer-background>>;\n}\n\n.tc-chosen .tc-tiddlylink {\n\tcursor:default;\n}\n\n.tc-chooser-item .tc-tiddlylink {\n\tdisplay: block;\n\ttext-decoration: none;\n\tbackground-color: transparent;\n}\n\n.tc-chooser-item:hover .tc-tiddlylink:hover {\n\ttext-decoration: none;\n}\n\n.tc-drop-down .tc-chosen .tc-tiddlylink,\n.tc-drop-down .tc-chooser-item .tc-tiddlylink:hover {\n\tcolor: <<colour foreground>>;\n}\n\n.tc-chosen > .tc-tiddlylink:before {\n\tmargin-left: -10px;\n\tposition: relative;\n\tcontent: \"» \";\n}\n\n.tc-chooser-item svg,\n.tc-chooser-item img{\n\twidth: 1em;\n\theight: 1em;\n\tvertical-align: middle;\n}\n\n.tc-language-chooser .tc-image-button img {\n\twidth: 2em;\n\tvertical-align: -0.15em;\n}\n\n/*\n** Palette swatches\n*/\n\n.tc-swatches-horiz {\n}\n\n.tc-swatches-horiz .tc-swatch {\n\tdisplay: inline-block;\n}\n\n.tc-swatch {\n\twidth: 2em;\n\theight: 2em;\n\tmargin: 0.4em;\n\tborder: 1px solid #888;\n}\n\ninput.tc-palette-manager-colour-input {\n\twidth: 100%;\n\tpadding: 0;\n}\n\n/*\n** Table of contents\n*/\n\n.tc-sidebar-lists .tc-table-of-contents {\n\twhite-space: nowrap;\n}\n\n.tc-table-of-contents button {\n\tcolor: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents svg {\n\twidth: 0.7em;\n\theight: 0.7em;\n\tvertical-align: middle;\n\tfill: <<colour sidebar-foreground>>;\n}\n\n.tc-table-of-contents ol {\n\tlist-style-type: none;\n\tpadding-left: 0;\n}\n\n.tc-table-of-contents ol ol {\n\tpadding-left: 1em;\n}\n\n.tc-table-of-contents li {\n\tfont-size: 1.0em;\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li a {\n\tfont-weight: bold;\n}\n\n.tc-table-of-contents li li {\n\tfont-size: 0.95em;\n\tfont-weight: normal;\n\tline-height: 1.4;\n}\n\n.tc-table-of-contents li li a {\n\tfont-weight: normal;\n}\n\n.tc-table-of-contents li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n\tline-height: 1.5;\n}\n\n.tc-table-of-contents li li li li {\n\tfont-size: 0.95em;\n\tfont-weight: 200;\n}\n\n.tc-tabbed-table-of-contents {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents {\n\tz-index: 100;\n\tdisplay: inline-block;\n\tpadding-left: 1em;\n\tmax-width: 50%;\n\t-webkit-flex: 0 0 auto;\n\tflex: 0 0 auto;\n\tbackground: <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a,\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tdisplay: block;\n\tpadding: 0.12em 1em 0.12em 0.25em;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a {\n\tborder-top: 1px solid <<colour tab-background>>;\n\tborder-left: 1px solid <<colour tab-background>>;\n\tborder-bottom: 1px solid <<colour tab-background>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item > a:hover {\n\ttext-decoration: none;\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour tab-border>>;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a {\n\tborder-top: 1px solid <<colour tab-border>>;\n\tborder-left: 1px solid <<colour tab-border>>;\n\tborder-bottom: 1px solid <<colour tab-border>>;\n\tbackground: <<colour background>>;\n\tmargin-right: -1px;\n}\n\n.tc-tabbed-table-of-contents .tc-table-of-contents .toc-item-selected > a:hover {\n\ttext-decoration: none;\n}\n\n.tc-tabbed-table-of-contents .tc-tabbed-table-of-contents-content {\n\tdisplay: inline-block;\n\tvertical-align: top;\n\tpadding-left: 1.5em;\n\tpadding-right: 1.5em;\n\tborder: 1px solid <<colour tab-border>>;\n\t-webkit-flex: 1 0 50%;\n\tflex: 1 0 50%;\n}\n\n/*\n** Dirty indicator\n*/\n\nbody.tc-dirty span.tc-dirty-indicator, body.tc-dirty span.tc-dirty-indicator svg {\n\tfill: <<colour dirty-indicator>>;\n\tcolor: <<colour dirty-indicator>>;\n}\n\n/*\n** File inputs\n*/\n\n.tc-file-input-wrapper {\n\tposition: relative;\n\toverflow: hidden;\n\tdisplay: inline-block;\n\tvertical-align: middle;\n}\n\n.tc-file-input-wrapper input[type=file] {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tfont-size: 999px;\n\tmax-width: 100%;\n\tmax-height: 100%;\n\tfilter: alpha(opacity=0);\n\topacity: 0;\n\toutline: none;\n\tbackground: white;\n\tcursor: pointer;\n\tdisplay: inline-block;\n}\n\n::-webkit-file-upload-button {\n\tcursor:pointer;\n}\n\n/*\n** Thumbnail macros\n*/\n\n.tc-thumbnail-wrapper {\n\tposition: relative;\n\tdisplay: inline-block;\n\tmargin: 6px;\n\tvertical-align: top;\n}\n\n.tc-thumbnail-right-wrapper {\n\tfloat:right;\n\tmargin: 0.5em 0 0.5em 0.5em;\n}\n\n.tc-thumbnail-image {\n\ttext-align: center;\n\toverflow: hidden;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-image svg,\n.tc-thumbnail-image img {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n\tmin-width: 100%;\n\tmin-height: 100%;\n\tmax-width: 100%;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-image img {\n\tfilter: alpha(opacity=0.8);\n\topacity: 0.8;\n}\n\n.tc-thumbnail-background {\n\tposition: absolute;\n\tborder-radius: 3px;\n}\n\n.tc-thumbnail-icon svg,\n.tc-thumbnail-icon img {\n\twidth: 3em;\n\theight: 3em;\n\t<<filter \"drop-shadow(2px 2px 4px rgba(0,0,0,0.3))\">>\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon svg,\n.tc-thumbnail-wrapper:hover .tc-thumbnail-icon img {\n\tfill: #fff;\n\t<<filter \"drop-shadow(3px 3px 4px rgba(0,0,0,0.6))\">>\n}\n\n.tc-thumbnail-icon {\n\tposition: absolute;\n\ttop: 0;\n\tleft: 0;\n\tright: 0;\n\tbottom: 0;\n\tdisplay: -webkit-flex;\n\t-webkit-align-items: center;\n\t-webkit-justify-content: center;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n}\n\n.tc-thumbnail-caption {\n\tposition: absolute;\n\tbackground-color: #777;\n\tcolor: #fff;\n\ttext-align: center;\n\tbottom: 0;\n\twidth: 100%;\n\tfilter: alpha(opacity=0.9);\n\topacity: 0.9;\n\tline-height: 1.4;\n\tborder-bottom-left-radius: 3px;\n\tborder-bottom-right-radius: 3px;\n}\n\n.tc-thumbnail-wrapper:hover .tc-thumbnail-caption {\n\tfilter: alpha(opacity=1);\n\topacity: 1;\n}\n\n/*\n** Diffs\n*/\n\n.tc-diff-equal {\n\tbackground-color: <<colour diff-equal-background>>;\n\tcolor: <<colour diff-equal-foreground>>;\n}\n\n.tc-diff-insert {\n\tbackground-color: <<colour diff-insert-background>>;\n\tcolor: <<colour diff-insert-foreground>>;\n}\n\n.tc-diff-delete {\n\tbackground-color: <<colour diff-delete-background>>;\n\tcolor: <<colour diff-delete-foreground>>;\n}\n\n.tc-diff-invisible {\n\tbackground-color: <<colour diff-invisible-background>>;\n\tcolor: <<colour diff-invisible-foreground>>;\n}\n\n.tc-diff-tiddlers th {\n\ttext-align: right;\n\tbackground: <<colour background>>;\n\tfont-weight: normal;\n\tfont-style: italic;\n}\n\n.tc-diff-tiddlers pre {\n    margin: 0;\n    padding: 0;\n    border: none;\n    background: none;\n}\n\n/*\n** Errors\n*/\n\n.tc-error {\n\tbackground: #f00;\n\tcolor: #fff;\n}\n\n/*\n** Tree macro\n*/\n\n.tc-tree div {\n    \tpadding-left: 14px;\n}\n\n.tc-tree ol {\n    \tlist-style-type: none;\n    \tpadding-left: 0;\n    \tmargin-top: 0;\n}\n\n.tc-tree ol ol {\n    \tpadding-left: 1em;    \n}\n\n.tc-tree button { \n    \tcolor: #acacac;\n}\n\n.tc-tree svg {\n     \tfill: #acacac;\n}\n\n.tc-tree span svg {\n    \twidth: 1em;\n    \theight: 1em;\n    \tvertical-align: baseline;\n}\n\n.tc-tree li span {\n    \tcolor: lightgray;\n}\n\nselect {\n        color: <<colour select-tag-foreground>>;\n        background: <<colour select-tag-background>>;\n}\n\n/*\n** Utility classes for SVG icons\n*/\n\n.tc-fill-background {\n\tfill: <<colour background>>;\n}\n\n/*\n** Flexbox utility classes\n*/\n\n.tc-flex {\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n.tc-flex-column {\n\tflex-direction: column;\n}\n\n.tc-flex-row {\n\tflex-direction: row;\n}\n\n.tc-flex-grow-1 {\n\tflex-grow: 1;\n}\n\n.tc-flex-grow-2 {\n\tflex-grow: 2;\n}\n\n/*\n** Other utility classes\n*/\n\n.tc-small-gap {\n\tmargin-left: .5em;\n\tmargin-right: .5em;\n}\n\n.tc-small-gap-left {\n\tmargin-left: .5em;\n}\n\n.tc-small-gap-right {\n\tmargin-right: .5em;\n}\n\n.tc-big-gap {\n\tmargin-left: 1em;\n\tmargin-right: 1em;\n}\n\n.tc-big-gap-left {\n\tmargin-left: 1em;\n}\n\n.tc-big-gap-right {\n\tmargin-right: 1em;\n}\n\n.tc-word-break {\n\tword-break: break-all;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodyfontsize",
            "text": "15px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/bodylineheight",
            "text": "22px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/fontsize": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/fontsize",
            "text": "14px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/lineheight": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/lineheight",
            "text": "20px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyleft": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyleft",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storytop": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storytop",
            "text": "0px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storyright": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storyright",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/storywidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/storywidth",
            "text": "770px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/tiddlerwidth",
            "text": "686px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint",
            "text": "960px"
        },
        "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth": {
            "title": "$:/themes/tiddlywiki/vanilla/metrics/sidebarwidth",
            "text": "350px"
        },
        "$:/themes/tiddlywiki/vanilla/options/stickytitles": {
            "title": "$:/themes/tiddlywiki/vanilla/options/stickytitles",
            "text": "no"
        },
        "$:/themes/tiddlywiki/vanilla/options/sidebarlayout": {
            "title": "$:/themes/tiddlywiki/vanilla/options/sidebarlayout",
            "text": "fixed-fluid"
        },
        "$:/themes/tiddlywiki/vanilla/options/codewrapping": {
            "title": "$:/themes/tiddlywiki/vanilla/options/codewrapping",
            "text": "pre-wrap"
        },
        "$:/themes/tiddlywiki/vanilla/reset": {
            "title": "$:/themes/tiddlywiki/vanilla/reset",
            "type": "text/plain",
            "text": "/*! modern-normalize v1.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */\n\n/*\nDocument\n========\n*/\n\n/**\nUse a better box model (opinionated).\n*/\n\n*,\n*::before,\n*::after {\n  box-sizing: border-box;\n}\n\n/**\nUse a more readable tab size (opinionated).\n*/\n\n:root {\n  -moz-tab-size: 4;\n  tab-size: 4;\n}\n\n/**\n1. Correct the line height in all browsers.\n2. Prevent adjustments of font size after orientation changes in iOS.\n*/\n\nhtml {\n  line-height: 1.15; /* 1 */\n  -webkit-text-size-adjust: 100%; /* 2 */\n}\n\n/*\nSections\n========\n*/\n\n/**\nRemove the margin in all browsers.\n*/\n\nbody {\n  margin: 0;\n}\n\n/**\nImprove consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n*/\n\nbody {\n  font-family:\n    system-ui,\n    -apple-system, /* Firefox supports this but not yet `system-ui` */\n    'Segoe UI',\n    Roboto,\n    Helvetica,\n    Arial,\n    sans-serif,\n    'Apple Color Emoji',\n    'Segoe UI Emoji';\n}\n\n/*\nGrouping content\n================\n*/\n\n/**\n1. Add the correct height in Firefox.\n2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)\n*/\n\nhr {\n  height: 0; /* 1 */\n  color: inherit; /* 2 */\n}\n\n/*\nText-level semantics\n====================\n*/\n\n/**\nAdd the correct text decoration in Chrome, Edge, and Safari.\n*/\n\nabbr[title] {\n  text-decoration: underline dotted;\n}\n\n/**\nAdd the correct font weight in Edge and Safari.\n*/\n\nb,\nstrong {\n  font-weight: bolder;\n}\n\n/**\n1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)\n2. Correct the odd 'em' font sizing in all browsers.\n*/\n\ncode,\nkbd,\nsamp,\npre {\n  font-family:\n    ui-monospace,\n    SFMono-Regular,\n    Consolas,\n    'Liberation Mono',\n    Menlo,\n    monospace; /* 1 */\n  font-size: 1em; /* 2 */\n}\n\n/**\nAdd the correct font size in all browsers.\n*/\n\nsmall {\n  font-size: 80%;\n}\n\n/**\nPrevent 'sub' and 'sup' elements from affecting the line height in all browsers.\n*/\n\nsub,\nsup {\n  font-size: 75%;\n  line-height: 0;\n  position: relative;\n  vertical-align: baseline;\n}\n\nsub {\n  bottom: -0.25em;\n}\n\nsup {\n  top: -0.5em;\n}\n\n/*\nTabular data\n============\n*/\n\n/**\n1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)\n2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)\n*/\n\ntable {\n  text-indent: 0; /* 1 */\n  border-color: inherit; /* 2 */\n}\n\n/*\nForms\n=====\n*/\n\n/**\n1. Change the font styles in all browsers.\n2. Remove the margin in Firefox and Safari.\n*/\n\nbutton,\ninput,\noptgroup,\nselect,\ntextarea {\n  font-family: inherit; /* 1 */\n  font-size: 100%; /* 1 */\n  line-height: 1.15; /* 1 */\n  margin: 0; /* 2 */\n}\n\n/**\nRemove the inheritance of text transform in Edge and Firefox.\n1. Remove the inheritance of text transform in Firefox.\n*/\n\nbutton,\nselect { /* 1 */\n  text-transform: none;\n}\n\n/**\nCorrect the inability to style clickable types in iOS and Safari.\n*/\n\nbutton,\n[type='button'],\n[type='reset'],\n[type='submit'] {\n  -webkit-appearance: button;\n}\n\n/**\nRemove the inner border and padding in Firefox.\n*/\n\n::-moz-focus-inner {\n  border-style: none;\n  padding: 0;\n}\n\n/**\nRestore the focus styles unset by the previous rule.\n*/\n\n:-moz-focusring {\n  outline: 1px dotted ButtonText;\n}\n\n/**\nRemove the additional ':invalid' styles in Firefox.\nSee: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737\n*/\n\n:-moz-ui-invalid {\n  box-shadow: none;\n}\n\n/**\nRemove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.\n*/\n\nlegend {\n  padding: 0;\n}\n\n/**\nAdd the correct vertical alignment in Chrome and Firefox.\n*/\n\nprogress {\n  vertical-align: baseline;\n}\n\n/**\nCorrect the cursor style of increment and decrement buttons in Safari.\n*/\n\n::-webkit-inner-spin-button,\n::-webkit-outer-spin-button {\n  height: auto;\n}\n\n/**\n1. Correct the odd appearance in Chrome and Safari.\n2. Correct the outline style in Safari.\n*/\n\n[type='search'] {\n  -webkit-appearance: textfield; /* 1 */\n  outline-offset: -2px; /* 2 */\n}\n\n/**\nRemove the inner padding in Chrome and Safari on macOS.\n*/\n\n::-webkit-search-decoration {\n  -webkit-appearance: none;\n}\n\n/**\n1. Correct the inability to style clickable types in iOS and Safari.\n2. Change font properties to 'inherit' in Safari.\n*/\n\n::-webkit-file-upload-button {\n  -webkit-appearance: button; /* 1 */\n  font: inherit; /* 2 */\n}\n\n/*\nInteractive\n===========\n*/\n\n/*\nAdd the correct display in Chrome and Safari.\n*/\n\nsummary {\n  display: list-item;\n}\n"
        },
        "$:/themes/tiddlywiki/vanilla/settings/fontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/fontfamily",
            "text": "system-ui, -apple-system, \"Segoe UI\", Roboto, Helvetica, Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\""
        },
        "$:/themes/tiddlywiki/vanilla/settings/codefontfamily": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/codefontfamily",
            "text": "\"SFMono-Regular\",Consolas,\"Liberation Mono\",Menlo,Courier,monospace"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimageattachment",
            "text": "fixed"
        },
        "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize": {
            "title": "$:/themes/tiddlywiki/vanilla/settings/backgroundimagesize",
            "text": "auto"
        },
        "$:/themes/tiddlywiki/vanilla/sticky": {
            "title": "$:/themes/tiddlywiki/vanilla/sticky",
            "text": "<$reveal state=\"$:/themes/tiddlywiki/vanilla/options/stickytitles\" type=\"match\" text=\"yes\">\n``\n.tc-tiddler-title {\n\tposition: -webkit-sticky;\n\tposition: -moz-sticky;\n\tposition: -o-sticky;\n\tposition: -ms-sticky;\n\tposition: sticky;\n\ttop: 0px;\n\tbackground: ``<<colour tiddler-background>>``;\n\tz-index: 500;\n}\n\n``\n<$list filter=\"[range[100]]\">\n`.tc-story-river .tc-tiddler-frame:nth-child(100n+`<$text text=<<currentTiddler>>/>`) {\nz-index: `<$text text={{{ [[200]subtract<currentTiddler>] }}}/>`;\n}\n`\n</$list>\n</$reveal>\n"
        }
    }
}
fixed-fluid
classic


关键词	词频			
      第一次		                     第二次		                       第三次
研究          100		服务           48		服务           45
图书馆        58		数据           33		数据           32
服务           46		建设           31		建设           31
信息           42		理论           25		理论           25
数据           33		数字           23		数字           23
建设           27		体系           22		资源           20
理论           25		资源           21		体系           19
情报           23		文化           19		文化           19
数字           23		方法           17		方法           17
体系           22		实践           16		实践           16
资源           21		发展           15		发展           15
情报学        19		阅读           15		阅读           15
文化           19		技术           14		应用           14
方法           17		应用           14		公共           14
实践           16		公共           14		技术           13
发展           15		知识           13		知识           13
公共           15		分析           13		分析           13
阅读           15		创新           12		创新           12
技术           14		科学           12		组织           11
应用           14		组织           11		科学           11
学科           13		行为           10		行为           10
知识           13		能力           10		能力           10
创新           12		融合            9		融合            9
科学           12		治理            9		治理            9
组织           11		时代            9		时代            9
图书馆学         10		人文            9		人文            9
图情           10		管理            9		科技            9
行为           10		科技            9		智库            8
能力           10		智库            8		学术            8
科技           10		学术            8		智能            8
融合            9		智能            8		文献            8
治理            9		文献            8		中国            7
人文            9		中国            7		智慧            7
管理            9		智慧            7		媒体            7
分析            9		媒体            7		机制            7
时代            8		机制            7		用户            7
智库            8		用户            7		管理            7
学术            8		装备            7		装备            7
智能            8		推广            7		推广            7
文献            8		环境            6		环境            6
中国            7		健康            6		健康            6
智慧            7		战略            6		战略            6
媒体            7		视角            6		视角            6
机制            7		开放            6		开放            6
用户            7		利用            6		模式            6
装备            7		模式            6		探索            6
推广            7		探索            6		评价            6
环境            6		评价            6		开发利用          6
健康            6		新型            6		新型            6
战略            6		国家            5		国家            5
视角            6		政府            5		政府            5
开放            6		相关            5		相关            5
利用            6		及其            5		教育            5
模式            6		教育            5		功能            5
探索            6		开发            5		背景            4
评价            6		功能            5		人工智能          4
新型            6		背景            4		数据管理          4
国家            5		人工智能          4		社会            4
政府            5		社会            4		知识产权          4
相关            5		知识产权          4		风险            4
及其            5		风险            4		评估            4
教育            5		评估            4		保护            4
开发            5		保护            4		重大            4
功能            5		重大            4		构建            4
背景            4		构建            4		领域            4
学科建设          4		领域            4		业务            4
人工智能          4		业务            4		特色            4
社会            4		特色            4		问题            4
信息安全          4		问题            4		数据分析          4
知识产权          4		数据分析          4		案例            4
风险            4		案例            4		素养            4
评估            4		素养            4		空间            4
保护            4		空间            4		图书            3
重大            4		图书            3		平台            3
构建            4		平台            3		面向            3
领域            4		面向            3		资源管理          3
业务            4		传承            3		传承            3
特色            4		数据管理          3		工作            3
问题            4		工作            3		社交            3
数据分析          4		社交            3		隐私            3
情报分析          4		隐私            3		突发事件          3
案例            4		突发事件          3		事业            3
素养            4		事业            3		规划            3
空间            4		规划            3		安全            3
图书            3		安全            3		发现            3
平台            3		发现            3		深度            3
面向            3		深度            3		服务体系          3
传承            3		文旅            3		文旅            3
数据管理          3		类型            3		类型            3
工作            3		馆藏            3		馆藏            3
社交            3		关联            3		关联            3
隐私            3		文献学           3		文献学           3
突发事件          3		整理            3		整理            3
事业            3		档案            3		档案            3
规划            3		出版            3		出版            3
情报研究          3		理论体系          2		理论体系          2
发现            3		影响            2		影响            2
深度            3		应急            2		应急            2
文旅            3		传播            2		传播            2
类型            3		资源管理          2		保存            2

# 信息无障碍智能交互 ( Information Accessibility Intelligent Interaction,IAII):IAII 是指采用人工智能、人机交互等先进信息技术与智能化设施,弥补残障用户生理与认知能力不足,帮助他们在任何情况下都能平等、便捷、无障碍地实现信息获取、利用与智能交互的一种技术方法。
# 高质量的数字图书馆 IAII 技术,首先需具备对听障用户信息服务需求的预测能力,确定其信息输出内容与呈现方式; 再根据听障用户的信息接收能力将信息输出到相应的信息展示系统中;最后根据 IAII 情境,对信息呈现方式进行智能优化和动态调整,确保听障用户信息接收的准确性、完整性和有效性
新环境、新技术、新需求理论/技术/方法创新
理论体系建构
新技术、新方法对学影响
图书理论基础中知识论
其它融合发展
大数据背景发展趋势
健康中国战略
国家总体安全观视角应急体系
应用层面国家治理体系
知识服务创新应用
智慧/数字平台建设
数据时代学建设创新
新环境(大数据人工智能)学机遇挑战
面向优秀传统文化全球化传播数字人文理论实践
档视角数字人文
大数据时代主流融媒体资源管理机制
文化传承数据资源管理服务
政府开放数据管理服务
健康医疗大数据管理应用
政府数字资源保存利用
协同创新社会发展新动能
视角公共安全
融媒体建设公共文化资源服务
智慧社会背景服务工作
智库创新服务模式
知识产权服务相关
虚拟社区用户行为
社交媒体隐私泄露风险评估、保护追溯机制
大数据环境用户隐私风险隐私保护
新媒体环境用户学术搜索行为机理
重大公共卫生事件中组织管理
重大突发公共卫生事件中社交媒体用户信息行为利用
重大突发事件中社交媒体用户情感体验引导机制
重大突发事件演变机制
多模态知识图谱构建在特定领域中
事业规划
业务探索
教育创新
战略
理论方法体系探索
建设中国特色问题
跨交叉
数据科学
数字技术人文相互影响
智库
适应新发展学术评价
数据——知识—(智能)转化
数据智能驱动范式
能力体系
生态
伦理
安全管理协同融合
场景应用
迷雾
感知数据洞见
刻画表达
响应智能保障
竞争
国家/科技/装备/数据治理
数据发现重用行为
情境任务分析方法
资源建设规划方法
业务评估管理方法
科技对象评估分析方法
科技风险发现应对
领域风险
跨媒体分析理解
开源开发利用
不确定性应对
行为
突发事件中应急响应系统技术
实践中新技术应用
细粒度数据分析技术
画像分析
数据融合
技术应用探索
系统工具
知识工程技术(知识组织、知识融合、知识发现)
智能分析技术装备科技理论方法
装备科技工作国内外对比
装备科技资源深度开发利用
装备科技咨询
装备科技产品开发服务
装备科技技术手段应用
装备科技精准服务
国防科技体系能力
国防科技工作实践
新时代学基础理论应用
新中国70年中国学发展回顾总结
学方法
国内外学教育
学变革趋势
相关理论方法在学中运用
国外学思想、经典著作相关理论译介法治建设
图书行业治理体系制度建设
公共文化服务体系相关
公共文化生态系统事业
新时代公共文化建设公共文化建设
事业社区文化
民众运动
乡村振兴
文旅深度融合发展管理理论方法
文旅融合发展中新功能新服务实践案例
评价机制、指标体系构建方法
基于数据分析管理服务
素养教育理论实践
空间再造功能重组
深化服务(如服务,知识产权专利服务,决策咨询服务,面向企业、发展高端参考咨询智库服务,智慧服务)
面向特殊人群服务各类型发展理论实践
基层馆藏建设、服务探索以人员培养方面案例经验
各类型数字转型路线图
数字转型员能力培训
各类型馆员队伍现状建设
人工智能发展岗位重塑
社区建设
新环境员核心能力打造阅读推广理论方法论
阅读推广理论体系
中外阅读推广生动实践案例
移动阅读、有声阅读、数字阅读
新型阅读平台对阅读推广影响
阅读行为
儿童阅读青少年阅读
阅读推广人培养组织体系构建应用
组织内容、技术、方法关联
知识组织标准规范
一代机构知识库资源组织关联模式
数据检索、检索知识检索相关
知识融合理论应用
资源组织网络应用
数据关联挖掘分析
资源深度聚合组织
数据聚合
数据安全管理
特藏资源数据库建设项目数字学术数字人文理论实践
大数据技术在应用
智慧理论实践(包括业务功能体系、AI服务、智能编目、馆藏空间智能化、数字技术创新案例分析)
人工智能、区块链在、探索实践政策法规、政府数据开放政策
机构智库
商业、政府科学数据分析
专利分析服务
智库服务
时代分析理论方法创新
分析工具服务
智能时代伦理
用户行为决策
安全危机预警文献学理论
关于古代文献版本学、目录学
文献学思想方法
流散海外稀见中华文献、外文汉学文献整理
边疆海洋史料
红色文献、稀见档案文献
馆藏特色典籍专题目录专题数据库
古籍保护核心技术体系建设
古籍读者服务
数字人文文献学数据科学(包括数据管理、数据分析、数据出版、数据可视化,平台技术、数据安全、规范标准数据建设理论技术)
领域各类高质量、高价值、可机读科学数据集分析
一手、新型数据资料
中国特色档体系、学术体系、话语体系建设
档一级建设融合发展战略
“十四五”规划编制关键问题
国家文献资源保障能力建设
开放科学背景资源建设问题
全民阅读中定位担当
空间服务理论实践
嵌入式服务绩效评价管理
公众科学、科学素养泛素养
服务本科教育模式能力
文化传承文化育人理论实践
出版出版服务
新媒体时代科学传播功能实践
营销推广战略策略
泛合作实践理论
国家区域发展战略联盟建设创新服务
网络空间治理问题
知识产权服务能力效果评估
分析中新技术新方法
服务标准化评价
数字人文数字学术实践
人工智能在档中应用
智能服务智慧服务
开放数据生态中元数据发展模式
开放科学数据行为模型构建
数据资源建设数据馆员能力建设
大数据时代组织知识组织
科学数据管理服务
学术成果监测竞争力分析
计算(计算)理论方法
分析服务质量效能评价
智库关系
科学技术前沿分析理论方法
健康中国2030战略健康学
人机交互行为服务模式创新
档在新型智库建设中作用机制
智能服务理论方法
数字公共文化资源、服务体系建设
数据时代政务资源管理开发利用
数字档案馆生态系统治理策略
档案数据治理理论治理体系
政府数据开放平台应用评价
社会记忆视角档案资源整理、保护开发
民族文献遗产产业化开发利用
档教育模式人才培养能力
图书领域理论创新实践探索
多元协调视角数字人文
数字公共文化资源、服务体系建设
网络时代原生数字资源开发利用
大数据环境知识资源加工组织
公共文化资源保存、开发利用
开放科学背景资源建设问题
特藏资源收集、整理、挖掘应用
数字创意产业视角创新服务
智慧服务功能业务体系建设
公共低龄读者阅读服务
公共健康素养培育服务
网络计量、文献计量应用领域拓展
中国特色体系、学术体系话语体系
新文科新发展
数字人文
开放科学
知识产权
技术史
学术评价
公共文化治理体系治理能力现代化
区域城乡公共文化服务一体化
粤港澳“人文湾区”建设
乡村文化建设
新型公共文化空间
文旅融合
管理体制机制改革创新
发展政策法律
服务标准体系
危机管理体制
社会合作
人才建设
智慧
公共数字文化
数字记忆
新型智库
安全
素养
用户行为
高质量发展
新型基础设施建设
知识资源战略性保
文化传承服务
阅读推广
交流服务
健康服务
特殊群体服务
品牌建设
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

# 国内针对图情领域人工智能的研究方兴未艾,研究内容聚焦现状与趋势、情报体系与模型、情报技术、图书馆创新发展等,对图情领域人工智能研究的热点主题、演进路径、应用成熟度等研究尚不充分,部分研究仍存在空白点。
# 笔者将人工智能在图情领域的应用主要划分为智能管理与服务、智能采集、智能分析、智能搜索、智能预测五个场景。
图书馆应为残疾人建设无障碍获取信息资源环境,提供公益性、综合性文化资讯服务,保障残疾人群平等获取信息资源的权利。触觉技术对有特殊教育和残障读者使用图书馆资源有很大的帮助。


\define lingo-base() $:/language/ControlPanel/Basics/
欢迎使用 ~TiddlyWiki 及参与 ~TiddlyWiki 社群

开始将重要资讯存放于 ~TiddlyWiki 之前,确认您可以可靠地保存变更是很重要的。详细资讯请参阅 https://tiddlywiki.com/#GettingStarted

!! 设置此 ~TiddlyWiki

<div class="tc-control-panel">

|<$link to="$:/SiteTitle"><<lingo Title/Prompt>></$link> |<$edit-text tiddler="$:/SiteTitle" default="" tag="input"/> |
|<$link to="$:/SiteSubtitle"><<lingo Subtitle/Prompt>></$link> |<$edit-text tiddler="$:/SiteSubtitle" default="" tag="input"/> |
|<$link to="$:/DefaultTiddlers"><<lingo DefaultTiddlers/Prompt>></$link> |<<lingo DefaultTiddlers/TopHint>><br> <$edit tag="textarea" tiddler="$:/DefaultTiddlers"/><br>//<<lingo DefaultTiddlers/BottomHint>>// |
</div>

请参阅[[控制台|$:/ControlPanel]]查看更多选项。
!!! 3.10[[选题指南相关]]
!!! 3.17[[信息技术在图情领域的应用]]


通过大数据、云计算等手段,决策的过程、主要影响因素、预期目标等均可被预先了解,根据决策制定、实施与修订的一般过程来开展情报保障工作的可靠性被提升

# [[A character social network relationship map tool to facilitate digital humanities research|A character social network relationship map tool to facilitate digital humanities research]]   DOI 10.1108/LHT-08-2020-0194  https://www.emerald.com/insight/0737-8831.htm
#[[Facilitating learning by the visually impaired: development and usability evaluation of a specially designed ubiquitous library|Facilitating learning by the visually impaired: development and usability evaluation of a specially designed ubiquitous library]]   DOI 10.1108/EL-10-2020-0284 https://www.emerald.com/insight/0264-0473.htm
# [[Big data and academic libraries: is it big for something or big for nothing? |Big data and academic libraries: is it big for something or big for nothing?]]   DOI 10.1108/LHTN-07-2020-0069
# [[Technological innovation in libraries|Technological innovation in libraries]]   DOI 10.1108/LHT-07-2020-0163  https://www.emerald.com/insight/0737-8831.htm
# Use analysis of the digital library of PhD dissertations defended at the University of Novi Sad   DOI 10.1108/EL-11-2019-0268  https://www.emerald.com/insight/0264-0473.htm
# [[张兴旺,郝彦娜,王璐.面向听障用户的数字图书馆信息无障碍智能交互技术研究述评[J].图书馆学研究,2020(21):2-12.|面向听障用户的数字图书馆信息 无障碍智能交互技术研究述评]]
# [[沈璇.使用触觉技术为特殊读者服务的探讨[J].图书馆建设,2020(S1):107-109.|使用触觉技术为特殊读者服务的探讨]]
# [[陈明,汤文峤.网络空间安全战略情报保障能力的影响因素及对策研究[J].情报杂志,2021,40(02):111-115+82.|网络空间安全战略情报保障能力要素的演化规律研究]]
# [[顾佐佐,陈虹,李晓玥,赵旺,杨雪洁.智慧图书馆动态知识服务体系构建与平台设计[J].情报科学,2020,38(10):119-124.|智慧图书馆动态知识服务体系构建与平台设计]]
# [[凡庆涛,杜赟,谢海涛,刘如.人工智能在我国图情领域的研究现状与启示[J].新世纪图书馆,2020(09):86-93.|人工智能在我国图情领域的研究现状与启示]]

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
下列条目已被导入:

# [[清洗过的数据.txt]]
# [[词频.txt]]
# [[热点词云.png]]


智慧图书馆是指在移动互联环境下的一种跨时空、全周期动态的图书知识服服务理念、服务平台与服务模式,它综合运用大数据、人工智能、物联网等新一代信息技术,面向跨区域、多主体、异质性和演化的需求进行各种信息的实时收集、组织、处理、分析、挖掘和个性化服务。





#一个便于数字人文研究的人物社会网络关系地图工具
# This study develops a character social network relationship map tool (CSNRMT) that can semi-automatically assist digital humanists through human computer interaction(人机交互) to more efficiently and accurately explore the character social network relationships from Chinese ancient texts for useful research findings.


# The study has reported the pervasiveness and ubiquitous nature of big data and usefulness in academic libraries.

# 促进视障人士学习:特别设计的泛在图书馆的开发和可用性评估
# Take the visually impaired for instance; mobile devices with touch screen interfaces (e.g. smartphones, smartwatches and tablets) have already become essential auxiliary equipment for them to carry out their daily activities(具有触摸屏界面的移动设备)
# It integrates VoiceOver, TalkBack and text to speech(TTS), and provides digital rights management (DRM) from HyRead for the visually impaired to access the content of e-books.(集成了画外音、对讲、文本语音)
# Before borrowing books (including e-braille books, braille books, audio books in MP3 format, audio books in DAISY format, audio books on tape, large-print books and e-books), they can search for books by using OPAC retrieval or through book browsing.(DAISY格式有声图书)





# The first is the identification of the TLC of library technologies.